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