Import Debian changes 4.89-2+deb9u4
[hcoop/debian/exim4.git] / debian / manpages / exim4-config_files.5
CommitLineData
de45f55a
AM
1.\" Hey, EMACS: -*- nroff -*-
2.\" First parameter, NAME, should be all caps
3.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
4.\" other parameters are allowed: see man(7), man(1)
0baa7b9d 5.TH EXIM4-CONFIG_FILES 5 "Jan 4, 2015" EXIM4
de45f55a
AM
6.\" Please adjust this date whenever revising the manpage.
7.\"
8.\" Some roff macros, for reference:
9.\" .nh disable hyphenation
10.\" .hy enable hyphenation
11.\" .ad l left justify
12.\" .ad b justify to both left and right margins
13.\" .nf disable filling
14.\" .fi enable filling
15.\" .br insert line break
16.\" .sp <n> insert n+1 empty lines
17.\" for manpage-specific macros, see man(7)
18.\" \(oqthis text is enclosed in single quotes\(cq
19.\" \(lqthis text is enclosed in double quotes\(rq
20.SH NAME
21exim4-config_files \- Files in use by the Debian exim4 packages
22.SH SYNOPSIS
23.br
24/etc/aliases
25.br
26/etc/email\-addresses
27.br
28/etc/exim4/local_host_blacklist
29.br
30/etc/exim4/host_local_deny_exceptions
31.br
32/etc/exim4/local_sender_blacklist
33.br
34/etc/exim4/sender_local_deny_exceptions
35.br
36/etc/exim4/local_sender_callout
37.br
38/etc/exim4/local_rcpt_callout
39.br
40/etc/exim4/local_domain_dnsbl_whitelist
41.br
42/etc/exim4/hubbed_hosts
43.br
44/etc/exim4/passwd
45.br
46/etc/exim4/passwd.client
47.br
48/etc/exim4/exim.crt
49.br
50/etc/exim4/exim.key
51.SH DESCRIPTION
52This manual page describes the files that are in use by the Debian
53exim4 packages and which are not part of an exim installation done
54from source.
55.SH /etc/aliases
56is a table providing a mechanism to redirect mail for local
57recipients. /etc/aliases is a text file which is roughly compatible
58with Sendmail. The file should contain lines of the form
59.br
60name: address, address, ...
61.br
62The name is a local address without domain part. All local domains are
63handled equally. For more detailed documentation, please refer to
64/usr/share/doc/exim4\-base/spec.txt.gz, chapter 22, and to
65/usr/share/doc/exim4\-base/README.Debian.gz. Please note that it
66is not possible to use delivery to arbitrary files, directories and to
67pipes. This is forbidden in Debian's exim4 default configuration.
68
69You should at least set up an alias for postmaster in the /etc/aliases
70file.
71.SH /etc/email\-addresses
72is used to rewrite the email addresses of users. This is particularly
73useful for users who use their ISP's domain for email.
74
75The file should contain lines of the form
76
77.br
78user: someone@isp.com
79.br
80otheruser: someoneelse@anotherisp.com
81
82This way emails from user will appear to be from someone@isp.com to
83the outside world. Technically, the from, reply\-to, and sender
84addresses, along with the envelope sender, are rewritten for users that
85appear to be in the local domain.
86
87.SH /etc/exim4/local_host_blacklist
88.I [exim host list]
89is an optional file containing a list of IP addresses, networks and
90host names whose messages will be denied with the error message
91"locally blacklisted". This is a full exim 4 host list, and all
92available features can be used. This includes negative items, and so
93it is possible to exclude addresses from being blacklisted. For
94convenience, as an additional method to whitelist addresses from being
95blocked, an explicit whitelist is read in from
96/etc/exim4/host_local_deny_exceptions. Entries in the whitelist override
97corresponding blacklist entries.
98
99In the blacklist, the trick is to read a line break as "or" if it
100follows a positive item, and as "and" if it follows a negative item.
101
102For example, a /etc/exim4/local_host_blacklist
103
104.br
105192.168.10.0/24
106.br
107!172.16.10.128/26
108.br
109172.16.10.0/24
110.br
11110.0.0.0/8
112
113Exim just evaluates left to right (or up-down in the file listing
114context), so you don't get the same kind of operator binding as in a
115programming language.
116
117.SH /etc/exim4/host_local_deny_exceptions
118.I [exim host list]
119contains a list of IP addresses, networks and host names whose
120messages will be accepted despite the address is also listed in
121/etc/exim4/local_host_blacklist, overriding a blacklisting.
122
123.SH /etc/exim4/local_sender_blacklist
124.I [exim address list]
125is an optional files containing a list of envelope senders whose
126messages will be denied with the error message "locally blacklisted".
127This is a full exim 4 address list, and all available features can be
128used. This includes negative items, and so it is possible to exclude
129addresses from being blacklisted. For convenience, as an additional
130method to whitelist addresses from being blocked, an explicit
131whitelist is read in from /etc/exim4/sender_local_deny_exceptions. Entries
132in the whitelist override corresponding blacklist entries.
133
134In the blacklist, the trick is to read a line break as "or" if it
135follows a positive item, and as "and" if it follows a negative item.
136
137For example, a /etc/exim4/local_sender_blacklist
138
139.br
140domain1.example
141.br
142!local@domain2.example
143.br
144domain2.example
145.br
146domain3.example
147
148Exim just evaluates left to right (or up-down in the file listing
149context), so you don't get the same kind of operator binding as in a
150programming language.
151
152.SH /etc/exim4/sender_local_deny_exceptions
153.I [exim address list]
154is an optional file containing a list of envelope senders whose messages
155will be accepted despite the address being also listed in
156/etc/exim4/local_sender_blacklist, overriding a blacklisting.
157
158.SH /etc/exim4/local_sender_callout
159.I [exim address list]
160is an optional file containing a list of envelope senders whose
161messages are subject to sender verification with a callout. This is a
162full exim4 address list, and all available features can be used.
163
164.SH /etc/exim4/local_rcpt_callout
165.I [exim address list]
166is an optional file containing a list of envelope recipients for which
167incoming messages are subject to recipient verification with a
168callout. This is a full exim4 address list, and all available features
169can be used.
170
171.SH /etc/exim4/local_domain_dnsbl_whitelist
172.I [exim address list]
173is an optional file containing a list of envelope senders whose
174messages are exempt from blacklisting via a domain-based DNSBL. This
175is a full exim4 address list, and all available features can be used.
176This feature is intended to be used in case of a domain-based DNSBL
177being too heavy handed, for example listing entire top-level domains
178for their registry policies.
179
180.SH /etc/exim4/hubbed_hosts
181.I [exim domain list]
182is an optional file containing a list of route_data records which can
183be used to override or augment MX information from the DNS. This is
184particularly useful for mail hubs which are highest-priority MX for a
185domain in the DNS but are not final destination of the messages,
186passing them on to a host which is not publicly reachable, or to
187temporarily fix mail routing in case of broken DNS setups.
188
189The file should contain key-value pairs of domain pattern and route
190data of the form
191
192.br
193domain: host-list options
194.br
195dict.ref.example: mail\-1.ref.example:mail\-2.ref.example
196.br
197foo.example: internal.mail.example.com
198.br
199bar.example: 192.168.183.3
200
201which will cause mail for foo.example to be sent to the host
202internal.mail.example (IP address derived from A record only), and
203mail to bar.example to be sent to 192.168.183.3.
204
205See spec.txt chapter 20.3 through 20.7 for a more detailed explanation
206of host list format and available options.
207
208.SH /etc/exim4/passwd
209contains account and password data for SMTP authentication when the
210local exim is SMTP server and clients authenticate to the local exim.
211
212The file should contain lines of the form
213
214.br
215username:crypted-password:clear-password
216
217crypted-password is the crypt(3)-created hash of your password. You
218can, for example, use the mkpasswd program from the whois package to
219create a crypted password. It is recommended to use a modern hash
220algorithm, see mkpasswd \-\-method=help. Consider not using crypt or MD5.
221
222clear-password is only necessary if you want to offer CRAM-MD5
223authentication. If you don't plan on doing so, the third column can be
224omitted completely.
225
226This file must be readable for the Debian\-exim user and should not be
227readable for others. Recommended file mode is root:Debian\-exim 640.
228
229.SH /etc/exim4/passwd.client
230contains account and password data for SMTP authentication when exim
231is authenticating as a client to some remote server.
232
233The file should contain lines of the form
234
235.br
236target.mail.server.example:login-user-name:password
237
238which will cause exim to use login-user-name and password when sending
239messages to a server with the canonical host name
240target.mail.server.example. Please note that this does not configure
241the mail server to send to (this is determined in Debconf), but only
242creates the correlation between host name and authentication
243credentials to avoid exposing passwords to the wrong host.
244
245Please note that target.mail.server.example is currently the value
246that exim can read from reverse DNS: It first follows the host name of
247the target system until it finds an IP address, and then looks up the
248reverse DNS for that IP address to use the outcome of this query (or
249the IP address itself should the query fail) as index into
250/etc/exim4/passwd.client.
251
252This goes inevitably wrong if the host name of the mail server is a
253CNAME (a DNS alias), or the reverse lookup does not fit the forward one.
254
255Currently, you need to manually lookup all reverse DNS names for all
256IP addresses that your SMTP server host name points to, for example by
257using the host command. If the SMTP smarthost alias expands to
258multiple IPs, you need to have multiple lines for all the hosts. When
259your ISP changes the alias, you will need to manually fix that.
260
261You may minimize this trouble by using a wild card entry or regular
262expressions, thus reducing the risk of divulging the password to the
263wrong SMTP server while reducing the number of necessary lines. For a
264deeper discussion, see the Debian BTS #244724.
265
266password is your SMTP password in clear text. If you do not know about
267your SMTP password, you can try using your POP3 password as a first
268guess.
269
270This file must be readable for the Debian\-exim user and should not be
271readable for others. Recommended file mode is root:Debian\-exim 640.
272
273.br
274# example for CONFDIR/passwd.client
275.br
276# this will only match if the server's generic name matches exactly
277.br
278mail.server.example:user:password
279.br
280# this will deliver the password to any server
281.br
282*:username:password
283.br
284# this will deliver the password to servers whose generic name ends in
285.br
286# mail.server.example
287.br
288*.mail.server.example:user:password
289.br
290# this will deliver the password to servers whose generic name matches
291.br
292# the regular expression
293.br
0baa7b9d 294^smtp[0\-9]*\\.mail\\.server\\.example:user:password
de45f55a
AM
295.br
296
297.SH /etc/exim4/exim.crt
298contains the certificate that exim uses to initiate TLS connections.
299This is public information and can be world readable.
300/usr/share/doc/exim4\-base/examples/exim\-gencert can
301be used to generate a private key and self-signed certificate.
302
303.SH /etc/exim4/exim.key
304contains the private key belonging to the certificate in exim.crt.
305This file's contents must be kept secret and should have mode
306root:Debian\-exim 640. /usr/share/doc/exim4\-base/examples/exim\-gencert
307can be used to generate a private key and self-signed certificate.
308
309.SH BUGS
310Plenty. Please report them through the Debian BTS
311
312This manual page needs a major re-work. If somebody knows better groff
313than us and has more experience in writing manual pages, any patches
314would be greatly appreciated.
315
316.SH NOTES
317.SS Unresolvable items in host lists
318
319Adding or keeping items in the abovementioned host lists which are not
320resolvable by DNS has severe consequences.
321
322e.g. if resolving a
323.B hostname
324in local_host_blacklist returns a temporary error (DNS timeout) exim
325will not be able to check whether a connecting host is part of the list.
326Exim will therefore return a temporary SMTP error for
327.I every
328connecting host.
329
330On the other hand if there is a permanent error in resolving a name in the
331host list (the record was removed from DNS) exim behaves as if the host
332does not match the list. e.g. a local_host_blacklist consisting of
333
334notresolvable.example.com:rejectme.example.com
335
336is equivalent to an empty one. - Exim tries to match the IP-address of the
0baa7b9d 337connecting host to notresolvable.example.com, resolving this IP by DNS
de45f55a
AM
338fails, exim behaves as if the connecting host does not match the list. List
339processing stops at this point!
340
341Starting the list with the special pattern +ignore_unknown as a
342safeguard against this behavior is strongly recommended if hostnames are
343used in hostlists.
344
345See Exim specification Chapter
346.I Domain, host, address, and local part lists
347, section
348.I Behaviour when an IP address or name cannot be found.
349<http://www.exim.org/exim\-html\-current/doc/html/spec_html/ch\-domain_host_address_and_local_part_lists.html>
350
351.SH SEE ALSO
352.br
353.BR exim (8),
354.br
355.BR update\-exim4.conf(8),
356.br
357.BR /usr/share/doc/exim4\-base/,
358.br
359and for general notes and details about interaction with debconf
360.BR /usr/share/doc/exim4\-base/README.Debian.gz
361
362.SH AUTHOR
363Marc Haber <mh+debian-packages@zugschlus.de> with help from Ross Boylan.
364