>From: exim-users-bounces@??? [
mailto:exim-users-bounces@exim.org] On
>Behalf Of Tim Jackson
>Sent: Wednesday, January 11, 2006 5:16 AM
>To: exim-users@???
>Subject: Re: [exim] Exim 4.60 & SpamAssassin 3.1.0 Problems
>
>> I think you need to show us relevant bits of your Exim config (or the
>whole config if it's not too big, with comments
>> stripped if you're posting it to the list.)
Here you go (all comment lines stripped via grep -v '#':
domainlist local_domains = dbm;/usr/local/exim/etc/local-domains.db
domainlist relay_to_domains =
hostlist relay_from_hosts = 127.0.0.1 : \
68.248.203.41 : \
68.248.203.42 : \
68.248.203.43 : \
68.248.203.44 : \
68.248.203.45 : \
68.248.203.46 : \
192.168.1.1 : \
192.168.1.2 : \
192.168.1.3 : \
192.168.1.4 : \
192.168.1.5 : \
192.168.1.7 : \
192.168.1.254 : \
lsearch;/usr/local/exim/popw/lib/popauth
acl_smtp_rcpt = acl_check_rcpt
acl_smtp_data = acl_check_contents
acl_smtp_mime = acl_check_mime
av_scanner = sophie:/var/run/sophie
spamd_address = 127.0.0.1 783
allow_domain_literals = false
never_users = root
host_lookup = *
daemon_smtp_port = 25
helo_accept_junk_hosts = *
message_size_limit = 500M
bounce_return_size_limit = 100K
no_split_spool_directory
remote_max_parallel = 40
delay_warning = 4h:8h:24h
delay_warning_condition = \
${if match {$h_precedence:}\
{(?i)bulk|list|junk} {no} {yes}}
gecos_pattern = "([^,]*)"
gecos_name = $1
system_filter = /usr/local/exim/etc/exim.sysfilter
trusted_users = "root : majordom"
begin acl
acl_check_rcpt:
accept hosts = :
deny local_parts = ^.*[@%!/|] : ^\\.
accept local_parts = postmaster
domains = +local_domains
require verify = sender
accept domains = +local_domains
endpass
message = unknown user
verify = recipient
accept domains = +relay_to_domains
endpass
message = unrouteable address
verify = recipient
accept hosts = +relay_from_hosts
deny message = relay not permitted
acl_check_mime:
warn decode = default
deny set acl_m1 = ${extract{-1}{.}{${lc:$mime_filename}}}
message = Banned extension $acl_m1
condition = ${if match{$acl_m1} \
{\N^(ade|adpx|app|bas|bat|chm|cmd|com|cpl|crt|\
exe|fxp|hlp|hta|inf|ins|isp|js|jse|lnk|\
mda|mdb|mde|mdt|mdw|mdz|msc|msi|msp|mst|\
ops|pcd|pif|prf|prg|reg|scf|scr|sct|shb|shs|\
url|vb|vbe|vbs|wsc|wsf|wsh|xsl)$\N}{1}{0}}
deny condition = ${if match{$mime_filename} \
{\N\{[a-hA-H0-9-]{25,}\}\N}{1}{0}}
message = CLSID banned $mime_filename
deny condition = ${if match{$mime_filename} {\N\s{10,}\N}{1}{0}}
message = too many spaces $mime_filename
deny condition = $mime_is_multipart
condition = ${if eq{$mime_boundary}{}{yes}{no}}
message = Emtpy MIME Boundary
accept
acl_check_contents:
deny message = ($acl_m1) $malware_name
malware = *
condition = ${if eq
{${substr_0_5:$malware_name}}{Error}{1}{0}}
deny message = VIRUS FOUND ($malware_name)
malware = *
warn message = X-Spam-Score: $spam_score ($spam_bar)
spam = nobody:true
warn message = X-Spam-Report: $spam_report
condition = ${if >{$spam_score_int}{0}{1}{0}}
warn message = X-Spam-Flag: YES
condition = ${if >{$spam_score_int}{49}{1}{0}}
warn message = X-Spam-Flag: NO
condition = ${if <{$spam_score_int}{50}{1}{0}}
accept
begin routers
dnslookup:
driver = dnslookup
domains = ! +local_domains
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more
sort_out_case:
driver = redirect
allow_defer
allow_fail
caseful_local_part
data = \
${lookup{${lc:$local_part}}lsearch{/usr/local/exim/etc/usercase.db}{$value@$domain}fail}
retry_use_local_part
virtual_aliases:
driver = redirect
allow_defer
allow_fail
caseful_local_part
data =
${lookup{$local_part@$domain}dbm*@{/usr/local/exim/etc/virtual-aliases.db}}
file_transport = address_file
pipe_transport = address_pipe
retry_use_local_part
system_aliases:
driver = redirect
allow_defer
allow_fail
caseful_local_part
data = ${lookup{$local_part}dbm{/usr/local/exim/etc/aliases.db}}
file_transport = address_file
pipe_transport = address_pipe
retry_use_local_part
majordomo_aliases:
driver = redirect
allow_defer
allow_fail
caseful_local_part
data =
${lookup{$local_part}dbm{/usr/local/exim/etc/majordomo-aliases.db}}
file_transport = address_file
group = majordom
pipe_transport = address_pipe
retry_use_local_part
user = majordom
majordomo_private_aliases:
driver = redirect
allow_defer
allow_fail
caseful_local_part
condition = "${if eq {$received_protocol}{local} \
{${if eq {$sender_ident}{majordom} \
{true}{false}}}{false}}"
data =
${lookup{$local_part}dbm{/usr/local/exim/etc/majordomo-private-aliases.db}}
file_transport = address_file
group = mail
pipe_transport = address_pipe
retry_use_local_part
user = majordom
userforward:
driver = redirect
caseful_local_part
check_ancestor
check_local_user
no_expn
file = $home/.forward
file_transport = address_file
pipe_transport = address_pipe
reply_transport = address_reply
no_verify
procmail:
driver = accept
caseful_local_part
check_local_user
require_files = /usr/bin/procmail
transport = procmail
localuser:
driver = accept
caseful_local_part
check_local_user
transport = local_delivery
begin transports
remote_smtp:
driver = smtp
procmail:
driver = pipe
command = "/usr/bin/procmail -d ${local_part}"
local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
file = /var/spool/mail/${local_part}
group = mail
mode = 0660
return_path_add
address_pipe:
driver = pipe
return_output
address_file:
driver = appendfile
delivery_date_add
envelope_to_add
return_path_add
address_reply:
driver = autoreply
begin retry
* * F,2h,15m; G,16h,1h,1.5; F,4d,8h
begin rewrite
*@eagle.netwrx1.com
${lookup{$1}dbm{/usr/local/exim/etc/reverse-virtual-aliases.db}\
{$value}fail}
*@eagle.netwrx1.com $1@???
begin authenticators
>
>> OK, so I'm guessing you're accepting everything, passing the messages to
>SpamAssassin via a router and then reinjecting
No we're using ACLs I believe.
>> into Exim? Do you really end up with the messages in BSMTP format?
Unsure on that one....that is what one of the error messages is.
>> Is there a strong reason why you're doing this as opposed to doing the
>scanning at SMTP time using Exim's built-in
>> Content Scanning Extension?
See above we have an ACL for spanm and virus check
>> 3. as a temporary measure, using "temp_errors = *" on your transport that
>pipes the mail to spamassassin might help to
>> stop the incoming messages actually bouncing and make them stick on your
>queue instead.
Will try that!
===[George R. Kasica]=== +1 262 677 0766
President +1 206 374 6482 FAX
Netwrx Consulting Inc. Jackson, WI USA
http://www.netwrx1.com
georgek@???
ICQ #12862186