[Linux]Postfix経由のメール送信で 554 5.7.1 Relay access denied
環境)
・Postfix + dovecot
・OP25対策のためmaster.cfを下記に編集
submission inet n - n - - smtpd
# -o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
※立ち上がりはTLSを使わない為、コメントアウト
コメントアウトしないと下記のエラーが表示される
送信テストでwarningと接続エラー
warning: No server certs available. TLS won’t be enabled
アカウント設定をとりあえずPLAINにすると下記のエラーが表示された
Must issue a STARTTLS command first
・下記サーバーを起動
postfix / dovecot / saslauthd
・main.cfを下記に編集
mynetworks_style = host
mynetworks = 127.0.0.0/8
relay_domains = $mydestination
・クライアントはthunderbirdを使用して下記の設定
現象)
クライアントは認識されたが、この状態で外部ドメインにメール送信しようとすると Relay access denied が表示された。
対策)
ココを参考に解決。
postfix ではデフォルトではsmtpd_recipient_restrictionがコメントアウトされている。そのため、設定が
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination
となってしまっており、IPアドレスが $mynetworks にマッチするクライアントから以外は受け取らない(リレーしない)ことになっている。
この問題を解消するには、認証を通過したものはリレーを許可する設定をしてあげる必要があるため、下記のように編集した。
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination