[Exim] Message filter transporting defer: No transport set b…

Startseite
Nachricht löschen
Nachricht beantworten
Autor: David M Walker
Datum:  
To: Exim Users Mailing List
Betreff: [Exim] Message filter transporting defer: No transport set by director
I think this must be something to do with the v3 upgrade, but what
am I doing wrong ?

--------------------------------------------------------------------
1999-07-07 22:13:42 111zwk-0004ZS-00 == >postmaster@???
<message filter transporting defer (-1): No transport set by director
--------------------------------------------------------------------######################################################################
##                                                                  ##
##              EXIM MAIL TRANSPORT CONFIGURATION FILE              ##
##                                                                  ##
######################################################################


######################################################################
#                    MAIN CONFIGURATION SETTINGS                     #
######################################################################


#----------------------------------------------------------------------------
# Set the timeout for accepting a non-SMTP message, that is, the maximum
# time Exim waits when reading a message on the standard input. Zero =
# forever. [Default = 0]

accept_timeout = 15m

#----------------------------------------------------------------------------
# If the queue is not checked regularly, ensure that a new delivery is
# attempted on frozen messages.

auto_thaw = 1d

#----------------------------------------------------------------------------
# Prevent file corruption by ensuring that there is enough space on the
# mail spool volume to accept the maximum size message and then some.

check_spool_space = 250M

#----------------------------------------------------------------------------
# If this option is set, then source-routed mail addresses are stripped
# down to their final components.

collapse_source_routes = true
                
#----------------------------------------------------------------------------
# Configure Exim so that a message deliver delay warning is sent after 4h.
# The following setting implies that the first warning message will be sent
# after 4 hours. The second warning message will be sent after 12h.
# Subsequent warnings will be send each 24h there after.

delay_warning = 4h:12h:36h

#----------------------------------------------------------------------------
# The string is expanded at the time a warning message might be sent. If
# the result of the expansion is a forced failure, an empty string, or a
# string matching any of '0', 'no' or 'false' (the comparison being done
# caselessly) then the warning message is not sent.

delay_warning_condition = "${if match{$h_precedence:}{(?i)bulk|list}{no}{yes}}"

#----------------------------------------------------------------------------
# Prevent system overload by placing an upper limit on the load average
# during which deliveries are attempted. [Default = unset]

deliver_load_max = 6

#----------------------------------------------------------------------------
# Set user & group under which to run most of the time.

exim_user = exim
exim_group = mail

#----------------------------------------------------------------------------
# Let mail master know when mail gets frozen

freeze_tell_mailmaster = true

#----------------------------------------------------------------------------
# Specify parsing rules for gecos field.

gecos_name = "$1"

gecos_pattern = "^([^,]*),"

#----------------------------------------------------------------------------
# Insist that a mail message must have a valid sender, reply-to or from

headers_sender_verify = true

#----------------------------------------------------------------------------
# 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 = 0.0.0.0/0

#----------------------------------------------------------------------------
# Set exim to ignore failures to deliver error message

ignore_errmsg_errors = true

#----------------------------------------------------------------------------
# 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 = lsearch;/usr/exim/local/domains

#----------------------------------------------------------------------------
# The log_all_parents option causes all intermediate addresses between an
# original envelope address and the final delivery address to be included in
# the log line in parentheses after the first address that follows "=>".
# Without this, intermediate addresses are not included, except that if the
# final delivery is a to pipe or file or autoreply, the immediately preceding
# parent address is listed.

log_all_parents = true

#----------------------------------------------------------------------------
# Log the original recepients, before rewriting.

log_received_recipients = true

#----------------------------------------------------------------------------
# If this option is set, the unrewritten original sender of a message is
# added to the end of the log line that records the message's arrival,
# after the word 'from' (before the recipients if log_received_recipients
# is also set).

log_received_sender = true

#----------------------------------------------------------------------------
# Log mail rejections

log_refused_recipients = true

#----------------------------------------------------------------------------
# Log mail header rewrites

log_rewrites = true

#----------------------------------------------------------------------------
# Log smtp result.

log_smtp_confirmation = true

#----------------------------------------------------------------------------
# Log message subject.

log_subject = true

#----------------------------------------------------------------------------
# Set message size limit, 4MB

message_size_limit = 10M

message_body_visible = 10240
#----------------------------------------------------------------------------
# Set message filter file

message_filter = /usr/exim/local/filters

#----------------------------------------------------------------------------
# No local deliveries will ever be run under the uids of these users.

never_users = root:daemon:bin:lp:sync:shutdown:adm:halt:ftp

#----------------------------------------------------------------------------
# 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=*

#----------------------------------------------------------------------------
# Specify your host's canonical name here. If this option is not set, the
# uname() function is called to obtain the name.

primary_hostname = monza.datamgmt.net

#----------------------------------------------------------------------------
# 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 = datamgmt.net

#----------------------------------------------------------------------------
# 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 =

#----------------------------------------------------------------------------
# Do not attempt immediate delivery if load is above this

queue_only_load = 4

#----------------------------------------------------------------------------
# Controls the maximum number of queue-running processes that the Exim daemon
# will run simultaneously.

queue_run_max = 8

#----------------------------------------------------------------------------
# Control which hosts may use us as relay host

relay_domains = localhost:lsearch;/usr/exim/local/relays:lsearch;/usr/exim/local/domains

relay_domains_include_local_mx = true


#----------------------------------------------------------------------------
# Set the maximum number of parallel deliveries done from a queue run

remote_max_parallel = 4

#----------------------------------------------------------------------------
# Set order into which domains are sorted before delivery starts

# remote_sort = "*.localdomain"

#----------------------------------------------------------------------------
# Set maximum size of bounce message return to sender

return_size_limit = 20K

#-----------------------------------------------------------------------------
# Sets which hosts we don't do an ident on.

rfc1413_hosts = "! *: *"

#----------------------------------------------------------------------------
# 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.

host_accept_relay =    "localhost            : \
             lsearch;/usr/exim/local/relays    : \
             lsearch;/usr/exim/local/domains"


#----------------------------------------------------------------------------
# However, make sure that unqualified addresses are not now rejected as well

sender_unqualified_hosts = "localdomain.0.0/netmask.0.0"

#----------------------------------------------------------------------------
# Verify all senders

sender_verify_hosts =  "! lsearch;/usr/exim/local/relays        : \
            ! lsearch;/usr/exim/local/unverified_senders    : \
            *"


sender_try_verify = true
#sender_verify = true

sender_verify_reject = true
sender_verify_fixup = true

sender_reject = "lsearch;/usr/exim/local/badusers"

#----------------------------------------------------------------------------
# Set maximum number of incoming connections

smtp_accept_max = 30

#----------------------------------------------------------------------------
# Set to only queue incomming messages if more than given number of
# simultaneous SMTP connections are received.

smtp_accept_queue = 10

#----------------------------------------------------------------------------
# Reserve SMTP connections for local domain (as in smtp_reserve_hosts).

smtp_accept_reserve = 6

#----------------------------------------------------------------------------
# Set connection backlog - anti denial of service

smtp_connect_backlog = 10

#----------------------------------------------------------------------------
# Set load for reserved hosts

smtp_load_reserve = 5

#----------------------------------------------------------------------------
# Reserve connections for local domain hosts

# smtp_reserve_hosts = "*.localdomains"

#----------------------------------------------------------------------------
# Set mail spool directory

spool_directory = /var/spool/exim

#-----------------------------------------------------------------------------
# Redundant pairs of angle brackets round 'route-addr' items in addresses are
# stripped. For example, <<xxx@???>> is treated as <xxx@???>. If this
# is in the envelope and the message is passed on to another MTA, the excess
# angle brackets are not passed on. If this option is not set, multiple pairs
# of angle brackets cause a syntax error.

strip_excess_angle_brackets = true

#-----------------------------------------------------------------------------
# A trailing dot at the end of a domain in an address is ignored. If this
# is in the envelope and the message is passed on to another MTA, the dot is
# not passed on. If this option is not set, a dot at the end of a domain
# causes a syntax error.

strip_trailing_dot = true

#----------------------------------------------------------------------------
# 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

# rbl configuration

rbl_domains        = "rbl.maps.vix.com/reject : \
               dul.maps.vix.com/reject : \
               dssl.imrss.org/reject   : \
               relays.orbs.org/warn    : \
               mr-out.imrss.org/warn   "
rbl_hosts        = "! 193.237.9.97/31       : \
               ! 193.243.66.2/31       : \
               ! 194.201.99.19/30      : \
                   ! 207.181.101.69/31     : \
               *                       "
rbl_log_headers        = true
rbl_log_rcpt_count    = true
rbl_reject_recipients    = yes
rbl_warn_header        = true


recipients_reject_except = postmaster@???:abuse@???

prohibition_message = "See http://monza.datamgmt.com/badmail.html"

end

######################################################################
#                      TRANPORTS CONFIGURATION                       #
######################################################################
#                       ORDER DOES NOT MATTER                        #
#     Only one appropriate transport is called for each delivery.    #
######################################################################


# This transport is used for local delivery to user mailboxes. By default
# it will be run under the uid and gid of the local user, and requires
# the sticky bit to be set on the /var/mail directory. Some systems use
# the alternative approach of running mail deliveries under a particular
# group instead of using the sticky bit. The commented options below show
# how this can be done.

virtual_localdelivery:
driver = appendfile
file = /monza/clients/${domain}/mail/${local_part}
user = "${extract{2}{:}{${expand:${lookup{$local_part}lsearch{/monza/clients/${domain}/etc/passwd}{$value}}}}}"
group = mail
mode = 0660

auto_transport:
driver = autoreply
from = $local_part@$domain
to = $sender_address
subject = "Reply re: $header_subject:"
file = "${extract{5}{:}{${expand:${lookup{$local_part}lsearch{/monza/clients/${domain}/etc/passwd}{$value}}}}}/.autoreply"
user = exim

# 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.

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.

address_file:
driver = appendfile

# 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
no_from_hack
prefix = ""
suffix = ""

# 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.

remote_smtp:
driver = smtp
command_timeout = 1m
connect_timeout = 10s

end

######################################################################
#                      DIRECTORS CONFIGURATION                       #
#             Specifies how local addresses are handled              #
######################################################################
#                          ORDER DOES MATTER                         #
#   A local address is passed to each in turn until it is accepted.  #
######################################################################


# Local addresses are those with a domain that matches some item in the
# "local_domains" setting above, or those which are passed back from the
# routers because of a "self=local" setting (not used in this configuration).

# Handles .autoreply files

auto_director:
driver = smartuser
transport = auto_transport
require_files = root:${extract{5}{:}{${expand:${lookup{$local_part}lsearch{/monza/clients/${domain}/etc/passwd}{$value}}}}}/.autoreply
condition = ${if eq{$sender_address}{}{no}{yes}}
unseen

# 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.
# 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.

userforward:
driver = forwardfile
file_transport = address_file
pipe_transport = address_pipe
reply_transport = address_reply
check_local_user = false
file = "${extract{5}{:}{${expand:${lookup{$local_part}lsearch{/monza/clients/${domain}/etc/passwd}{$value}}}}}/.forward"
user = root
no_verify
check_ancestor
filter

# This director matches local user mailboxes.

virtual_localuser:
driver = aliasfile
file_transport = address_file
pipe_transport = address_pipe
transport = virtual_localdelivery
domains = lsearch;/usr/exim/local/domains
file = /monza/clients/${domain}/etc/passwd
search_type = lsearch

# This director handles aliasing using a traditional /etc/aliases file.
# 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.

virtual_alias:
driver = aliasfile
file_transport = address_file
pipe_transport = address_pipe
domains = lsearch;/usr/exim/local/domains
file = /monza/clients/${domain}/etc/aliases
search_type = lsearch*
qualify_preserve_domain

end

######################################################################
#                      ROUTERS CONFIGURATION                         #
#            Specifies how remote addresses are handled              #
######################################################################
#                          ORDER DOES MATTER                         #
#  A remote address is passed to each in turn until it is accepted.  #
######################################################################


# Remote addresses are those with a domain that does not match any item
# in the "local_domains" setting above.

# This router routes to remote hosts over SMTP using a DNS lookup with
# default options.

lookuphost:
driver = lookuphost
transport = remote_smtp

# 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 = remote_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


end

######################################################################
#                      REWRITE CONFIGURATION                         #
######################################################################
#
# Remove localhost
#
*@127.0.0.1 $1@???
*@localhost $1@???
*@localhost.localdomain $1@???
#
# Spam re-write
#
*@spam.bgn.co.uk spam@???
*@spam.ciha.com spam@???
*@spam.configteam.com spam@???
*@spam.datamgmt.com spam@???
*@spam.datamgmt.net spam@???
*@spam.datamgmt.org spam@???
*@spam.dungar.com spam@???
*@spam.earthifp.com spam@???
*@spam.net4work.com spam@???
*@spam.net4work.net spam@???
*@spam.net4work.org spam@???
*@spam.oracle-on-linux.com spam@???
*@spam.pendry.com spam@???
*@spam.silicontor.com spam@???
*@spam.splhi.com spam@???
*@spam.venexia.com spam@???
*@spam.xsequent.org spam@???
#
# IMP re-writes
#
^m(?i)([^.]+)\.([^@]+)@mail\.datamgmt\.net$ \
    "$2@${lookup{$1}lsearch{/usr/exim/local/impmap}{$value}fail}" h
#
# Sub-domains
#
*@*.bgn.co.uk $1@???
*@*.ciha.com $1@???
*@*.configteam.com $1@???
*@*.datamgmt.com $1@???
*@fax.datamgmt.net $1@fax_datamgmt.net
*@*.datamgmt.net $1@???
*@fax_datamgmt.net $1@???
*@*.datamgmt.org $1@???
*@*.dungar.com $1@???
*@*.earthifp.com $1@???
*@*.net4work.com $1@???
*@*.net4work.net $1@???
*@*.net4work.org $1@???
*@*.oracle-on-linux.com $1@???
*@*.pendry.com $1@???
*@*.silicontor.com $1@???
*@*.splhi.com $1@???
*@*.venexia.com $1@???
*@*.xsequent.org $1@???
#
# IP Address re-write
#
*@209.102.105.219 $1@???
*@209.102.105.220 $1@???
*@209.102.105.221 $1@???
*@209.102.105.222 $1@???
*@209.102.105.223 $1@???
*@209.102.105.224 $1@???
*@209.102.105.225 $1@???
*@209.102.105.226 $1@???
*@209.102.105.227 $1@???
*@209.102.105.228 $1@???
*@209.102.105.229 $1@???
*@209.102.105.230 $1@???
*@209.102.105.235 $1@???
#
# Postmasters
#
root@??? postmaster@???
bgncouk@??? postmaster@???
cihacom@??? postmaster@???
configte@??? postmaster@???
datamgmt@??? postmaster@???
dungarco@??? postmaster@???
earthifp@??? postmaster@???
net4work@??? postmaster@???
oracleon@??? postmaster@???
pendryco@??? postmaster@???
silicont@??? postmaster@???
splhicom@??? postmaster@???
venexiac@??? postmaster@???
xsequent@??? postmaster@???
#
# Personal Addresses
#
adrianc@??? adrianc@???
amc@??? amc@???
davidw@??? davidw@???
dwalker@??? davidw@???
jsp@??? jsp@???
timw@??? timw@???


# End of Exim configuration file