Gmail宛てのエラー NotAuthorizedError
@gmail.com宛てにメールを送る際に、「The IP you’re using to send email is not authorized」
というエラーが返ってくることがあります。今回は、突然やってきました(たいがい、突然なのですが・・・)。
<○○○@gmail.com>: host gmail-smtp-in.XXX.google.com[XXX.XXX.XXX.XXX] said: 550-5.7.1 [XXX.XXX.XXX.XXX] The IP you're using to send mail is not authorized to 550-5.7.1 send email directly to our servers. Please use the SMTP relay at your 550-5.7.1 service provider instead. Learn more at 550 5.7.1 https://support.google.com/mail/?p=NotAuthorizedError xxxxxx.151 - gsmtp (in reply to end of DATA command)
というエラーで、戻ってきます。
これは、送信しようとしているメールサーバーから、何らかの原因で送信できないということです。
Gmail、エラーの原因
原因は、該当IPもしくは、そのIP付近のサーバーからgmail宛てに大量の迷惑メールが送られて、IPアドレスが、ブラックリストに登録されてしまった。ということが原因であることが多いです(予想、例)。
から、該当サーバーのIPアドレスを入れてチェックします。
↑見事、ブラックリストに入っていました(汗)。
ブラックリストからの排除
↑チェックしたページのしたのほうに、「removal Procedure」というところがあります。ここで、「Remove an IP from PBL」をクリックします。
↑「PBL Self-Service IP Removal」というところに飛びます。
↑画面下のほうで、チェックを入れて、「Remove IP Address … 」を押します。
↑「IP Address to remove」のところに、該当IPアドレスを入れて、
「Your Email Address」には、きちんと受信できるメールアドレスを入れます。
そして、そのほか、きちんと選んで「Submit」を押します。
↑「Verify Your Removal Request」という画面になります。
別途メールが来ているはずです。
↑このようなメールで、赤枠部分に、5桁の数字が書かれています。
この5桁の数字を、「Verify Your Removal Request」の画面に入れます。
↑「Removal Control: Request Accepted」という画面になります。
問題がなければ、該当IPは、30分ほどで、削除されます。
ただし、/21という広大なブロックのすべてのIPが削除されたわけではないです。
Gmailのエラーの解消は・・・
Gmailのエラーは、すぐに解消されるわけではないです。
待ってはいられないので、ブラックリストに登録されている、/21以外のサーバーから、gmail宛てに送信するようにします。
ブラックリストに掲載されてしまったメールサーバー
↓
ブラックリストに掲載されていないメールサーバー
↓
gmailに送信
というふうに、リレー(転送)をしてみたいと思います。
リレー方法その1。差出人(From)で、分ける
指定されたドメインからのメールは、すべて、違うメールーサーバー経由で、送信します。
この場合、@gmail.com以外の宛先も、リレーされます。
# vi /etc/postfix/main.cf sender_dependent_default_transport_maps = hash:/etc/postfix/sender_transport
↑と、加えます。「sender_transport」のファイル名は、この通りでなくてもいいです。わかりやすいファイル名にしましょう。
# vi /etc/postfix/sender_transport @(ドメイン) smtp:(リレー先のメールサーバー):25
というように記述をします。
もちろん、リレー先のメールサーバーでは、該当サーバーからのリレーを許可します。
# postmap /etc/postfix/sender_transport
を実行して、
# systemctl restart postfix
とすれば、メールが転送(リレー)されます。
リレー方法その2。宛先で分ける
特定の宛先、今回は、「@gmail.com」だったら、「転送」というルールを設定します。
ブラックリストに掲載していないサーバーから、「@gmail.com」を送信したいので、この方法が、的確かと思われます。
# vi /etc/postfix/main.cf transport_maps = hash:/etc/postfix/to_transport
と設定をします。「to_transport」のファイル名は、違うファイル名でも大丈夫です。
# vi /etc/postfix/to_transport gmail.com smtp:(リレー先のメールサーバ-)
と、記述をします。
@gmail.comのメールは、指定されたメールサーバーにリレーされます(転送されます)。
# postmap /etc/postfix/to_transport
を実行して、
# systemctl restart postfix
とすれば、メールが転送(リレー)されます。
# vi /etc/postfix/to_transport (ローカルドメイン1) : (ローカルドメイン2) : gmail.com smtp:(リレー先のメールサーバ-1) * smtp:(リレー先のメールサーバ-2)
↑ 「(ローカルドメイン1) :」は、ローカルに落とすドメイン。複数指定する場合は、複数行を指定する。「gmail.com」は、「(リレー先のメールサーバ-1)」へ。そのほかは、「(リレー先のメールサーバ-2)」へという指定。(2020/10/14追記)
転送先の設定。転送先が、Qmailの場合
Qmailの場合、周辺ソフトにより左右されますが、私のところでは、
Qmail + VPOPMAIL + tcpserver で運用しており、
この場合、
リレー許可するファイルは、tcpserverで設定をしています。
#!/bin/sh PATH=/var/qmail/bin:/usr/local/bin:/bin:/usr/bin exec /usr/local/bin/tcpserver -v -u 556 -g 503 -R -l (ホストFQDN) -x /home/vpopmail/etc/tcp.smtp.cdb 0 smtp recordio /var/qmail/bin/qmail-smtpd 2>&1
↑ここで、指定している
/home/vpopmail/etc/tcp.smtp.cdb
↑この元のファイルは、
/home/vpopmail/etc/tcp.smtp
であり
127.:allow,RELAYCLIENT="" XXX.XXX.XXX.XXX:allow,RELAYCLIENT=""
と指定しています。上記の「XXX.XXX.XXX.XXX」が転送元のIPアドレスになります。
.cdbフィアルは、
#!/bin/sh /usr/local/bin/tcprules /home/vpopmail/etc/tcp.smtp.cdb /home/vpopmail/etc/tcp.smtp.tmp < /home/vpopmail/etc/tcp.smtp
のコマンドで、作成をします。
/home/vpopmail/etc/tcp.smtp ↓ /home/vpopmail/etc/tcp.smtp.cdb ↓ exec /usr/local/bin/tcpserver -v -u 556 -g 503 -R -l (ホストFQDN) -x /home/vpopmail/etc/tcp.smtp.cdb 0 smtp recordio /var/qmail/bin/qmail-smtpd 2>&1
と、設定をしていきます。
これで、
XXX.XXX.XXX.XXX
から、メールの転送がOKとなります。
転送先の設定。転送先が、Postfixの場合
Postfixは、設定が楽です。
# vi /etc/postfix/main.cf mynetworks = 127.0.0.0/8,XXX.XXX.XXX.XXX
と設定をします。「XXX.XXX.XXX.XXX」が、転送元のIPアドレスです。
これで、Postfixを、reload、もしくは、再起動すれば、受信ができるようになるでしょう。
どうしても、「NotAuthorizedError」というエラーが解消されない(2020/10/18追記)
ブラックリストからの排除
ConoHa VPS からGmailにメールが届かない。ブロックされる。解決!
などを行って、しばらく(数週間)をおいても、一向に、「NotAuthorizedError」のエラーが解消されない!
という場合、「グローバルIPを変更する」という手段が手っ取り早いと思います。
VPSや、クラウドで、グローバルIPが決定された後、gmail宛てに送ってみる。
届く場合、そのグローバルIPは、離さないようにしたほうがいいでしょう。
ipv4は、通らないが、ipv6は、通ることが多いです・・・
Gmail対策 結論・・・
Gmailは、やっかいです。知らない間に、ブロックされています。
そして、解消には、数ヶ月かかる場合もあります。
違う業者さん(違うIPアドレス帯)に、メールサーバーを用意して、いつでも、転送できるように、セーフティーネットを張っておくのがベターな方法かと思います。
参考記事
ConoHa VPS からGmailにメールが届かない。ブロックされる。