1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
|
---|
3 | "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
|
---|
4 | <!ENTITY % general-entities SYSTEM "../../general.ent">
|
---|
5 | %general-entities;
|
---|
6 |
|
---|
7 | <!ENTITY exim-download-http "http://www.exim.org/ftp/exim4/exim-&exim-version;.tar.bz2">
|
---|
8 | <!ENTITY exim-download-ftp "ftp://ftp.exim.org/pub/exim/exim4/exim-&exim-version;.tar.bz2">
|
---|
9 | <!ENTITY exim-size "1.4 MB">
|
---|
10 | <!ENTITY exim-buildsize "14.9 MB">
|
---|
11 | <!ENTITY exim-time "0.14 SBU">
|
---|
12 | ]>
|
---|
13 |
|
---|
14 | <sect1 id="exim" xreflabel="Exim-&exim-version;">
|
---|
15 | <sect1info>
|
---|
16 | <othername>$LastChangedBy$</othername>
|
---|
17 | <date>$Date$</date>
|
---|
18 | </sect1info>
|
---|
19 | <?dbhtml filename="exim.html"?>
|
---|
20 | <title><application>Exim</application>-&exim-version;</title>
|
---|
21 |
|
---|
22 | <sect2>
|
---|
23 | <title>Introduction to <application>Exim</application></title>
|
---|
24 |
|
---|
25 | <para>The <application>Exim</application> package contains a Mail Transport
|
---|
26 | Agent written by the University of Cambridge, released under the
|
---|
27 | <acronym>GNU</acronym> Public License.</para>
|
---|
28 |
|
---|
29 | <sect3><title>Package information</title>
|
---|
30 | <itemizedlist spacing='compact'>
|
---|
31 | <listitem><para>Download (HTTP):
|
---|
32 | <ulink url="&exim-download-http;"/></para></listitem>
|
---|
33 | <listitem><para>Download (FTP):
|
---|
34 | <ulink url="&exim-download-ftp;"/></para></listitem>
|
---|
35 | <listitem><para>Download size:
|
---|
36 | &exim-size;</para></listitem>
|
---|
37 | <listitem><para>Estimated disk space required:
|
---|
38 | &exim-buildsize;</para></listitem>
|
---|
39 | <listitem><para>Estimated build time:
|
---|
40 | &exim-time;</para></listitem></itemizedlist>
|
---|
41 | </sect3>
|
---|
42 |
|
---|
43 | <sect3><title><application>Exim</application> dependencies</title>
|
---|
44 | <sect4><title>Required</title>
|
---|
45 | <para><xref linkend="db"/> or
|
---|
46 | <xref linkend="gdbm"/> or
|
---|
47 | <ulink url="http://sourceforge.net/projects/tdb">TDB</ulink></para>
|
---|
48 | </sect4>
|
---|
49 |
|
---|
50 | <sect4><title>Optional</title>
|
---|
51 | <para>X (<xref linkend="xfree86"/> or <xref linkend="xorg"/>),
|
---|
52 | <xref linkend="openldap"/>,
|
---|
53 | <xref linkend="openssl"/> or
|
---|
54 | <ulink url="http://www.gnu.org/software/gnutls/">GnuTLS</ulink>,
|
---|
55 | <xref linkend="cyrus-sasl"/>,
|
---|
56 | <xref linkend="mysql"/>,
|
---|
57 | <xref linkend="postgresql"/>,
|
---|
58 | <xref linkend="tcpwrappers"/> and
|
---|
59 | <xref linkend="Linux_PAM"/></para>
|
---|
60 | </sect4>
|
---|
61 | </sect3>
|
---|
62 |
|
---|
63 | </sect2>
|
---|
64 |
|
---|
65 | <sect2>
|
---|
66 | <title>Installation of <application>Exim</application></title>
|
---|
67 |
|
---|
68 | <para>Before building <application>Exim</application>, you should
|
---|
69 | create the group and user exim which will run the
|
---|
70 | <command>exim</command> daemon:</para>
|
---|
71 |
|
---|
72 | <screen><userinput><command>groupadd exim &&
|
---|
73 | useradd -d /dev/null -c "Exim Daemon" -g exim -s /bin/false exim</command></userinput></screen>
|
---|
74 |
|
---|
75 | <para>Install <application>Exim</application> with the following
|
---|
76 | commands:</para>
|
---|
77 |
|
---|
78 | <screen><userinput><command>sed -e 's,^BIN_DIR.*$,BIN_DIRECTORY=/usr/sbin,' src/EDITME | \
|
---|
79 | sed -e 's,^CONF.*$,CONFIGURE_FILE=/etc/exim.conf,' | \
|
---|
80 | sed -e 's,^EXIM_USER.*$,EXIM_USER=exim,' | \
|
---|
81 | sed -e 's,^EXIM_MONITOR,#EXIM_MONITOR,' > Local/Makefile &&
|
---|
82 | make &&
|
---|
83 | make install &&
|
---|
84 | install -v -m644 doc/exim.8 /usr/share/man/man8 &&
|
---|
85 | install -v -d -m755 /usr/share/doc/exim-&exim-version; &&
|
---|
86 | install -v -m644 doc/* /usr/share/doc/exim-&exim-version; &&
|
---|
87 | ln -sv exim /usr/sbin/sendmail</command></userinput></screen>
|
---|
88 |
|
---|
89 | </sect2>
|
---|
90 |
|
---|
91 | <sect2>
|
---|
92 | <title>Command explanations</title>
|
---|
93 |
|
---|
94 | <para><command>sed -e ... > Local/Makefile</command>: Most of
|
---|
95 | <application>Exim</application>'s configuration options are compiled in using
|
---|
96 | the directives in <filename>Local/Makefile</filename> which is created from
|
---|
97 | the <filename>src/EDITME</filename> file. This command specifies the minimum
|
---|
98 | set of options. Descriptions for the options are listed below.</para>
|
---|
99 |
|
---|
100 | <para><parameter>BIN_DIRECTORY=/usr/sbin</parameter>: This installs all of
|
---|
101 | <application>Exim</application>'s binaries and scripts in
|
---|
102 | <filename class='directory'>/usr/sbin</filename>.</para>
|
---|
103 |
|
---|
104 | <para><parameter>CONFIGURE_FILE=/etc/exim.conf</parameter>: This installs
|
---|
105 | <application>Exim</application>'s main configuration file in
|
---|
106 | <filename class='directory'>/etc</filename>.</para>
|
---|
107 |
|
---|
108 | <para><parameter>EXIM_USER=exim</parameter>: This tells
|
---|
109 | <application>Exim</application> that after the daemon no longer needs root
|
---|
110 | privileges, the process hands off the daemon to the exim user.</para>
|
---|
111 |
|
---|
112 | <para><parameter>#EXIM_MONITOR</parameter>: This defers building the
|
---|
113 | <application>Exim</application> monitor program, as it requires
|
---|
114 | <application>X</application> Window System support, by commenting out the
|
---|
115 | <parameter>EXIM_MONITOR</parameter> line in the <filename>Makefile</filename>.
|
---|
116 | If you wish to build the monitor program, omit this <command>sed</command>
|
---|
117 | command and issue the following command before building the package (modify
|
---|
118 | <filename>Local/eximon.conf</filename>, if necessary):
|
---|
119 | <command>cp exim_monitor/EDITME Local/eximon.conf</command>.</para>
|
---|
120 |
|
---|
121 | <para><command>ln -s exim /usr/sbin/sendmail</command>: Creates a link to
|
---|
122 | <command>sendmail</command> for applications which need it.
|
---|
123 | <application>Exim</application> will accept most
|
---|
124 | <application>Sendmail</application> command-line options.</para>
|
---|
125 |
|
---|
126 | </sect2>
|
---|
127 |
|
---|
128 | <sect2>
|
---|
129 | <title>Adding additional functionality</title>
|
---|
130 |
|
---|
131 | <para>To utilize some or all of the dependency packages, you'll need to modify
|
---|
132 | <filename>Local/Makefile</filename> to include the appropriate directives and
|
---|
133 | parameters to link additional libraries before you build
|
---|
134 | <application>Exim</application>. <filename>Local/Makefile</filename> is
|
---|
135 | heavily commented with instructions on how to do this. Listed below is
|
---|
136 | additional information to help you link these dependency packages.</para>
|
---|
137 |
|
---|
138 | <para>To use a backend database other than <application>Berkelely
|
---|
139 | DB</application>, see the instructions at <ulink
|
---|
140 | url="http://www.exim.org/exim-html-4.40/doc/html/spec_4.html#SECT4.3"/>.</para>
|
---|
141 |
|
---|
142 | <para>For <acronym>SSL</acronym> functionality, see the instructions at <ulink
|
---|
143 | url="http://www.exim.org/exim-html-4.40/doc/html/spec_4.html#SECT4.6"/> and
|
---|
144 | <ulink
|
---|
145 | url="http://www.exim.org/exim-html-4.40/doc/html/spec_37.html#CHAP37"/>.</para>
|
---|
146 |
|
---|
147 | <para>For <application>tcpwrappers</application> functionality, see the
|
---|
148 | instructions at <ulink
|
---|
149 | url="http://www.exim.org/exim-html-4.40/doc/html/spec_4.html#SECT4.7"/>.</para>
|
---|
150 |
|
---|
151 | <para>For information about adding authentication mechanisms to the
|
---|
152 | build, see the instructions at <ulink
|
---|
153 | url="http://www.exim.org/exim-html-4.40/doc/html/spec_34.html#SECT34.4"/> For
|
---|
154 | specific information about using <application>Cyrus-SASL</application>, see
|
---|
155 | section 10 of the <filename>doc/NewStuff</filename> file located in the source
|
---|
156 | tree.</para>
|
---|
157 |
|
---|
158 | <para>For information about linking <application>Linux-PAM</application>, see
|
---|
159 | the instuctions at <ulink
|
---|
160 | url="http://www.exim.org/exim-html-4.40/doc/html/spec_11.html#IX935"/>.</para>
|
---|
161 |
|
---|
162 | <para>For information about linking database engine libraries used for
|
---|
163 | <application>Exim</application> name lookups, see the instuctions at <ulink
|
---|
164 | url="http://www.exim.org/exim-html-4.40/doc/html/spec_9.html#CHAP9"/>.</para>
|
---|
165 |
|
---|
166 | <para>If you wish to add <application>Readline</application> support to
|
---|
167 | <application>Exim</application> when invoked in <quote>test expansion</quote>
|
---|
168 | (-bv) mode, see the information in section 8 of the
|
---|
169 | <filename>doc/NewStuff</filename> file located in the source tree.</para>
|
---|
170 |
|
---|
171 | <para>You may wish to modify the default configuration and send log files to
|
---|
172 | syslog instead of the default
|
---|
173 | <filename class='directory'>/var/spool/exim/log</filename> directory. See the
|
---|
174 | information at <ulink
|
---|
175 | url="http://www.exim.org/exim-html-4.40/doc/html/spec_45.html#CHAP45"/>.</para>
|
---|
176 |
|
---|
177 | </sect2>
|
---|
178 |
|
---|
179 | <sect2>
|
---|
180 | <title>Configuring Exim</title>
|
---|
181 |
|
---|
182 | <sect3><title>Config files</title>
|
---|
183 |
|
---|
184 | <para><filename>/etc/exim.conf</filename> and
|
---|
185 | <filename>/etc/aliases</filename></para>
|
---|
186 |
|
---|
187 | </sect3>
|
---|
188 |
|
---|
189 | <sect3><title>Configuration Information</title>
|
---|
190 |
|
---|
191 | <para>A default (nothing but comments) <filename>/etc/aliases</filename> file
|
---|
192 | is installed during the package installation if this file did not exist on
|
---|
193 | your system. Create the necessary aliases and start the
|
---|
194 | <application>Exim</application> daemon using the following commands:</para>
|
---|
195 |
|
---|
196 | <screen><userinput><command>cat >> /etc/aliases << "EOF"</command>
|
---|
197 | postmaster: root
|
---|
198 | MAILER-DAEMON: root
|
---|
199 | <command>EOF
|
---|
200 | exim -v -bi &&
|
---|
201 | /usr/sbin/exim -bd -q15m</command></userinput></screen>
|
---|
202 |
|
---|
203 | <note><para>To protect an existing <filename>/etc/aliases</filename> file,
|
---|
204 | the command above appends these aliases to it. This file should be checked and
|
---|
205 | duplicate aliases removed, if present.</para></note>
|
---|
206 |
|
---|
207 | <para>The <command>/usr/sbin/exim -bd -q15m</command> command starts the
|
---|
208 | <application>Exim</application> daemon with a 15 minute interval in processing
|
---|
209 | the mail queue. Adjust this parameter to suit your desires.</para>
|
---|
210 |
|
---|
211 | <para>To automate the running of <command>exim</command> at startup, install
|
---|
212 | the <filename>/etc/rc.d/init.d/exim</filename> init script included in the
|
---|
213 | <xref linkend="intro-important-bootscripts"/> package.</para>
|
---|
214 |
|
---|
215 | <screen><userinput><command>make install-exim</command></userinput></screen>
|
---|
216 |
|
---|
217 | <para>The bootscript also starts the <application>Exim</application> daemon
|
---|
218 | and dispatches a queue runner process every 15 minutes. Modify the
|
---|
219 | <parameter>-q<replaceable>[time interval]</replaceable></parameter> parameter
|
---|
220 | in <filename>/etc/rc.d/init.d/exim</filename>, if necessary for your
|
---|
221 | installation.</para>
|
---|
222 | </sect3>
|
---|
223 |
|
---|
224 | </sect2>
|
---|
225 |
|
---|
226 | <sect2>
|
---|
227 | <title>Contents</title>
|
---|
228 |
|
---|
229 | <para>The <application>Exim</application> package contains
|
---|
230 | <command>exim</command>,
|
---|
231 | <command>exim_dumpdb</command>,
|
---|
232 | <command>exim_fixdb</command>,
|
---|
233 | <command>exim_tidydb</command>,
|
---|
234 | <command>exinext</command>,
|
---|
235 | <command>exiwhat</command>,
|
---|
236 | <command>exim_dbmbuild</command>,
|
---|
237 | <command>exicyclog</command>,
|
---|
238 | <command>exigrep</command>,
|
---|
239 | <command>eximstats</command>,
|
---|
240 | <command>exiqsumm</command>,
|
---|
241 | <command>exiqgrep</command>,
|
---|
242 | <command>exim_lock</command>,
|
---|
243 | <command>exim_checkaccess</command> and optionally,
|
---|
244 | <command>eximon</command> and
|
---|
245 | <command>eximon.bin</command>.</para>
|
---|
246 |
|
---|
247 | </sect2>
|
---|
248 |
|
---|
249 | <sect2><title>Description</title>
|
---|
250 | <sect3><title>exim</title>
|
---|
251 | <para><command>exim</command> is the Mail Transport Agent daemon.</para></sect3>
|
---|
252 |
|
---|
253 | <sect3><title>exim_dumpdb</title>
|
---|
254 | <para><command>exim_dumpdb</command> writes the contents of
|
---|
255 | <application>Exim</application> databases to the standard output.</para></sect3>
|
---|
256 |
|
---|
257 | <sect3><title>exim_fixdb</title>
|
---|
258 | <para><command>exim_fixdb</command> modifies data in
|
---|
259 | <application>Exim</application> databases.</para></sect3>
|
---|
260 |
|
---|
261 | <sect3><title>exim_tidydb</title>
|
---|
262 | <para><command>exim_tidydb</command> removes old records from
|
---|
263 | <application>Exim</application> databases.</para></sect3>
|
---|
264 |
|
---|
265 | <sect3><title>exinext</title>
|
---|
266 | <para><command>exinext</command> queries remote host retry times.</para></sect3>
|
---|
267 |
|
---|
268 | <sect3><title>exiwhat</title>
|
---|
269 | <para><command>exiwhat</command> queries running
|
---|
270 | <application>Exim</application> processes.</para></sect3>
|
---|
271 |
|
---|
272 | <sect3><title>exim_dbmbuild</title>
|
---|
273 | <para><command>exim_dbmbuild</command> creates and rebuilds
|
---|
274 | <application>Exim</application> databases.</para></sect3>
|
---|
275 |
|
---|
276 | <sect3><title>exicyclog</title>
|
---|
277 | <para><command>exicyclog</command> cycles
|
---|
278 | <application>Exim</application> log files.</para></sect3>
|
---|
279 |
|
---|
280 | <sect3><title>exigrep</title>
|
---|
281 | <para><command>exigrep</command> searches
|
---|
282 | <application>Exim</application> log files.</para></sect3>
|
---|
283 |
|
---|
284 | <sect3><title>eximstats</title>
|
---|
285 | <para><command>eximstats</command> generates mail statistics from
|
---|
286 | <application>Exim</application> log files.</para></sect3>
|
---|
287 |
|
---|
288 | <sect3><title>exiqsumm</title>
|
---|
289 | <para><command>exiqsumm</command> produces a summary of the messages in the
|
---|
290 | mail queue.</para></sect3>
|
---|
291 |
|
---|
292 | <sect3><title>exiqgrep</title>
|
---|
293 | <para><command>exiqgrep</command> is an utility for selective queue
|
---|
294 | listing.</para></sect3>
|
---|
295 |
|
---|
296 | <sect3><title>exim_lock</title>
|
---|
297 | <para><command>exim_lock</command> locks a mailbox file.</para></sect3>
|
---|
298 |
|
---|
299 | <sect3><title>exim_checkaccess</title>
|
---|
300 | <para><command>exim_checkaccess</command> states whether a given recipient
|
---|
301 | address from a given host is acceptable or not.</para></sect3>
|
---|
302 |
|
---|
303 | </sect2>
|
---|
304 |
|
---|
305 | </sect1>
|
---|
306 |
|
---|