このブログのドメインのメールを自作メールサーバーで運用しているんですが、久々にメールを送ってみようと思ったらメールが送れなくなってました。何かと思ったら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も設定しなおして完了です。良かった。
コメント