21Dec1996 PSC Initial version. 02Mar1997 PSC Added example configuration file with comments. 30Mar1997 PSC Added anti-spam mail rejection, plus more notes. 16Jul1997 PSC Added notes for 1.62 release enhancements.
Exim can be obtained from the primary ftp site:
Or the mirror on Sunsite UK:
At the time of writing Exim should compile for the following platforms: AIX, BSDI, DGUX, FreeBSD, HP-UX, IRIX, Linux, NetBSD, OpenBSD, DEC OSF1 (aka Digital UNIX), SCO, SunOS4, SunOS5, and Ultrix.
To build Exim follow the detailed explanation in exim-X.XX/doc/spec.txt, the simple run down is:
cd exim-X.XX mkdir Local cp src/EDITME Local/Makefile cp exim_monitor/EDITME Local/eximon.conf vi Local/Makefile vi Local/eximon.conf make make install
The following points detail changes/enhancements made over the default configuration file for use with a Demon dialup account.
domain name -- [eg. cyberpromo.com, matches *@cyberpromo.com] whole domain -- [eg. *.cyberpromo.com, matches *@*.cyberpromo.com] user@domain -- [eg. spammer@cyberpromo.com, single address match]
[for Exim version 1.58 / 1.59]
Also available as a file.
######################################################################
# Runtime configuration file for Exim #
######################################################################
# This is a default configuration file which will operate correctly in
# uncomplicated installations. Please see the manual for a complete list
# of all the runtime configuration options.
# This file is divided into several parts, all but the last of which are
# terminated by a line containing the word "end". The parts must appear
# in the correct order, and all must be present (even if some of them are
# in fact empty). Blank lines, and lines starting with # are ignored.
######################################################################
# MAIN CONFIGURATION SETTINGS #
######################################################################
# Specify your host's canonical name here. If this option is not set, the
# uname() function is called to obtain the name.
# primary_hostname =
# Specify the domain you want to be added to all unqualified addresses
# here. If this option is not set, the primary_hostname value is used.
# qualify_domain =
# If you want unqualified recipient addresses to be qualified with a different
# domain to unqualified sender addresses, specify the recipient domain here.
# If this option is not set, the qualify_domain value is used.
# qualify_recipient =
# Specify your local domains as a colon-separated list here. If this option
# is not set, the qualify_recipient value is used as the only local domain.
# If you do not want to do any local deliveries, uncomment the following line,
# but do not supply any data for it.
local_domains = "xciv.demon.co.uk:xciv.org"
# No local deliveries will ever be run under the uids of these users.
never_users = root
# If you want Exim to support the "percent hack" for all your local domains,
# uncomment the following line. This is the feature by which mail addressed
# to x%y@z (where z is one of your local domains) is locally rerouted to
# x@y and sent on. Otherwise x%y is treated as an ordinary local part.
# percent_hack_domains=*
# If you are running Exim under its own uid (recommended), then you should
# set up that uid as a trusted user by de-commenting the following and
# changing the name if necessary.
trusted_users = exim
trusted_groups = exim
# This is UID and GID that we run Exim as.
exim_user = exim
exim_group = exim
# These two options handle stripping of the extra comma separated fields
# that may be part of the GECOS field in the /etc/passwd file, Exim uses
# the GECOS field to beild the From: header for locally sent mail.
gecos_pattern = "^([^,]*),"
gecos_name = "$1"
# This option makes Exim queue incoming mail until we explicitly ask for
# it to be delivered. This is needed for a dialup hosts so that mail is
# held and no delivery attempts are made until the dialup host is on-line.
# Delivery attempts can be made by invoking Exim with 'exim -v -q'.
queue_only
# Only accept incoming SMTP connections from our local LAN and Demon's
# mail hosts.
sender_net_accept = "192.168.1.0/255.255.255.0:194.217.242.0/255.255.255.0"
# Mail rejection (mainly useful for rejecting mail spam).
#
# Read from a file, one entry per line, and can be one of three forms:
# domain name -- [eg. cyberpromo.com, matches *@cyberpromo.com]
# whole domain -- [eg. *.cyberpromo.com, matches *@*.cyberpromo.com]
# user@domain -- [eg. spammer@cyberpromo.com, single address match]
sender_reject = partial-lsearch;/usr/local/exim/reject.list
end
######################################################################
# TRANPORTS CONFIGURATION #
######################################################################
# This transport is used for local delivery to user mailboxes.
local_delivery:
driver = appendfile;
file = /var/mail/${local_part}
# This transport is used for handling pipe addresses generated by alias
# or .forward files. It has a conventional name, since it is not actually
# mentioned elsewhere in this configuration file.
address_pipe:
driver = pipe;
ignore_status,
return_output
# This transport is used for handling file addresses generated by alias
# or .forward files. It has a conventional name, since it is not actually
# mentioned elsewhere in this configuration file.
address_file:
driver = appendfile
# This transport is used for handling autoreplies generated by the filtering
# option of the forwardfile director. It has a conventional name, since it
# is not actually mentioned elsewhere in this configuration file.
address_reply:
driver = autoreply
# This transport is used for delivering messages over SMTP connections.
smtp:
driver = smtp;
end
######################################################################
# DIRECTORS CONFIGURATION #
######################################################################
# This director handles aliasing using a traditional /etc/aliases file.
system_aliases:
driver = aliasfile;
file = /etc/aliases,
search_type = lsearch
# This director handles forwarding using traditional .forward files.
# If you want it also to allow mail filtering when a forward file
# starts with the string "# Exim filter", uncomment the "filter" option.
userforward:
no_verify,
driver = forwardfile;
file = .forward,
# filter
# This director matches local user mailboxes.
localuser:
driver = localuser,
transport = local_delivery;
end
######################################################################
# ROUTERS CONFIGURATION #
######################################################################
# This router routes to remote hosts over SMTP using a DNS lookup with
# default options.
lookuphost:
driver = lookuphost,
transport = smtp;
# pass_on_timeout;
# This router routes to remote hosts over SMTP by explicit IP address,
# given as a "domain literal" in the form [nnn.nnn.nnn.nnn]. The RFCs
# require this facility, which is why it is enabled by default in Exim.
# If you want to lock it out, set forbid_domain_literals in the main
# configuration section above.
literal:
driver = ipliteral,
transport = smtp;
end
######################################################################
# RETRY CONFIGURATION #
######################################################################
# This single retry rule applies to all domains and all errors. It specifies
# retries every 15 minutes for 2 hours, then increasing retry intervals,
# starting at 2 hours and increasing each time by a factor of 1.5, up to 16
# hours, then retries every 8 hours until 4 days have passed since the first
# failed delivery.
# Domain Error Retries
# ------ ----- -------
# * * F,2h,15m; G,16h,2h,1.5; F,4d,8h
# Here we have a slightly adjusted retry configuration, as suggested in
# the Exim documentation for intermittently connected hosts.
* * F,5d,24h
end
######################################################################
# REWRITE CONFIGURATION #
######################################################################
# These are rewrite rules for outgoing mail, they are tailoured for
# re-writing mail correctly for a mail forwarding domain, but can be
# easily adjusted.
*@xciv.demon.co.uk $1@xciv.org Ffs
*@*.xciv.org $1@xciv.org Ffs
# End of Exim configuration file
Resources: