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.