source: server/mail/exim.xml@ 4e95b43b

10.0 10.1 11.0 11.1 11.2 7.10 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind lazarus nosym perl-modules plabs/python-mods qt5new trunk upgradedb xry111/intltool xry111/soup3 xry111/test-20220226
Last change on this file since 4e95b43b was 4e95b43b, checked in by Pierre Labastie <pieere@…>, 8 years ago

last tags in "server"

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

  • Property mode set to 100644
File size: 20.1 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 exim-download-http "http://ftp.exim.org/pub/exim/exim4/exim-&exim-version;.tar.bz2">
8 <!ENTITY exim-download-ftp "ftp://ftp.exim.org/pub/exim/exim4/exim-&exim-version;.tar.bz2">
9 <!-- if above don't work, please use one of the official mirrors at
10 http://www.exim.org/mirmon/ftp_mirrors.html -->
11 <!ENTITY exim-md5sum "ebae28762b6f125726283dc9434e8709">
12 <!ENTITY exim-size "1.7 MB">
13 <!ENTITY exim-buildsize "14 MB">
14 <!ENTITY exim-time "0.2 SBU">
15
16
17
18 <!ENTITY exim-daemon-version "&exim-version;-3">
19]>
20
21<sect1 id="exim" xreflabel="Exim-&exim-version;">
22 <?dbhtml filename="exim.html"?>
23
24 <sect1info>
25 <othername>$LastChangedBy$</othername>
26 <date>$Date$</date>
27 </sect1info>
28
29 <title>Exim-&exim-version;</title>
30
31 <indexterm zone="exim">
32 <primary sortas="a-Exim">Exim</primary>
33 </indexterm>
34
35 <sect2 role="package">
36 <title>Introduction to Exim</title>
37
38 <para>The <application>Exim</application> package contains a Mail
39 Transport Agent written by the University of Cambridge, released
40 under the GNU Public License.</para>
41
42 &lfs77_checked;
43
44 <bridgehead renderas="sect3">Package Information</bridgehead>
45 <itemizedlist spacing="compact">
46 <listitem>
47 <para>Download (HTTP): <ulink url="&exim-download-http;"/></para>
48 </listitem>
49 <listitem>
50 <para>Download (FTP): <ulink url="&exim-download-ftp;"/></para>
51 </listitem>
52 <listitem>
53 <para>Download MD5 sum: &exim-md5sum;</para>
54 </listitem>
55 <listitem>
56 <para>Download size: &exim-size;</para>
57 </listitem>
58 <listitem>
59 <para>Estimated disk space required: &exim-buildsize;</para>
60 </listitem>
61 <listitem>
62 <para>Estimated build time: &exim-time;</para>
63 </listitem>
64 </itemizedlist>
65
66 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
67 <itemizedlist spacing="compact">
68 <listitem>
69 <para>Additional formats of the documentation (text-based docs are
70 shipped with the sources) can be downloaded by following the links
71 shown at <ulink url="http://exim.org/docs.html"/>.</para>
72 </listitem>
73 </itemizedlist>
74
75 <bridgehead renderas="sect3">Exim Dependencies</bridgehead>
76
77 <bridgehead renderas="sect4">Required</bridgehead>
78 <para role="required">
79 <xref linkend="pcre"/>
80 </para>
81
82 <bridgehead renderas="sect4">Optional</bridgehead>
83 <para role="optional">
84 <xref linkend="db"/> or
85 <ulink url="http://sourceforge.net/projects/tdb">TDB</ulink> (as an
86 alternative to GDBM, built in LFS),
87 <xref linkend="x-window-system"/>,
88 <xref linkend="openldap"/>,
89 <xref linkend="openssl"/> or <xref linkend="gnutls"/>,
90 <xref linkend="cyrus-sasl"/>,
91 <xref linkend="mariadb"/> or <ulink url="http://www.mysql.com/">MySQL</ulink>,
92 <xref linkend="postgresql"/>,
93 <xref linkend="sqlite"/>,
94 <xref linkend="linux-pam"/>, and
95 <ulink url="http://www.trusteddomain.org/opendmarc/">OpenDMARC</ulink>
96 </para>
97
98 <para condition="html" role="usernotes">User Notes:
99 <ulink url="&blfs-wiki;/exim"/></para>
100
101 </sect2>
102
103 <sect2 role="installation">
104 <title>Installation of Exim</title>
105
106 <para>Before building <application>Exim</application>, as the
107 <systemitem class="username">root</systemitem> user you should create
108 the group and user <systemitem class="username">exim</systemitem> which
109 will run the <command>exim</command> daemon:</para>
110
111<screen role="root"><userinput>groupadd -g 31 exim &amp;&amp;
112useradd -d /dev/null -c "Exim Daemon" -g exim -s /bin/false -u 31 exim</userinput></screen>
113
114 <para>Install <application>Exim</application> with the following
115 commands:</para>
116
117<screen><userinput>sed -e 's,^BIN_DIR.*$,BIN_DIRECTORY=/usr/sbin,' \
118 -e 's,^CONF.*$,CONFIGURE_FILE=/etc/exim.conf,' \
119 -e 's,^EXIM_USER.*$,EXIM_USER=exim,' \
120 -e 's,^EXIM_MONITOR,#EXIM_MONITOR,' src/EDITME > Local/Makefile &amp;&amp;
121printf "USE_GDBM = yes\nDBMLIB = -lgdbm\n" >> Local/Makefile &amp;&amp;
122make</userinput></screen>
123
124 <para>This package does not come with a test suite.</para>
125
126 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
127
128<!-- dev note: make INSTALL_ARG=-no_chown DESTDIR=<DESTDIR> install -->
129
130<screen role="root"><userinput>make install &amp;&amp;
131install -v -m644 doc/exim.8 /usr/share/man/man8 &amp;&amp;
132install -v -d -m755 /usr/share/doc/exim-&exim-version; &amp;&amp;
133install -v -m644 doc/* /usr/share/doc/exim-&exim-version; &amp;&amp;
134ln -sfv exim /usr/sbin/sendmail</userinput></screen>
135
136 </sect2>
137
138 <sect2 role="commands">
139 <title>Command Explanations</title>
140
141 <para><command>sed -e ... > Local/Makefile</command>: Most of
142 <application>Exim</application>'s configuration options are compiled in using
143 the directives in <filename>Local/Makefile</filename> which is created from
144 the <filename>src/EDITME</filename> file. This command specifies the minimum
145 set of options. Descriptions for the options are listed below.</para>
146
147 <para><command>printf ... > Local/Makefile</command>: Setting those
148 variables allows to use GDBM instead of the default Berkeley DB. Remove
149 this command if you have installed <xref linkend="db"/>.</para>
150
151 <para><parameter>BIN_DIRECTORY=/usr/sbin</parameter>: This installs all of
152 <application>Exim</application>'s binaries and scripts in
153 <filename class='directory'>/usr/sbin</filename>.</para>
154
155 <para><parameter>CONFIGURE_FILE=/etc/exim.conf</parameter>: This installs
156 <application>Exim</application>'s main configuration file in
157 <filename class='directory'>/etc</filename>.</para>
158
159 <para><parameter>EXIM_USER=exim</parameter>: This tells
160 <application>Exim</application> that after the daemon no longer needs
161 <systemitem class="username">root</systemitem> privileges, the process
162 hands off the daemon to the <systemitem
163 class="username">exim</systemitem> user.</para>
164
165 <para><parameter>#EXIM_MONITOR</parameter>: This defers building the
166 <application>Exim</application> monitor program, as it requires
167 <application>X Window System</application> support, by commenting out the
168 <parameter>EXIM_MONITOR</parameter> line in the <filename>Makefile</filename>.
169 If you wish to build the monitor program, omit this <command>sed</command>
170 command and issue the following command before building the package (modify
171 <filename>Local/eximon.conf</filename>, if necessary):
172 <command>cp exim_monitor/EDITME Local/eximon.conf</command>.</para>
173
174 <para><command>ln -sfv exim /usr/sbin/sendmail</command>: Creates a link to
175 <command>sendmail</command> for applications which need it.
176 <application>Exim</application> will accept most
177 <application>Sendmail</application> command-line options.</para>
178
179 </sect2>
180
181 <sect2 role="commands">
182 <title>Adding Additional Functionality</title>
183
184 <para>To utilize some or all of the dependency packages, you'll need to
185 modify <filename>Local/Makefile</filename> to include the appropriate
186 directives and parameters to link additional libraries before you build
187 <application>Exim</application>. <filename>Local/Makefile</filename> is
188 heavily commented with instructions on how to do this. Listed below is
189 additional information to help you link these dependency packages or
190 add additional functionality.</para>
191
192 <para>If you wish to build and install the
193 <filename class='extension'>.info</filename> documentation, refer to <ulink
194 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch04.html#SECTinsinfdoc"/>.</para>
195
196 <para>If you wish to build in Exim's interfaces for calling virus and spam
197 scanning software directly from access control lists, uncomment the
198 <option>WITH_CONTENT_SCAN=yes</option> parameter and review the information
199 found at <ulink
200 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch41.html"/>.</para>
201
202 <para>To use a backend database other than <application>Berkeley
203 DB</application>, see the instructions at <ulink
204 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch04.html#SECTdb"/>.</para>
205
206 <para>For SSL functionality, see the instructions at <ulink
207 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch04.html#SECTinctlsssl"/>
208 and <ulink
209 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch39.html"/>.</para>
210
211 <para>For <application>tcpwrappers</application> functionality, see the
212 instructions at <ulink
213 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch04.html#SECID27"/>.</para>
214
215 <para>For information about adding authentication mechanisms to the
216 build, see chapters 33-37 of <ulink
217 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/index.html"/>.</para>
218
219 <para>For information about linking <application>Linux-PAM</application>,
220 refer to the instructions <ulink
221 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch11.html#SECTexpcond"/>.</para>
222
223 <para>For information about linking database engine libraries used for
224 <application>Exim</application> name lookups, see the instructions at <ulink
225 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch09.html"/>.</para>
226
227 <para>If you wish to add <application>Readline</application> support to
228 <application>Exim</application> when invoked in <quote>test expansion</quote>
229 (<option>-be</option>) mode, see the information in the <option>-be</option>
230 section of <ulink
231 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch05.html#id2525974"/>.</para>
232
233 <para>You may wish to modify the default configuration and send log files to
234 syslog instead of the default
235 <filename class='directory'>/var/spool/exim/log</filename> directory. See the
236 information at <ulink
237 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch49.html"/>.</para>
238
239 </sect2>
240
241 <sect2 role="configuration">
242 <title>Configuring Exim</title>
243
244 <sect3 id="exim-config">
245 <title>Config Files</title>
246
247 <para><filename>/etc/exim.conf</filename> and
248 <filename>/etc/aliases</filename></para>
249
250 <indexterm zone="exim exim-config">
251 <primary sortas="e-etc-exim.conf">/etc/exim.conf</primary>
252 </indexterm>
253
254 <indexterm zone="exim exim-config">
255 <primary sortas="e-etc-aliases">/etc/aliases</primary>
256 </indexterm>
257
258 </sect3>
259
260 <sect3>
261 <title>Configuration Information</title>
262
263 <para>A default (nothing but comments) <filename>/etc/aliases</filename>
264 file is installed during the package installation if this file did not
265 exist on your system. Create the necessary aliases and start the
266 <application>Exim</application> daemon using the following commands:</para>
267
268<screen role="root"><userinput>cat &gt;&gt; /etc/aliases &lt;&lt; "EOF"
269<literal>postmaster: root
270MAILER-DAEMON: root</literal>
271EOF
272exim -v -bi &amp;&amp;
273/usr/sbin/exim -bd -q15m</userinput></screen>
274
275 <note>
276 <para>To protect an existing <filename>/etc/aliases</filename> file,
277 the command above appends these aliases to it. This file should be
278 checked and duplicate aliases removed, if present.</para>
279 </note>
280
281 <para>The <command>/usr/sbin/exim -bd -q15m</command> command starts
282 the <application>Exim</application> daemon with a 15 minute interval
283 in processing the mail queue. Adjust this parameter to suit your
284 desires.</para>
285
286 </sect3>
287
288 <sect3 id="exim-init">
289 <title>Boot Script</title>
290
291 <para>To automate the running of <command>exim</command> at startup,
292 install the <filename>/etc/rc.d/init.d/exim</filename> init script
293 included in the <xref linkend="bootscripts"/>
294 package.</para>
295
296 <indexterm zone="exim exim-init">
297 <primary sortas="f-exim">exim</primary>
298 </indexterm>
299
300<screen role="root"><userinput>make install-exim</userinput></screen>
301
302 <para>The bootscript also starts the <application>Exim</application>
303 daemon and dispatches a queue runner process every 15 minutes. Modify
304 the <option>-q<replaceable>&lt;time interval&gt;</replaceable></option>
305 parameter in <filename>/etc/rc.d/init.d/exim</filename>, if necessary
306 for your installation.</para>
307
308 </sect3>
309
310 </sect2>
311
312 <sect2 role="content">
313 <title>Contents</title>
314
315 <segmentedlist>
316 <segtitle>Installed Programs</segtitle>
317 <segtitle>Installed Libraries</segtitle>
318 <segtitle>Installed Directories</segtitle>
319
320 <seglistitem>
321 <seg>exicyclog, exigrep, exim, exim-&exim-daemon-version;, exim_checkaccess,
322 exim_dbmbuild, exim_dumpdb, exim_fixdb, exim_lock, exim_tidydb,
323 eximstats, exinext, exipick, exiqgrep, exiqsumm, exiwhat, and
324 optionally, eximon, eximon.bin, and sendmail (symlink)</seg>
325 <seg>None</seg>
326 <seg>/usr/share/doc/exim-&exim-version; and /var/spool/exim</seg>
327 </seglistitem>
328 </segmentedlist>
329
330 <variablelist>
331 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
332 <?dbfo list-presentation="list"?>
333 <?dbhtml list-presentation="table"?>
334
335 <varlistentry id="exicyclog">
336 <term><command>exicyclog</command></term>
337 <listitem>
338 <para>cycles <application>Exim</application> log files.</para>
339 <indexterm zone="exim exicyclog">
340 <primary sortas="b-exicyclog">exicyclog</primary>
341 </indexterm>
342 </listitem>
343 </varlistentry>
344
345 <varlistentry id="exigrep">
346 <term><command>exigrep</command></term>
347 <listitem>
348 <para>searches <application>Exim</application> log files.</para>
349 <indexterm zone="exim exigrep">
350 <primary sortas="b-exigrep">exigrep</primary>
351 </indexterm>
352 </listitem>
353 </varlistentry>
354
355 <varlistentry id="exim-prog">
356 <term><command>exim</command></term>
357 <listitem>
358 <para>is a symlink to the <command>exim-&exim-daemon-version;</command>
359 MTA daemon.</para>
360 <indexterm zone="exim exim-prog">
361 <primary sortas="b-exim">exim</primary>
362 </indexterm>
363 </listitem>
364 </varlistentry>
365
366 <varlistentry id="exim-current_version">
367 <term><command>exim-&exim-daemon-version;</command></term>
368 <listitem>
369 <para>is the <application>Exim</application> mail transport
370 agent daemon.</para>
371 <indexterm zone="exim exim-current_version">
372 <primary sortas="b-exim-&exim-daemon-version;">exim-&exim-daemon-version;</primary>
373 </indexterm>
374 </listitem>
375 </varlistentry>
376
377 <varlistentry id="exim_checkaccess">
378 <term><command>exim_checkaccess</command></term>
379 <listitem>
380 <para>states whether a given recipient address from a given host is
381 acceptable or not.</para>
382 <indexterm zone="exim exim_checkaccess">
383 <primary sortas="b-exim_checkaccess">exim_checkaccess</primary>
384 </indexterm>
385 </listitem>
386 </varlistentry>
387
388 <varlistentry id="exim_dbmbuild">
389 <term><command>exim_dbmbuild</command></term>
390 <listitem>
391 <para> creates and rebuilds <application>Exim</application>
392 databases.</para>
393 <indexterm zone="exim exim_dbmbuild">
394 <primary sortas="b-exim_dbmbuild">exim_dbmbuild</primary>
395 </indexterm>
396 </listitem>
397 </varlistentry>
398
399 <varlistentry id="exim_dumpdb">
400 <term><command>exim_dumpdb</command></term>
401 <listitem>
402 <para> writes the contents of <application>Exim</application>
403 databases to the standard output.</para>
404 <indexterm zone="exim exim_dumpdb">
405 <primary sortas="b-exim_dumpdb">exim_dumpdb</primary>
406 </indexterm>
407 </listitem>
408 </varlistentry>
409
410 <varlistentry id="exim_fixdb">
411 <term><command>exim_fixdb</command></term>
412 <listitem>
413 <para>modifies data in <application>Exim</application>
414 databases.</para>
415 <indexterm zone="exim exim_fixdb">
416 <primary sortas="b-exim_fixdb">exim_fixdb</primary>
417 </indexterm>
418 </listitem>
419 </varlistentry>
420
421 <varlistentry id="exim_lock">
422 <term><command>exim_lock</command></term>
423 <listitem>
424 <para>locks a mailbox file.</para>
425 <indexterm zone="exim exim_lock">
426 <primary sortas="b-exim_lock">exim_lock</primary>
427 </indexterm>
428 </listitem>
429 </varlistentry>
430
431 <varlistentry id="exim_tidydb">
432 <term><command>exim_tidydb</command></term>
433 <listitem>
434 <para>removes old records from <application>Exim</application>
435 databases.</para>
436 <indexterm zone="exim exim_tidydb">
437 <primary sortas="b-exim_tidydb">exim_tidydb</primary>
438 </indexterm>
439 </listitem>
440 </varlistentry>
441
442 <varlistentry id="eximstats">
443 <term><command>eximstats</command></term>
444 <listitem>
445 <para>generates mail statistics from <application>Exim</application>
446 log files.</para>
447 <indexterm zone="exim eximstats">
448 <primary sortas="b-eximstats">eximstats</primary>
449 </indexterm>
450 </listitem>
451 </varlistentry>
452
453 <varlistentry id="exinext">
454 <term><command>exinext</command></term>
455 <listitem>
456 <para>queries remote host retry times.</para>
457 <indexterm zone="exim exinext">
458 <primary sortas="b-exinext">exinext</primary>
459 </indexterm>
460 </listitem>
461 </varlistentry>
462
463 <varlistentry id="exipick">
464 <term><command>exipick</command></term>
465 <listitem>
466 <para>selects messages based on various criteria.</para>
467 <indexterm zone="exim exipick">
468 <primary sortas="b-exipick">exipick</primary>
469 </indexterm>
470 </listitem>
471 </varlistentry>
472
473 <varlistentry id="exiqgrep">
474 <term><command>exiqgrep</command></term>
475 <listitem>
476 <para>is a utility for selective queue listing.</para>
477 <indexterm zone="exim exiqgrep">
478 <primary sortas="b-exiqgrep">exiqgrep</primary>
479 </indexterm>
480 </listitem>
481 </varlistentry>
482
483 <varlistentry id="exiqsumm">
484 <term><command>exiqsumm</command></term>
485 <listitem>
486 <para>produces a summary of the messages in the mail queue.</para>
487 <indexterm zone="exim exiqsumm">
488 <primary sortas="b-exiqsumm">exiqsumm</primary>
489 </indexterm>
490 </listitem>
491 </varlistentry>
492
493 <varlistentry id="exiwhat">
494 <term><command>exiwhat</command></term>
495 <listitem>
496 <para>queries running <application>Exim</application>
497 processes.</para>
498 <indexterm zone="exim exiwhat">
499 <primary sortas="b-exiwhat">exiwhat</primary>
500 </indexterm>
501 </listitem>
502 </varlistentry>
503
504 <varlistentry id="eximon">
505 <term><command>eximon</command></term>
506 <listitem>
507 <para>is a start-up shell script for <command>eximon.bin</command>
508 used to set the required environment variables before running the
509 program.</para>
510 <indexterm zone="exim eximon">
511 <primary sortas="b-eximon">eximon</primary>
512 </indexterm>
513 </listitem>
514 </varlistentry>
515
516 <varlistentry id="eximon.bin">
517 <term><command>eximon.bin</command></term>
518 <listitem>
519 <para>is a monitor program which displays current information in an
520 <application>X</application> window, and also contains a menu interface
521 to <application>Exim</application>'s command line administration
522 options.</para>
523 <indexterm zone="exim eximon.bin">
524 <primary sortas="b-eximon.bin">eximon.bin</primary>
525 </indexterm>
526 </listitem>
527 </varlistentry>
528
529 </variablelist>
530
531 </sect2>
532
533</sect1>
Note: See TracBrowser for help on using the repository browser.