source: server/mail/exim.xml@ 37191af

systemd-13485
Last change on this file since 37191af was 37191af, checked in by Douglas R. Reno <renodr@…>, 8 years ago

Sync to trunk r17270. Last round for the night.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/branches/systemd@17330 af4574ff-66df-0310-9fd7-8a98e5e911e0

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