メールがSPAMフィルター(RBL/PBL)で送れなかったのでPostfixの設定を直した話

Linux

このブログのドメインのメールを自作メールサーバーで運用しているんですが、久々にメールを送ってみようと思ったらメールが送れなくなってました。何かと思ったらspamhausのPBLで弾かれていたようです。そんなわけで、設定変更してみましたよ。

独自ドメインからメールが送れない事件

普段あまり使っていないのですが、このサイトのドメインのメールサーバーからメールが送れなくなってました。

「blocked using zen.spamhaus.org」とか言われているので、どうやらクライアント環境がRBLで弾かれているようです。さらに調べてみると、どうやらRBLではなく、PBLのほうの模様。さらに調べてみると、このPBLに、世界中のいわゆるダイナミックプールはほぼ全て登録されているようです。

試しに、自宅インターネット環境もモバイル環境も試してみましたが、等しく弾かれてしまいました。

Postfixの設定を変更して解決

Postfixの「smtpd_client_restrictions」の設定で、spamhausを使うようになっているので、この制限に、SMTP AUTHを優先する設定を追加してみました。

smtpd_client_restrictions =
     permit_sasl_authenticated
     reject_rbl_client zen.spamhaus.org
     reject_rbl_client all.rbl.jp
     reject_non_fqdn_sender
     reject_unknown_sender_domain

2行目の「permit_sasl_authenticated」を追加して、RBL/PBLで弾かれる前に、SMTP AUTHを優先的に判断するようにしました。これでちゃんと通るようになりました。

と思ったら、Gmailさんに怒られた

これでメール送れるぜーと思ったら、今度はGmail側から怒られました。

550-5.7.1 message does not meet IPv6 sending guidelines regarding PTR records

・・・何言ってるかよくわかりませんが、とにかくIPv6でメール送ったんだけどガイドラインに従ってないじゃん、と言われたようです。どうやら、

  • Postfixはinet_protocolsの設定に従いIPv6/IPv4のアドレスでメールを送信する
  • inet_protocols = allすなわち両方有効な場合、IPv6を優先する
  • IPv6でメールを送信(SMTP)する場合、逆引きが正しく設定されていないといけない(※詳細調べきれてません!)

ということらしく、ちょっとだけIPv6のDNS設定と格闘しようかと思ったんですが、逆引き周りがよく分からなかったので結局「inet_protocols = ipv4」にして解決しました。

ついでにSPFも設定しなおして完了です。良かった。

コメント

タイトルとURLをコピーしました