PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Amavis Problem mit read_hash und emailadressen mit einen Punkt im localpart



guido.kuehler
31.12.12, 13:29
Anforderungen bzw. Problemstellung:

Es müssen einzelne Email-Adressen in blacklists und whitelists geführt werden da in einigen Fällen nicht die gesamte Domain eingetragen werden darf! In den Absender Email-Adressen kommt jedoch teilweise ein Punkt zur Trennung von Vor- und Nachname (firstname.lastname@mydomain.com) vor. Da die Absender und deren verwendete Emailadressen nicht beeinflusst werden können ist es hier dann an uns an der Empfängerseite dies zu berücksichtigen!

Betreffender Part in der amavis.conf

$per_recip_blacklist_sender_lookup_tables = {
'.it-power.biz' => read_hash('/etc/amavis/conf.d/blacklist_itp')
};


Inhalt der /etc/amavis/conf.d/blacklist_itp:

"guido.kuehler@steinel.at" => 1,


Ergebnisse:

Der Match für den Recipient-Part it-power.biz ist bei jeden Test positiv wenn die Nachricht an diese Domain gerichtet ist, dies funktioniert somit.
Haben wir die Emailadresse wie oben angegeben, haben wir kein Match verwenden wir in der blacklist_itp jedoch nachfolgendes haben wir ein Match betreffend der Sender-Domain.

"steinel.at" => 1,

Ist im loacalpart bzw. vor dem [AT] kein Punkt enthalten erhalten wir ein Match und es funktioniert. Problem dürfte somit der . im localpart der Emailadresse sein.


Anführungszeichen:

Lassen wir die Anführungszeichen wie folgt weg erhalten wir nachfolgende Fehlermeldung. Zudem ist es egal ob wir ein " oder ein ' verwenden.

guido.kuehler@steinel.at => 1,

Meldung:

Starting amavisd: Array found where operator expected at /etc/amavis/conf.d/blacklist_itp line 2, at end of line
Error in config file "/etc/amavis/conf.d/blacklist_itp": syntax error at /etc/amavis/conf.d/blacklist_itp line 2, near "kuehler@steinel"
(failed).


Amavis-Restart:

Wir wissen das bei dieser Variante bei einer Änderungen ein Restart von Amavis erfolgen muss.

SQL-Lookups:

SQL-Lookups können in unseren Fall nicht für eine Lösung eingesetzt werden.


Ich hoffe das uns hier jemand einen Tip geben kann da wir mittlerweile alle im Google auffindbaren Links studiert jedoch keine Lösung hierzu gefunden haben!

Best Regards
Guido