[Postfixbuch-users] Problem mit mailbox_command_maps

Kai Fürstenberg postfix at fuerstenberg.ws
Mo Okt 2 08:08:25 CEST 2006


Andreas Winkelmann schrieb:
> Am Sunday 01 October 2006 22:25 schrieb Thomas Kowtsch:
>
>   
>> ich habe hier auf einer Suse 9.1 einen Postfix am rennen, der sämtliche
>> Nutzer und Aliases aus einer MySQL-DB zieht und vor der Zustellung erstmal
>> durch einen Virenscanner und SpamAssassin jagt und schließlich per
>> cyrus-imap den Nutzern zugänglich macht.
>>
>> Da ich auf meinem Account relativ viele automatische Filterregeln habe
>> (dank derer SquirrelMail doch recht langsam ist...) wollte ich die
>> Grundregeln eigentlich gleich bei der Zustellung vornehmen lassen.
>> Dabei stehe ich vor zwei Problemen:
>>
>> 1. Für eine "runde" Lösung wäre mir natürlich ein generischer Ansatz per
>> Datenbank am liebsten. Also Maildrop genommen, mit mysql-Support
>> übersetzt, eine mysql-config-Datei hingepackt, auf der Kommandozeile
>> getestet - "Invalid user specified.". OK, lt. MySQL-Log wird nicht mal
>> versucht, auf die Datenbank zuzugreifen. Nun gut, für Notfälle gehts
>> erstmal auch ohne. Deshalb zu 2.
>>     
>
> Irgendwie verstehe ich den Zusammenhang zwischen Maildrop und Cyrus-Imap 
> nicht.
>
> Willst Du nun Cyrus verwenden, oder nicht?
>
> Bei Cyrus verwendet man Sieve zum Filtern.
>   
Zudem wäre mir auch nicht bekannt, dann man zum Abliefern an Cyrus-Imap 
etwas anderes als Cyrdeliver verwenden kann. Cyrus arbeitet mit einer 
internen Datenbank (was da drin steht keine Ahnung, aber ich vermute mal 
einfach, weche Mail gelesen ist oder nicht, oder so was). Und diese 
Datenbank muss bei Einlieferung ja auch aktualisiert werden.

Allerdings meine ich, dass Maildrop ähnlich wie Procmail arbeitet (auch 
mit einigen Filterregeln) und cyrdeliver kann man ja auch von Procmail 
aus initiieren.
Kann man Cyrdeliver auch von Maildrop aus starten?

>> 2. Da ich ja nicht alle Accounts bearbeiten will habe ich in der main.cf
>> einen Eintrag
>>   mailbox_command_maps = hash:/etc/postfic/mailbox_commands
>> eingefügt.
>> In dieser Datei findet sich der Eintrag
>>   maildrop at thomas-web.de     /usr/bin/maildrop /etc/maildroprc
>>
>> Also postmap laufen lassen, Postfix alles neu laden lassen, Testmail
>> rausgeworfen - nichts.
>>
>> Die Datei mit den Regeln für maildrop sieht so aus:
>> ###
>>     exception {
>>         to "/var/spool/maildirs/maildrop_at_thomas-web.de/.test/"
>>     }
>> ###
>>
>> Wenn ich von der Kommandozeile einen Test loslasse funktioniert alles
>> bestens, die Datei wird in das .test-Verzeichnis geschubst.
>>
>> Und jetzt stehe ich da und grübel, warum das so nicht funktioniert.
>> Irgendwas hab ich garantiert übersehen, logisch - aber was?
>>     
Schau doch mal in die Log-Dateien, ob sich da nicht aufschlussreiche 
Einträge drin finden (Mail, Maildrop, Cyrus, Mysql).
>> Danke für Eure Hilfe,
>>
>> Thomas
>>
>> postconf -n:
>> alias_maps = hash:/etc/aliases
>> broken_sasl_auth_clients = yes
>> command_directory = /usr/sbin
>> config_directory = /etc/postfix
>> content_filter = smtp-amavis:[localhost]:10024
>> daemon_directory = /usr/lib/postfix
>> debug_peer_level = 2
>> home_mailbox = maildir/
>> html_directory = /usr/share/doc/packages/postfix/html
>> inet_interfaces = all
>> mail_owner = postfix
>> mailbox_command_maps = hash:/etc/postfix/mailbox_commands
>> mailbox_size_limit = 5120000000
>> mailq_path = /usr/bin/mailq
>> manpage_directory = /usr/share/man
>> message_size_limit = 51200000
>> mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,
>> mail.$mydomain, www.$mydomain, ftp.$mydomain
>> mydomain = <--->.serverkompetenz.net
>> myhostname = <--->.serverkompetenz.net
>> mynetworks = 127.0.0.1, <myserverip - can be find by ping'ing me>
>> myorigin = $mydomain
>> newaliases_path = /usr/bin/newaliases
>> queue_directory = /var/spool/postfix
>> readme_directory = /usr/share/doc/packages/postfix/README_FILES
>> relay_domains = $mydestination
>> sample_directory = /usr/share/doc/packages/postfix/samples
>> sendmail_path = /usr/sbin/sendmail
>> setgid_group = maildrop
>> smtpd_banner = $myhostname ESMTP
>> smtpd_recipient_restrictions =
>> permit_mynetworks,permit_sasl_authenticated,permit_mx_backup,reject_unauth_
>> destination smtpd_sasl_application_name = smtpd
>> smtpd_sasl_auth_enable = yes
>> smtpd_sasl_local_domain =
>> smtpd_sasl_security_options = noanonymous
>> smtpd_tls_CAfile = /etc/postfix/CAcert.pem
>> smtpd_tls_auth_only = no
>> smtpd_tls_cert_file = /etc/postfix/cert.pem
>> smtpd_tls_key_file = /etc/postfix/key.pem
>> smtpd_use_tls = yes
>> unknown_local_recipient_reject_code = 550
>> virtual_alias_maps = mysql:/etc/postfix/virtual.mysql
>> virtual_gid_maps = mysql:/etc/postfix/ids.mysql
>> virtual_mailbox_base = /var/spool/maildirs
>> virtual_mailbox_domains = mysql:/etc/postfix/domains.mysql
>> virtual_mailbox_limit = 5120000000
>> virtual_mailbox_maps = mysql:/etc/postfix/mailbox.mysql
>> virtual_minimum_uid = 5000
>> virtual_uid_maps = mysql:/etc/postfix/ids.mysql
>>     
-- 

Kai




Mehr Informationen über die Mailingliste Postfixbuch-users