L
letox
Grünschnabel
Hallo,
Auf meinem Server läuft ein aktuelles Debian Sarge mit einem 2.6.14 Kernel. Mein Exim 4.5 (aktuelles Paket in Sarge) läuft prima bis auf eine Sache. Ich möchte über die .forward Datei im User Homeverzeichnis Mails die von SA als Spam erkannt wurden, in einen anderen Unterordner im Maildir speichern lassen.
Der von Exim (laut log) benutzte Router userforward ist in der exim config wie folgt konfiguriert:
userforward:
debug_print = "R: userforward for $local_part@$domain"
driver = redirect
domains = +local_domains
check_local_user
file = $home/.forward
no_verify
no_expn
check_ancestor
allow_filter
modemask = 002
directory_transport = address_directory
file_transport = address_file
pipe_transport = address_pipe
reply_transport = address_reply
skip_syntax_errors
syntax_errors_to = real-$local_part@$domain
syntax_errors_text = ...
Die .forward Datei sieht so aus:
# Exim filter
logfile $home/filter.log
if $h_from: contains "Mail Delivery System"
then save $home/Maildir/.Mailerror/
elif $h_X-Spam-Found: contains "Yes"
then
save $home/Maildir/.Spam/
logwrite "$message_id is spam"
else save $home/Maildir/.Inbox/
endif
logwrite "$tod_log $message_id processed"
Wie man sieht, habe ich schon Logmessages eingebaut um die .forward Datei zu überprüfen. Die entsprechenden Zeilen erscheinen auch in der filter.log Datei, die .forward Datei wird also von Exim gelesen und bearbeitet. Auch die Nachricht "xxx is spam" erscheint, Exim verzweigt also korrekt in den if-Klauseln.
Allerdings werden alle Mails direkt in das Maildir/ Verzeichnis gespeichert und nicht in die Unterverzeichnisse. Entsprechende Unterverzeichnisse (Maildir/.Spam/ etc) sind im Maildir angelegt, owner ist der user und mod ist 0600. Die Unterverzeichnisse werden von courier erkannt.
Eine Fehlermeldung bekomme ich von Exim nicht. Ich bin jetzt ratlos, woran das noch liegen könnte, dass Exim die Unterverzeichnisse nicht nutzt. Kann mir jemand helfen?
Vielen Dank im Voraus,
Hendrik
Auf meinem Server läuft ein aktuelles Debian Sarge mit einem 2.6.14 Kernel. Mein Exim 4.5 (aktuelles Paket in Sarge) läuft prima bis auf eine Sache. Ich möchte über die .forward Datei im User Homeverzeichnis Mails die von SA als Spam erkannt wurden, in einen anderen Unterordner im Maildir speichern lassen.
Der von Exim (laut log) benutzte Router userforward ist in der exim config wie folgt konfiguriert:
userforward:
debug_print = "R: userforward for $local_part@$domain"
driver = redirect
domains = +local_domains
check_local_user
file = $home/.forward
no_verify
no_expn
check_ancestor
allow_filter
modemask = 002
directory_transport = address_directory
file_transport = address_file
pipe_transport = address_pipe
reply_transport = address_reply
skip_syntax_errors
syntax_errors_to = real-$local_part@$domain
syntax_errors_text = ...
Die .forward Datei sieht so aus:
# Exim filter
logfile $home/filter.log
if $h_from: contains "Mail Delivery System"
then save $home/Maildir/.Mailerror/
elif $h_X-Spam-Found: contains "Yes"
then
save $home/Maildir/.Spam/
logwrite "$message_id is spam"
else save $home/Maildir/.Inbox/
endif
logwrite "$tod_log $message_id processed"
Wie man sieht, habe ich schon Logmessages eingebaut um die .forward Datei zu überprüfen. Die entsprechenden Zeilen erscheinen auch in der filter.log Datei, die .forward Datei wird also von Exim gelesen und bearbeitet. Auch die Nachricht "xxx is spam" erscheint, Exim verzweigt also korrekt in den if-Klauseln.
Allerdings werden alle Mails direkt in das Maildir/ Verzeichnis gespeichert und nicht in die Unterverzeichnisse. Entsprechende Unterverzeichnisse (Maildir/.Spam/ etc) sind im Maildir angelegt, owner ist der user und mod ist 0600. Die Unterverzeichnisse werden von courier erkannt.
Eine Fehlermeldung bekomme ich von Exim nicht. Ich bin jetzt ratlos, woran das noch liegen könnte, dass Exim die Unterverzeichnisse nicht nutzt. Kann mir jemand helfen?
Vielen Dank im Voraus,
Hendrik