never_users = root
+# The use of your host as a mail relay by any host, including the local host
+# calling its own SMTP port, is locked out by default. If you want to permit
+# relaying from the local host, you should set
+#
+host_accept_relay = localhost
+#
+# If you want to permit relaying through your host from certain hosts or IP
+# networks, you need to set the option appropriately, for example
+#
+# host_accept_relay = my.friends.host : 131.111.0.0/16
+#
+# If you are an MX backup or gateway of some kind for some domains, you must
+# set relay_domains to match those domains. This will allow any host to
+# relay through your host to those domains.
+#
+# See the section of the manual entitled "Control of relaying" for more
+# information.
+
+
# The setting below causes Exim to do a reverse DNS lookup on all incoming
# IP calls, in order to get the true host name. If you feel this is too
# expensive, you can specify the networks for which a lookup is done, or
# remove the setting entirely.
-host_lookup_nets = 0.0.0.0/0
+host_lookup = 0.0.0.0/0
+
+
+# By default, Exim expects all envelope addresses to be fully qualified, that
+# is, they must contain both a local part and a domain. If you want to accept
+# unqualified addresses (just a local part) from certain hosts, you can specify
+# these hosts by setting one or both of
+#
+# receiver_unqualified_hosts =
+# sender_unqualified_hosts =
+#
+# to control sender and receiver addresses, respectively. When this is done,
+# unqualified addresses are qualified using the settings of qualify_domain
+# and/or qualify_recipient (see above).
# Exim contains support for the Realtime Blocking List (RBL) that is being
# maintained as part of the DNS. See http://maps.vix.com/rbl/ for background.
-# Uncommenting the following line will make Exim reject mail from any
-# host whose IP address is blacklisted in the RBL at maps.vix.com.
+# Uncommenting the first line below will make Exim reject mail from any
+# host whose IP address is blacklisted in the RBL at maps.vix.com. Some
+# others have followed the RBL lead and have produced other lists: DUL is
+# a list of dial-up addresses, and ORBS is a list of open relay systems. The
+# second line below checks all three lists.
# rbl_domains = rbl.maps.vix.com
-
-
-# The setting below locks out the use of your host as a mail relay by any
-# other host. If you want to permit relaying through your host from certain
-# hosts or IP networks, you need to vary this option and/or make use of the
-# other three options in the set sender_{host,net}_{accept,reject}_relay.
-# See the section of the manual entitled "Control of relaying" for more info.
-# Removing this setting altogether is not recommended, because there are many
-# unscrupulous people out there who will make use of open relays to try to
-# disguise the source of unsolicited bulk mail.
-
-sender_host_reject_relay = *
+# rbl_domains = rbl.maps.vix.com:dul.maps.vix.com:relays.orbs.org
# If you want Exim to support the "percent hack" for all your local domains,
# percent_hack_domains = *
+
# This emulates sendmails "newaliases". Keep in mind that the alias
# transport does use lsearch by default. remember to change this,
# if you want to use DBM-Lookups.
bi_command=/usr/bin/newaliases
+
end
# how this can be done.
# Modification by Florian Wallner <wallner@speed-link.de> make use of
-# procmail as director if a user has a .procmailrc to avoid breaking
+# procmail as director if a user has a .procmailrc to avoid breaking
# something that worked before.
-
+
procmail:
driver = pipe
command = "/usr/bin/procmail -d ${local_part}"
-# from_hack
-
+# from_hack
+
local_delivery:
driver = appendfile
file = /var/mail/${local_part}
delivery_date_add
envelope_to_add
return_path_add
-# group = mail
+ group = mail
# mode = 0660
-# 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. (A different name *can*
-# be specified via the "address_pipe_transport" option if you really want
-# to.) If the pipe generates any standard output, it is returned to the sender
-# of the message as a delivery error. Set return_fail_output instead if you
-# want this to happen only when the pipe fails to complete normally.
+# This transport is used for handling pipe deliveries generated by alias
+# or .forward files. If the pipe generates any standard output, it is returned
+# to the sender of the message as a delivery error. Set return_fail_output
+# instead of return_output if you want this to happen only when the pipe fails
+# to complete normally. You can set different transports for aliases and
+# forwards if you want to - see the references to address_pipe below.
address_pipe:
driver = pipe
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.
+# This transport is used for handling deliveries directly to files that are
+# generated by aliassing or forwarding.
address_file:
driver = appendfile
return_path_add
-# This transport is used for handling file addresses generated by alias
-# or .forward files if the path ends in "/", which causes it to be treated
-# as a directory name rather than a file name. Each message is then delivered
-# to a unique file in the directory. If instead you want all such deliveries to
-# be in the "maildir" format that is used by some other mail software,
-# uncomment the final option below. If this is done, the directory specified
-# in the .forward or alias file is the base maildir directory.
-#
-# Should you want to be able to specify either maildir or non-maildir
-# directory-style deliveries, then you must set up yet another transport,
-# called address_directory2. This is used if the path ends in "//" so should
-# be the one used for maildir, as the double slash suggests another level
-# of directory. In the absence of address_directory2, paths ending in //
-# are passed to address_directory.
-
-address_directory:
- driver = appendfile
- delivery_date_add
- envelope_to_add
- return_path_add
- no_from_hack
- prefix = ""
- suffix = ""
-# maildir_format
-
-
# 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.
+# option of the forwardfile director.
address_reply:
driver = autoreply
# If any of your aliases expand to pipes or files, you will need to set
# up a user and a group for these deliveries to run under. You can do
# this by uncommenting the "user" option below (changing the user name
-# as appropriate) and adding a "group" option if necessary.
+# as appropriate) and adding a "group" option if necessary. Alternatively, you
+# can specify "user" on the transports that are used. Note that those
+# listed below are the same as are used for .forward files; you might want
+# to set up different ones for pipe and file deliveries from aliases.
# Modification by Florian Wallner <wallner@speed-link.de> use dbm
-# lookups for aliases to speed up and simulate Sendmail behaviour
+# lookups for aliases to speed up and simulate Sendmail behaviour
+
-aliasfile:
+system_aliases:
driver = aliasfile
file = /var/spool/exim/db/aliases
search_type = dbm
- user = mail
+ user = mail
+ file_transport = address_file
+ pipe_transport = address_pipe
#system_aliases:
# driver = aliasfile
# file = /etc/aliases
# search_type = lsearch
# user = exim
+# file_transport = address_file
+# pipe_transport = address_pipe
# This director handles forwarding using traditional .forward files.
# The check_ancestor option means that if the forward file generates an
# address that is an ancestor of the current one, the current one gets
# passed on instead. This covers the case where A is aliased to B and B
-# has a .forward file pointing to A.
+# has a .forward file pointing to A. The three transports specified at the
+# end are those that are used when forwarding generates a direct delivery
+# to a file, or to a pipe, or sets up an auto-reply, respectively.
userforward:
driver = forwardfile
no_expn
check_ancestor
# filter
+ file_transport = address_file
+ pipe_transport = address_pipe
+ reply_transport = address_reply
+
+
+# This director matches local user mailboxes.
# Modification by Florian Wallner <wallner@speed-link.de> make use of
# procmail as director if a user has a .procmailrc to avoid breaking
-# something that worked before.
-
+# something that worked before.
+
procmail:
driver = localuser
require_files = ${local_part}:${home}/.procmailrc
- transport = procmail
-
-# This director matches local user mailboxes.
+ transport = procmail
localuser:
driver = localuser
# exim This shell script takes care of starting and stopping
# Exim.
#
-# chkconfig: 2345 80 30
-#
-# description: Exim is a Mail Transport Agent, which is the program \
-# that moves mail from one machine to another.
-#
-# processname: exim
-# config: /etc/exim.cf
-# pidfile: /var/run/exim.pid
-
-
-# Source function library
+# chkconfig: 2345 80 30
+# description: Exim is a Mail Transport Agent, which is the program \
+# that moves mail from one machine to another.
+# processname: exim
+# config: /etc/exim.cf
+# pidfile: /var/run/exim.pid
+
+# Source function library.
. /etc/rc.d/init.d/functions
-# Get network config
+# Source networking configuration.
. /etc/sysconfig/network
-# Get service config
-if [ -f /etc/sysconfig/hc-cron ]; then
- . /etc/sysconfig/hc-cron
+# Source sendmail configureation.
+if [ -f /etc/sysconfig/exim ] ; then
+ . /etc/sysconfig/exim
else
DAEMON=yes
QUEUE=1h
fi
# Check that networking is up.
-if [ "${NETWORKING}" = "no" ]; then
- echo "WARNING: Networking is down. Exim service can't be runed."
- exit 1
-fi
+[ "${NETWORKING}" = "no" ] && exit 0
+[ -x /usr/bin/exim ] || exit 0
# See how we were called.
case "$1" in
start)
- # Check if the service is already running?
- if [ ! -f /var/lock/subsys/exim ]; then
- show Starting exim
- daemon exim $([ "$DAEMON" = yes ] && echo -bd) \
- $([ -n "$QUEUE" ] && echo -q$QUEUE)
- else
- echo "Exim already is running"
- fi
+ # Start daemons.
+ show "Starting exim: "
+ daemon /usr/bin/exim $([ "$DAEMON" = "yes" ] && echo -bd) \
+ $([ -n "$QUEUE" ] && echo -q$QUEUE)
touch /var/lock/subsys/exim
;;
stop)
# Stop daemons.
- show Shutting down exim:
+ show "Shutting down exim: "
killproc exim
rm -f /var/lock/subsys/exim
;;
- restart|reload)
+ restart)
$0 stop
$0 start
;;
status exim
;;
*)
- echo "Usage: $0 {start|stop|staus|restart|reload}"
+ echo "Usage: $0 {start|stop|restart|status}"
exit 1
esac