Re: [exim] LF: simple localhost relay only config

Top Page
Delete this message
Reply to this message
Author: Eli Sand
Date:  
To: exim-users
Subject: Re: [exim] LF: simple localhost relay only config
Well, for anyone who was following this thread, I have come up with a very
simplistic Exim config setup for an outgoing email only server (typical of web
servers) that works well for me. Without much more blabbering, here it is:


mua_wrapper                    = yes


callout_negative_expire        = 15m
callout_positive_expire        = 15m
callout_domain_negative_expire = 3h
callout_domain_positive_expire = 1d


bounce_return_body             = no
bounce_return_message          = yes
bounce_return_size_limit       = 10K


header_maxsize                 = 1M
header_line_maxsize            = 0
received_headers_max           = 1
message_size_limit             = 20M
message_body_visible           = 1K
message_id_header_domain       = $smtp_active_hostname


never_users                    = root
local_from_check               = no
local_sender_retain            = yes
smtp_return_error_details      = no


message_logs                   = no
spool_directory                = /var/spool/mail/exim
check_spool_space              = 100M
check_spool_inodes             = 100


log_selector                   = +incoming_interface +smtp_connection 
+smtp_incomplete_transaction +tls_certificate_verified +all_parents 
+received_sender +received_recipients +delivery_size +sender_on_delivery 
+queue_time +queue_time_overall +deliver_time -skip_delivery -rejected_header
log_timezone                   = no
log_file_path                  = syslog
write_rejectlog                = yes
syslog_facility                = mail
syslog_timestamp               = no
syslog_duplication             = no
syslog_processname             = exim



begin routers
remote_address:
    driver                     = dnslookup
    ignore_target_hosts        = <; @[] ; 127.0.0.0/8
    cannot_route_message       = Insufficient DNS information found for $domain
    transport                  = remote_delivery
    self                       = fail
    more                       = no


begin transports
remote_delivery:
    driver                     = smtp


begin rewrite
*@$primary_hostname    "${if def:h_From: {$rheader_From:}fail}" F



I'm not certain if all the global settings are still actually required
(callout and bounce settings are the only ones really), though I've left them
in there just in case they do actually make a difference (if any of you out
there know if they're not required when using mua_wrapper, please let me
know).

Tests turned out well; mixed with the rewrite line at the bottom, it allows
for any sender to be set (a big requirement for web servers usually), however
it does maintain in the logs/headers who the real sender was on the server
should you have any spam issues down the road. It's a very nice set up
requiring no daemon process at all; Exim runs only when you try to send email,
and the exit status of the process tells you if it worked or not (very nice
for shell scripts that send out important emails).

Eli.