source: server/mail/dovecot.xml@ 7b96a69

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 xry111/llvm18 xry111/xf86-video-removal
Last change on this file since 7b96a69 was 7b96a69, checked in by Douglas R. Reno <renodr@…>, 18 months ago

Update to dovecot-2.3.20

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