外部の電子メールを送信するためにリレーホストにSASLを設定しようとしています。私はたくさんの地獄を読んで、私がすることになっているすべてをしました。ただし、プロバイダーは私が電子メールを中継することを受け入れません(私たちは彼らのネットワーク上にありませんが、SASLで認証する限りこれは問題ないと彼らは言います):
ホストmailhost.zen.co.uk [212.23.3.98]によると:550-これはオープンリレーではありません。このサーバーを介して送信するには、ZenインターネットIPアドレスで550であるか、TLSで認証されている必要があります。 (MAIL FROMコマンドへの応答)
ユーザー名とパスワードを送信しないことに同意します。そうしないと、送信されるか、ユーザー名のパスワードが正しくないと言われます。
問題は、なぜpostfixがそれを送信しないのかということです:
これが私のmain.confの関連すると思う部分です:
smtpd_helo_restrictions = permit_mynetworks, warn_if_reject reject_non_fqdn_hostname, reject_invalid_hostname, permit
smtpd_client_restrictions = reject_rbl_client sbl.spamhaus.org, reject_rbl_client blackholes.easynet.nl, reject_rbl_client dnsbl.njabl.org
smtpd_recipient_restrictions = reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_recipient, reject_unauth_destination, check_policy_service inet:127.0.0.1:60000, permit
smtpd_sender_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_non_fqdn_sender, reject_unknown_sender_domain, reject_unauth_pipelining, permit
relayhost = mailhost.zen.co.uk
smtpd_sasl_auth_enable = yes
smtpd_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtpd_sasl_type = cyrus
smtpd_sasl_authenticated_header = no
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain =
当然のことながら、sasl_passwdにパスワードを設定し、ポストマップしました。私が使用しているリソースの一部を次に示します。
誰かが他の提案を持っているのは素晴らしいことです:)
MTAからmailhost.zen.co.uk
へのSMTP接続をSASL認証する場合は、smtp_sasl_*
パラメーターではなくsmtpd_sasl_*
パラメーターが必要です。後者はあなたが受信 MTAであるときのためのものであり、前者はあなたがここでやりたいように見えるようにあなたが別のMTAに接続しているときのためのものです。