In der Postfix-Konfigurationszeile (main.cf)
smtp_sasl_mechanism_filter = !ntlm, static:rest
was bedeutet „static:rest“? Obwohl static:
in der Postfix-Dokumentation erklärt wird, dass der String so ausgegeben wird, rest
wie er ist, kann ich nur annehmen, dass rest
damit „alle nicht explizit ausgeschlossenen Mechanismen“ gemeint sind. Allerdings gibt es dann auch „static:all“ – ist das ein Alias für „static:rest“?
Und: Was wäre der Sinn eines Nackten !ntlm
ohne static:rest
?
Antwort1
Die Liste muss ein Ergebnis liefern füralleakzeptable Mechanismen.
Wenn Sie Einträge ausschließen möchten, ohne explizit aufzuzählen, was übrig bleibt, benötigen Sie etwas in dieser Liste, das auf alle verbleibenden Einträge zutrifft. Dies ist nicht möglich, indem Sie einfach Mechanismen mit dem Ausrufezeichen entfernen. Die Liste bliebe leer undkeinerder Mechanismen könnten verwendet werden. Hier static:
kommt der Eintrag ins Spiel. Er stimmt immer überein.
Seine Rückkehr, auch bekannt alsdie rechte Seitewird völlig ignoriert. Ja, static:all
hätte das gleicheWirkungdient die Ausführlichkeit nur der Verdeutlichung derAbsicht. Es sind nicht alle Mechanismen, sondern alle Mechanismen, die nicht bereits durch einen vorherigen Eintrag in der Filterspezifikation abgeglichen wurden.
Wenn Sie nach besseren Beispielen suchen, wie das funktioniert, schauen Sie nach, wie das Ausrufezeichen in mynetworks
funktioniert. Aber nicht smtp_tls_protocols
, das ist anders, das ist für seine im Wesentlichen numerischen Nachschlagevorgänge angepasst.
Ich hoffe wirklich, dass diese verwirrende Interaktion zwischen Nachschlagevorgängen und Ausschlüssen irgendwann behoben wird, indem ein echtes Boolean-Verhalten für relevante Nachschlagezuordnungen eingeführt wird, aber ich kenne keine Möglichkeit, dies auf sichere und abwärtskompatible Weise zu tun.