source: server/mail/dovecot.xml@ b2c18590

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules 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 b2c18590 was b2c18590, checked in by Pierre Labastie <pieere@…>, 7 years ago

dovecot-2.2.29
exim-4.89
Fix instructions to link libp11-kit.so to libnssckbi.so

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

  • Property mode set to 100644
File size: 11.8 KB
Line 
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
8 "https://www.dovecot.org/releases/&dovecot-major;.&dovecot-minor;/dovecot-&dovecot-version;.tar.gz">
9 <!ENTITY dovecot-download-ftp " ">
10 <!ENTITY dovecot-md5sum "ff95486a5c43025a2c3f5a712e7962b9">
11 <!ENTITY dovecot-size "5.7 MB">
12 <!ENTITY dovecot-buildsize "254 MB (add 14 MB for tests)">
13 <!ENTITY dovecot-time "2.1 SBU (add 0.2 SBU for tests)">
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
41 &lfs80_checked;
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>
76
77 <bridgehead renderas="sect3">Dovecot Dependencies</bridgehead>
78
79 <bridgehead renderas="sect4">Optional</bridgehead>
80 <para role="optional">
81 <xref linkend="clucene"/>,
82 <xref linkend="icu"/>,
83 <xref linkend="libcap-pam"/>,
84 <xref linkend="linux-pam"/>,
85 <xref linkend="mariadb"/> or <ulink url="http://www.mysql.com/">MySQL</ulink>,
86 <xref linkend="mitkrb"/> (for GSSAPI support),
87 <xref linkend="openldap"/>,
88 <xref linkend="openssl"/>,
89 <xref linkend="postgresql"/>,
90 <xref linkend="sqlite"/>,
91 <xref linkend="valgrind"/>,
92 <ulink url="https://cassandra.apache.org/">Cassandra</ulink>,
93 <ulink url="https://github.com/Cyan4973/lz4">lz4</ulink>, and
94 <ulink url="https://github.com/shibukawa/snowball_py">stemmer</ulink>
95 </para>
96
97 <para condition="html" role="usernotes">User Notes:
98 <ulink url="&blfs-wiki;/dovecot"/>
99 </para>
100 </sect2>
101
102 <sect2 role="installation">
103 <title>Installation of Dovecot</title>
104
105 <para>
106 There should be dedicated users and groups for unprivileged Dovecot
107 processes and for processing users' logins. Issue the following commands
108 as the <systemitem class="username">root</systemitem> user:
109 </para>
110
111<screen role="root"><userinput>groupadd -g 42 dovecot &amp;&amp;
112useradd -c "Dovecot unprivileged user" -d /dev/null -u 42 \
113 -g dovecot -s /bin/false dovecot &amp;&amp;
114groupadd -g 43 dovenull &amp;&amp;
115useradd -c "Dovecot login user" -d /dev/null -u 43 \
116 -g dovenull -s /bin/false dovenull</userinput></screen>
117
118 <para>
119 Install <application>Dovecot</application> by running the following
120 commands:
121 </para>
122
123<screen revision="sysv"><userinput>./configure --prefix=/usr \
124 --sysconfdir=/etc \
125 --localstatedir=/var \
126 --docdir=/usr/share/doc/dovecot-&dovecot-version; \
127 --disable-static &amp;&amp;
128make</userinput></screen>
129
130<screen revision="systemd"><userinput>./configure --prefix=/usr \
131 --sysconfdir=/etc \
132 --localstatedir=/var \
133 --docdir=/usr/share/doc/dovecot-&dovecot-version; \
134 --disable-static \
135 --with-systemdsystemunitdir=/lib/systemd/system &amp;&amp;
136make</userinput></screen>
137
138 <para>
139 To test the results, issue <command>make -k check</command>. Tests using
140 openssl fail when valgrind is present, because openssl increases entropy
141 by reading uninitialized variables. see <ulink
142 url="https://www.openssl.org/docs/faq.html#PROG14">openssl's FAQ</ulink>.
143 </para>
144
145 <para>
146 Now, as the <systemitem class="username">root</systemitem> user:
147 </para>
148
149<screen role="root"><userinput>make install</userinput></screen>
150
151 </sect2>
152
153 <sect2 role="commands">
154 <title>Command Explanations</title>
155
156 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
157 href="../../xincludes/static-libraries.xml"/>
158
159 <para revision="systemd">
160 <parameter>--with-systemdsystemunitdir=/lib/systemd/system</parameter>:
161 This switch is used to set the correct installation directory for
162 systemd units.
163 </para>
164
165 <para>
166 <option>--with-ldap</option>: This switch enables
167 <application>OpenLDAP</application> authentication support.
168 </para>
169
170 <para>
171 <option>--with-pgsql</option>: This switch enables
172 <application>PostgreSQL</application> authentication support.
173 </para>
174
175 <para>
176 <option>--with-mysql</option>: This switch enables
177 <application>MySQL</application> authentication support.
178 </para>
179
180 <para>
181 <option>--with-sqlite</option>: This switch enables
182 <application>SQLite</application> authentication support.
183 </para>
184
185 <para>
186 <option>--with-lucene</option>: This switch enables
187 <application>CLucene</application> full text search support.
188 </para>
189
190 <para>
191 <option>--with-krb5</option>: This switch enables
192 GSSAPI authentication support.
193 </para>
194
195 </sect2>
196
197 <sect2 role="configuration">
198 <title>Configuring Dovecot</title>
199
200 <sect3 id="dovecot-config">
201 <title>Config Files</title>
202
203 <para>
204 <filename>/etc/dovecot/dovecot.conf</filename>,
205 <filename>/etc/dovecot/conf.d/*</filename>, and
206 <filename>/etc/dovecot/local.conf</filename>
207 </para>
208
209 <indexterm zone="dovecot dovecot-config">
210 <primary sortas="e-etc-dovecot-dovecot.conf">/etc/dovecot/dovecot.conf</primary>
211 </indexterm>
212 <indexterm zone="dovecot dovecot-config">
213 <primary sortas="e-etc-dovecot-conf.d">/etc/dovecot/conf.d/*</primary>
214 </indexterm>
215 <indexterm zone="dovecot dovecot-config">
216 <primary sortas="e-etc-dovecot-local.conf">/etc/dovecot/local.conf</primary>
217 </indexterm>
218
219 </sect3>
220
221 <sect3>
222 <title>Configuration Information</title>
223
224 <para>
225 Copy an example configuration, which you can use as a starting point:
226 </para>
227
228<screen role="root"><userinput>cp -rv /usr/share/doc/dovecot-&dovecot-version;/example-config/* /etc/dovecot</userinput></screen>
229
230 <para>
231 The following configuration is a simple proof of concept with IMAP
232 service using local users for authentication and mailbox location.
233 Reading files from the <filename class="directory">conf.d</filename>
234 directory is commented out since the included example configuration
235 requires <application>OpenSSL</application> and
236 <application>Linux PAM</application>.
237 </para>
238
239<screen role="root"><userinput>sed -i '/^\!include / s/^/#/' /etc/dovecot/dovecot.conf &amp;&amp;
240chmod -v 1777 /var/mail &amp;&amp;
241cat &gt; /etc/dovecot/local.conf &lt;&lt; "EOF"
242<literal>protocols = imap
243ssl = no
244# The next line is only needed if you have no IPv6 network interfaces
245listen = *
246mail_location = mbox:~/Mail:INBOX=/var/mail/%u
247userdb {
248 driver = passwd
249}
250passdb {
251 driver = shadow
252}</literal>
253EOF</userinput></screen>
254
255 <para>
256 You will definitely want to read the official documentation at <ulink
257 url="http://wiki2.dovecot.org/"/> if you plan to use
258 <application>Dovecot</application> in production environment.
259 </para>
260
261 </sect3>
262
263 <sect3 id="dovecot-init">
264 <title><phrase revision="sysv">Boot Script</phrase>
265 <phrase revision="systemd">Systemd Unit</phrase></title>
266
267 <para revision="sysv">If you want the <application>Dovecot</application>
268 server to start automatically when the system is booted, install the
269 <filename>/etc/rc.d/init.d/dovecot</filename> init script included in the
270 <xref linkend="bootscripts"/> package.</para>
271
272 <para revision="systemd">To start the <command>dovecot</command>
273 daemon at boot, enable the previously installed systemd unit with the
274 following command:</para>
275
276 <indexterm zone="dovecot dovecot-init">
277 <primary sortas="f-dovecot">dovecot</primary>
278 </indexterm>
279
280<screen role="root" revision="sysv"><userinput>make install-dovecot</userinput></screen>
281
282<screen role="root" revision="systemd"><userinput>systemctl enable dovecot</userinput></screen>
283
284 </sect3>
285
286 </sect2>
287
288 <sect2 role="content">
289 <title>Contents</title>
290
291 <segmentedlist>
292 <segtitle>Installed Programs</segtitle>
293 <segtitle>Installed Libraries</segtitle>
294 <segtitle>Installed Directories</segtitle>
295
296 <seglistitem>
297 <seg>
298 doveadm, doveconf, dovecot, and dsync (symbolic link)
299 </seg>
300 <seg>
301 various internal plugins in <filename
302 class="directory">/usr/lib/dovecot</filename>
303 </seg>
304 <seg>
305 /etc/dovecot,
306 /usr/{include,lib,libexec,share}/dovecot and
307 /usr/share/doc/dovecot-&dovecot-version;
308 </seg>
309 </seglistitem>
310 </segmentedlist>
311
312 <variablelist>
313 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
314 <?dbfo list-presentation="list"?>
315 <?dbhtml list-presentation="table"?>
316
317 <varlistentry id="doveadm">
318 <term><command>doveadm</command></term>
319 <listitem>
320 <para>
321 is the <application>Dovecot</application> administration tool.
322 </para>
323 <indexterm zone="dovecot doveadm">
324 <primary sortas="b-doveadm">doveadm</primary>
325 </indexterm>
326 </listitem>
327 </varlistentry>
328
329 <varlistentry id="doveconf">
330 <term><command>doveconf</command></term>
331 <listitem>
332 <para>
333 is <application>Dovecot</application>'s configuration dumping
334 utility.
335 </para>
336 <indexterm zone="dovecot doveconf">
337 <primary sortas="b-doveconf">doveconf</primary>
338 </indexterm>
339 </listitem>
340 </varlistentry>
341
342 <varlistentry id="dovecot-prog">
343 <term><command>dovecot</command></term>
344 <listitem>
345 <para>
346 is the IMAP and POP server.
347 </para>
348 <indexterm zone="dovecot dovecot-prog">
349 <primary sortas="b-dovecot">dovecot</primary>
350 </indexterm>
351 </listitem>
352 </varlistentry>
353
354 <varlistentry id="dsync">
355 <term><command>dsync</command></term>
356 <listitem>
357 <para>
358 is <application>Dovecot</application>'s mailbox synchronization
359 utility.
360 </para>
361 <indexterm zone="dovecot dsync">
362 <primary sortas="b-dsync">dsync</primary>
363 </indexterm>
364 </listitem>
365 </varlistentry>
366
367
368 </variablelist>
369
370 </sect2>
371
372</sect1>
Note: See TracBrowser for help on using the repository browser.