If is somebody interested in use of pair spamc/spamd (part of SpamAssassin installation) so your user settings are taken from Mysql table and users are able to adjust them(and per-user whitelist records) through module in Horde/IMP framework (demo http://nantucketkiteboarding.com/webmail L:demo P:demo). Make these changes in /etc/exim.conf
change:
local_delivery:
driver = appendfile
file = &${extract{5}{:}{${lookup{$local_part}lsearch{/etc/passwd}{$value}}}}/mail/inbox&
delivery_date_add
envelope_to_add
return_path_add
user = $local_part
group = mail
mode = 0660
local_sa_delivery:
driver = pipe
environment = &MAIL=${extract{5}{:}{${lookup{$local_part}lsearch{/etc/passwd}{$value}}}}/mail/inbox&
delivery_date_add
envelope_to_add
return_path_add
user = $local_part
group = mail
command = &/usr/bin/spamassassin-cpanel -w $sender_address&
to:
local_delivery:
driver = appendfile
file = &${extract{5}{:}{${lookup{$local_part}lsearch{/etc/passwd}{$value}}}}/mail/inbox&
delivery_date_add
envelope_to_add
return_path_add
user = $local_part
group = mail
mode = 0660
local_sa_delivery:
driver = appendfile
file = &${extract{5}{:}{${lookup{$local_part}lsearch{/etc/passwd}{$value}}}}/mail/inbox&
delivery_date_add
envelope_to_add
return_path_add
user = $local_part
group = mail
transport_filter = /usr/bin/spamc
mode = 0660
and this change:
virtual_sa_userdelivery:
driver = pipe
environment = &MAIL=${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$val
ue}}}}/mail/${domain}/${local_part}/inbox&
delivery_date_add
envelope_to_add
return_path_add
user = &${lookup{$domain}lsearch* {/etc/userdomains}{$value}}&
group = mail
command = &/usr/bin/spamassassin-cpanel -w $sender_address&
virtual_userdelivery:
driver = appendfile
file = &${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$value}}}}/mail/
${domain}/${local_part}/inbox&
quota = &${if exists{${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$va
lue}}}}/etc/${domain}/quota} {${lookup{$local_part}lsearch*{${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomai
ns}{$value}}}lsearch{/etc/passwd}{$value}}}}/etc/${domain}/quota}{$value}}} {}}&
delivery_date_add
envelope_to_add
return_path_add
user = &${lookup{$domain}lsearch* {/etc/userdomains}{$value}}&
group = mail
mode = 0660
to :
virtual_sa_userdelivery:
driver = appendfile
file = &${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$value}}}}/mail/
${domain}/${local_part}/inbox&
quota = &${if exists{${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$va
lue}}}}/etc/${domain}/quota} {${lookup{$local_part}lsearch*{${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomai
ns}{$value}}}lsearch{/etc/passwd}{$value}}}}/etc/${domain}/quota}{$value}}} {}}&
delivery_date_add
envelope_to_add
return_path_add
user = &${lookup{$domain}lsearch* {/etc/userdomains}{$value}}&
transport_filter = &/usr/bin/spamc -u ${local_part}@${domain}&
group = mail
mode = 0660
virtual_userdelivery:
driver = appendfile
file = &${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$value}}}}/mail/
${domain}/${local_part}/inbox&
quota = &${if exists{${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$va
lue}}}}/etc/${domain}/quota} {${lookup{$local_part}lsearch*{${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomai
ns}{$value}}}lsearch{/etc/passwd}{$value}}}}/etc/${domain}/quota}{$value}}} {}}&
delivery_date_add
envelope_to_add
return_path_add
user = &${lookup{$domain}lsearch* {/etc/userdomains}{$value}}&
group = mail
mode = 0660
----end
And I also invite you to see how new Horde/IMP framework (including SAM-modul for setting of Spamassassin parameters and per-user whitelists) look on CPanel machine. You have to see it and feel it
. See all setting - like automatic expanding addresses in To: field from your addressbook, for exapmle:
http://nantucketkiteboarding.com/webmail
Login: demo
pass: demo
email: [email protected]
change:
local_delivery:
driver = appendfile
file = &${extract{5}{:}{${lookup{$local_part}lsearch{/etc/passwd}{$value}}}}/mail/inbox&
delivery_date_add
envelope_to_add
return_path_add
user = $local_part
group = mail
mode = 0660
local_sa_delivery:
driver = pipe
environment = &MAIL=${extract{5}{:}{${lookup{$local_part}lsearch{/etc/passwd}{$value}}}}/mail/inbox&
delivery_date_add
envelope_to_add
return_path_add
user = $local_part
group = mail
command = &/usr/bin/spamassassin-cpanel -w $sender_address&
to:
local_delivery:
driver = appendfile
file = &${extract{5}{:}{${lookup{$local_part}lsearch{/etc/passwd}{$value}}}}/mail/inbox&
delivery_date_add
envelope_to_add
return_path_add
user = $local_part
group = mail
mode = 0660
local_sa_delivery:
driver = appendfile
file = &${extract{5}{:}{${lookup{$local_part}lsearch{/etc/passwd}{$value}}}}/mail/inbox&
delivery_date_add
envelope_to_add
return_path_add
user = $local_part
group = mail
transport_filter = /usr/bin/spamc
mode = 0660
and this change:
virtual_sa_userdelivery:
driver = pipe
environment = &MAIL=${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$val
ue}}}}/mail/${domain}/${local_part}/inbox&
delivery_date_add
envelope_to_add
return_path_add
user = &${lookup{$domain}lsearch* {/etc/userdomains}{$value}}&
group = mail
command = &/usr/bin/spamassassin-cpanel -w $sender_address&
virtual_userdelivery:
driver = appendfile
file = &${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$value}}}}/mail/
${domain}/${local_part}/inbox&
quota = &${if exists{${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$va
lue}}}}/etc/${domain}/quota} {${lookup{$local_part}lsearch*{${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomai
ns}{$value}}}lsearch{/etc/passwd}{$value}}}}/etc/${domain}/quota}{$value}}} {}}&
delivery_date_add
envelope_to_add
return_path_add
user = &${lookup{$domain}lsearch* {/etc/userdomains}{$value}}&
group = mail
mode = 0660
to :
virtual_sa_userdelivery:
driver = appendfile
file = &${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$value}}}}/mail/
${domain}/${local_part}/inbox&
quota = &${if exists{${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$va
lue}}}}/etc/${domain}/quota} {${lookup{$local_part}lsearch*{${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomai
ns}{$value}}}lsearch{/etc/passwd}{$value}}}}/etc/${domain}/quota}{$value}}} {}}&
delivery_date_add
envelope_to_add
return_path_add
user = &${lookup{$domain}lsearch* {/etc/userdomains}{$value}}&
transport_filter = &/usr/bin/spamc -u ${local_part}@${domain}&
group = mail
mode = 0660
virtual_userdelivery:
driver = appendfile
file = &${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$value}}}}/mail/
${domain}/${local_part}/inbox&
quota = &${if exists{${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$va
lue}}}}/etc/${domain}/quota} {${lookup{$local_part}lsearch*{${extract{5}{:}{${lookup{${lookup{$domain}lsearch*{/etc/userdomai
ns}{$value}}}lsearch{/etc/passwd}{$value}}}}/etc/${domain}/quota}{$value}}} {}}&
delivery_date_add
envelope_to_add
return_path_add
user = &${lookup{$domain}lsearch* {/etc/userdomains}{$value}}&
group = mail
mode = 0660
----end
And I also invite you to see how new Horde/IMP framework (including SAM-modul for setting of Spamassassin parameters and per-user whitelists) look on CPanel machine. You have to see it and feel it
http://nantucketkiteboarding.com/webmail
Login: demo
pass: demo
email: [email protected]