source: server/mail/dovecot.xml@ 69b1dde

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 69b1dde was 47274444, checked in by Pierre Labastie <pieere@…>, 4 years ago

Format postlfs/security and misc/forgotten

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@22884 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 12.4 KB
RevLine 
[8a8b05e]1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY dovecot-download-http
[201e34f]8 "https://www.dovecot.org/releases/&dovecot-major;.&dovecot-minor;/dovecot-&dovecot-version;.tar.gz">
[8a8b05e]9 <!ENTITY dovecot-download-ftp " ">
[a34cc98]10 <!ENTITY dovecot-md5sum "72afaff08a98c9cf75b4621c8e4f3885">
[5c0c700]11 <!ENTITY dovecot-size "6.9 MB">
[a34cc98]12 <!ENTITY dovecot-buildsize "179 MB">
[71f567d]13 <!ENTITY dovecot-time "3.9 SBU">
[8a8b05e]14]>
15
16<sect1 id="dovecot" xreflabel="Dovecot-&dovecot-version;">
17 <?dbhtml filename="dovecot.html"?>
18
19 <sect1info>
20 <othername>$LastChangedBy$</othername>
21 <date>$Date$</date>
22 </sect1info>
23
24 <title>Dovecot-&dovecot-version;</title>
25
26 <indexterm zone="dovecot">
27 <primary sortas="a-Dovecot">Dovecot</primary>
28 </indexterm>
29
30 <sect2 role="package">
31 <title>Introduction to Dovecot</title>
32
33 <para>
34 <application>Dovecot</application> is an Internet Message Access Protocol
35 (IMAP) and Post Office Protocol (POP) server, written primarily with
36 security in mind. <application>Dovecot</application> aims to be
37 lightweight, fast and easy to set up as well as highly configurable and
38 easily extensible with plugins.
39 </para>
40
[63fc64e]41 &lfs91_checked;
[8a8b05e]42
43 <bridgehead renderas="sect3">Package Information</bridgehead>
44 <itemizedlist spacing="compact">
45 <listitem>
46 <para>
47 Download (HTTP): <ulink url="&dovecot-download-http;"/>
48 </para>
49 </listitem>
50 <listitem>
51 <para>
52 Download (FTP): <ulink url="&dovecot-download-ftp;"/>
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download MD5 sum: &dovecot-md5sum;
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Download size: &dovecot-size;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Estimated disk space required: &dovecot-buildsize;
68 </para>
69 </listitem>
70 <listitem>
71 <para>
72 Estimated build time: &dovecot-time;
73 </para>
74 </listitem>
75 </itemizedlist>
[2c5dfc2d]76
[8a8b05e]77 <bridgehead renderas="sect3">Dovecot Dependencies</bridgehead>
78
[904c9b2]79 <bridgehead renderas="sect4">Required</bridgehead>
80 <para role="required">
81 <xref linkend="libtirpc"/>
82 </para>
83
[8a8b05e]84 <bridgehead renderas="sect4">Optional</bridgehead>
85 <para role="optional">
[3acd0b1]86 <xref linkend="clucene"/>,
[f9f13ae]87 <xref linkend="icu"/>,
[56605b9]88 <xref linkend="libcap-pam"/>,
[8a8b05e]89 <xref linkend="linux-pam"/>,
[5ff2b55]90 <xref linkend="lua"/>,
[3acd0b1]91 <xref linkend="mariadb"/> or <ulink url="http://www.mysql.com/">MySQL</ulink>,
[8a8b05e]92 <xref linkend="openldap"/>,
93 <xref linkend="postgresql"/>,
[f9f13ae]94 <xref linkend="sqlite"/>,
95 <xref linkend="valgrind"/>,
[194a584]96 <xref linkend="xfsprogs"/>,
[f9f13ae]97 <ulink url="https://cassandra.apache.org/">Cassandra</ulink>,
[5c0c700]98 <ulink url="https://github.com/Cyan4973/lz4">lz4</ulink>,
99 <ulink url="https://github.com/shibukawa/snowball_py">stemmer</ulink> and
100 <ulink url="https://libsodium.gitbook.io/doc/">libsodium</ulink>
[8a8b05e]101 </para>
102
103 <para condition="html" role="usernotes">User Notes:
104 <ulink url="&blfs-wiki;/dovecot"/>
105 </para>
106 </sect2>
107
108 <sect2 role="installation">
109 <title>Installation of Dovecot</title>
110
111 <para>
112 There should be dedicated users and groups for unprivileged Dovecot
113 processes and for processing users' logins. Issue the following commands
114 as the <systemitem class="username">root</systemitem> user:
115 </para>
116
117<screen role="root"><userinput>groupadd -g 42 dovecot &amp;&amp;
118useradd -c "Dovecot unprivileged user" -d /dev/null -u 42 \
119 -g dovecot -s /bin/false dovecot &amp;&amp;
120groupadd -g 43 dovenull &amp;&amp;
121useradd -c "Dovecot login user" -d /dev/null -u 43 \
122 -g dovenull -s /bin/false dovenull</userinput></screen>
123
[2cd4158]124 <para>
125 First, fix an issue causing a segfault in the test suite by
126 applying a sed:
127 </para>
128
129<screen><userinput>sed -e "s;#include &lt;unistd.h&gt;;&amp;\n#include &lt;crypt.h&gt;;" \
130 -i src/auth/mycrypt.c</userinput></screen>
131
[8a8b05e]132 <para>
133 Install <application>Dovecot</application> by running the following
134 commands:
135 </para>
136
[2cd4158]137<screen revision="sysv"><userinput>CFLAGS+=" -I/usr/include/tirpc" \
138LDFLAGS+=" -ltirpc" \
[6c1d0776]139./configure --prefix=/usr \
[1258125]140 --sysconfdir=/etc \
141 --localstatedir=/var \
[8a8b05e]142 --docdir=/usr/share/doc/dovecot-&dovecot-version; \
143 --disable-static &amp;&amp;
144make</userinput></screen>
145
[2cd4158]146<screen revision="systemd"><userinput>CFLAGS+=" -I/usr/include/tirpc" \
147LDFLAGS+=" -ltirpc" \
[6c1d0776]148./configure --prefix=/usr \
[1258125]149 --sysconfdir=/etc \
150 --localstatedir=/var \
151 --docdir=/usr/share/doc/dovecot-&dovecot-version; \
152 --disable-static \
153 --with-systemdsystemunitdir=/lib/systemd/system &amp;&amp;
154make</userinput></screen>
155
[201e34f]156 <para>
[194a584]157 To test the results, issue <command>make -k check</command>. <!-- An error
[ba54f50]158 may be reported if <xref linkend="valgrind"/> is present when running
[194a584]159 the test.-->
[ba54f50]160 </para>
[8a8b05e]161
162 <para>
163 Now, as the <systemitem class="username">root</systemitem> user:
164 </para>
165
166<screen role="root"><userinput>make install</userinput></screen>
167
168 </sect2>
169
170 <sect2 role="commands">
171 <title>Command Explanations</title>
172
[27b601a]173 <para>
174 <command>CFLAGS+=...LDFLAGS+=...</command>: build with libtirpc
175 instead of the recently removed RPC code provided by GlibC.
176 </para>
[6c1d0776]177
[8a8b05e]178 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
179 href="../../xincludes/static-libraries.xml"/>
180
[f7841987]181 <para revision="systemd">
[1258125]182 <parameter>--with-systemdsystemunitdir=/lib/systemd/system</parameter>:
183 This switch is used to set the correct installation directory for
184 systemd units.
185 </para>
186
[8a8b05e]187 <para>
188 <option>--with-ldap</option>: This switch enables
189 <application>OpenLDAP</application> authentication support.
190 </para>
[2d9f558]191
[8a8b05e]192 <para>
193 <option>--with-pgsql</option>: This switch enables
194 <application>PostgreSQL</application> authentication support.
195 </para>
[2d9f558]196
[8a8b05e]197 <para>
198 <option>--with-mysql</option>: This switch enables
199 <application>MySQL</application> authentication support.
200 </para>
[2d9f558]201
[8a8b05e]202 <para>
203 <option>--with-sqlite</option>: This switch enables
204 <application>SQLite</application> authentication support.
205 </para>
[2d9f558]206
[8a8b05e]207 <para>
208 <option>--with-lucene</option>: This switch enables
209 <application>CLucene</application> full text search support.
210 </para>
[71f567d]211<!--
[2d9f558]212 <para>
[71f567d]213 <option>- -with-krb5</option>: This switch enables
[2d9f558]214 GSSAPI authentication support.
215 </para>
[71f567d]216-->
[8a8b05e]217 </sect2>
218
219 <sect2 role="configuration">
220 <title>Configuring Dovecot</title>
221
222 <sect3 id="dovecot-config">
223 <title>Config Files</title>
224
225 <para>
226 <filename>/etc/dovecot/dovecot.conf</filename>,
227 <filename>/etc/dovecot/conf.d/*</filename>, and
228 <filename>/etc/dovecot/local.conf</filename>
229 </para>
230
231 <indexterm zone="dovecot dovecot-config">
232 <primary sortas="e-etc-dovecot-dovecot.conf">/etc/dovecot/dovecot.conf</primary>
233 </indexterm>
234 <indexterm zone="dovecot dovecot-config">
235 <primary sortas="e-etc-dovecot-conf.d">/etc/dovecot/conf.d/*</primary>
236 </indexterm>
237 <indexterm zone="dovecot dovecot-config">
238 <primary sortas="e-etc-dovecot-local.conf">/etc/dovecot/local.conf</primary>
239 </indexterm>
240
241 </sect3>
242
243 <sect3>
244 <title>Configuration Information</title>
245
246 <para>
247 Copy an example configuration, which you can use as a starting point:
248 </para>
249
250<screen role="root"><userinput>cp -rv /usr/share/doc/dovecot-&dovecot-version;/example-config/* /etc/dovecot</userinput></screen>
251
252 <para>
253 The following configuration is a simple proof of concept with IMAP
254 service using local users for authentication and mailbox location.
255 Reading files from the <filename class="directory">conf.d</filename>
256 directory is commented out since the included example configuration
257 requires <application>OpenSSL</application> and
258 <application>Linux PAM</application>.
259 </para>
260
261<screen role="root"><userinput>sed -i '/^\!include / s/^/#/' /etc/dovecot/dovecot.conf &amp;&amp;
262chmod -v 1777 /var/mail &amp;&amp;
263cat &gt; /etc/dovecot/local.conf &lt;&lt; "EOF"
264<literal>protocols = imap
265ssl = no
[2d9f558]266# The next line is only needed if you have no IPv6 network interfaces
267listen = *
[8a8b05e]268mail_location = mbox:~/Mail:INBOX=/var/mail/%u
269userdb {
270 driver = passwd
271}
272passdb {
273 driver = shadow
274}</literal>
275EOF</userinput></screen>
276
277 <para>
278 You will definitely want to read the official documentation at <ulink
279 url="http://wiki2.dovecot.org/"/> if you plan to use
280 <application>Dovecot</application> in production environment.
281 </para>
282
283 </sect3>
284
285 <sect3 id="dovecot-init">
[1258125]286 <title><phrase revision="sysv">Boot Script</phrase>
287 <phrase revision="systemd">Systemd Unit</phrase></title>
[8a8b05e]288
[47274444]289 <para revision="sysv">
290 If you want the <application>Dovecot</application>
291 server to start automatically when the system is booted, install the
292 <filename>/etc/rc.d/init.d/dovecot</filename> init script included in
293 the <xref linkend="bootscripts"/> package.
294 </para>
295
296 <para revision="systemd">
297 To start the <command>dovecot</command>
298 daemon at boot, enable the previously installed systemd unit with the
299 following command:
300 </para>
[8a8b05e]301
302 <indexterm zone="dovecot dovecot-init">
303 <primary sortas="f-dovecot">dovecot</primary>
304 </indexterm>
305
[1258125]306<screen role="root" revision="sysv"><userinput>make install-dovecot</userinput></screen>
307
308<screen role="root" revision="systemd"><userinput>systemctl enable dovecot</userinput></screen>
[8a8b05e]309
310 </sect3>
311
312 </sect2>
313
314 <sect2 role="content">
315 <title>Contents</title>
316
317 <segmentedlist>
318 <segtitle>Installed Programs</segtitle>
319 <segtitle>Installed Libraries</segtitle>
320 <segtitle>Installed Directories</segtitle>
321
322 <seglistitem>
323 <seg>
[a08727f]324 doveadm, doveconf, dovecot, and dsync (symbolic link)
[8a8b05e]325 </seg>
326 <seg>
[a08727f]327 various internal plugins in <filename
328 class="directory">/usr/lib/dovecot</filename>
[8a8b05e]329 </seg>
330 <seg>
331 /etc/dovecot,
[f9f13ae]332 /usr/{include,lib,libexec,share}/dovecot and
[8a8b05e]333 /usr/share/doc/dovecot-&dovecot-version;
334 </seg>
335 </seglistitem>
336 </segmentedlist>
337
338 <variablelist>
339 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
340 <?dbfo list-presentation="list"?>
341 <?dbhtml list-presentation="table"?>
342
343 <varlistentry id="doveadm">
344 <term><command>doveadm</command></term>
345 <listitem>
346 <para>
347 is the <application>Dovecot</application> administration tool.
348 </para>
349 <indexterm zone="dovecot doveadm">
350 <primary sortas="b-doveadm">doveadm</primary>
351 </indexterm>
352 </listitem>
353 </varlistentry>
354
355 <varlistentry id="doveconf">
356 <term><command>doveconf</command></term>
357 <listitem>
358 <para>
359 is <application>Dovecot</application>'s configuration dumping
360 utility.
361 </para>
362 <indexterm zone="dovecot doveconf">
363 <primary sortas="b-doveconf">doveconf</primary>
364 </indexterm>
365 </listitem>
366 </varlistentry>
367
368 <varlistentry id="dovecot-prog">
369 <term><command>dovecot</command></term>
370 <listitem>
371 <para>
372 is the IMAP and POP server.
373 </para>
374 <indexterm zone="dovecot dovecot-prog">
375 <primary sortas="b-dovecot">dovecot</primary>
376 </indexterm>
377 </listitem>
378 </varlistentry>
379
380 <varlistentry id="dsync">
381 <term><command>dsync</command></term>
382 <listitem>
383 <para>
384 is <application>Dovecot</application>'s mailbox synchronization
385 utility.
386 </para>
387 <indexterm zone="dovecot dsync">
388 <primary sortas="b-dsync">dsync</primary>
389 </indexterm>
390 </listitem>
391 </varlistentry>
392
393
394 </variablelist>
395
396 </sect2>
397
398</sect1>
Note: See TracBrowser for help on using the repository browser.