source: server/mail/dovecot.xml@ c143e70

10.0 10.1 11.0 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind ken/refactor-virt lazarus perl-modules qt5new trunk xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since c143e70 was c143e70, checked in by Pierre Labastie <pieere@…>, 4 years ago

A few more tags

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

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