cyrus
SASL埋め込みを使用するようにPostfixを設定すると、ログインしてメールを送信できますが、認証されていなくてもポート25でTelnetを使用してメールを送信できます。これは、拒否したいのですが。 。
smtp_sasl
私のmain.cf
の一部:
smtpd_sasl_path = smtpd
smtpd_sasl_type = cyrus
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
smtpd_recipient_restrictions = reject_non_fqdn_recipient, reject_non_fqdn_sender, reject_unlisted_recipient, permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_invalid_hostname, reject_unknown_sender_domain, reject_unknown_recipient_domain, reject_rbl_client, sbl-xbl.spamhaus.org, reject_rbl_client, bl.spamcop.net, reject_rbl_client, list.dsbl.org, reject_rbl_client, rbl.mail-abuse.org, reject_rbl_client, spamsources.fabel.dk
完全な構成 ここ
何か忘れましたか?
Telnetログ:
=~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2014.04.20 16:10:32 =~=~=~=~=~=~=~=~=~=~=~=
220 the999ers.eu ESMTP Postfix (Debian/GNU)
ehlo kim-nuernberger.eu
250-the999ers.eu
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
MAIL FROM: [email protected]
250 2.1.0 Ok
RCPT TO: [email protected]
DATA
250 2.1.5 Ok
354 End data with <CR><LF>.<CR><LF>
Subject: test
This is a test mail
.
250 2.0.0 Ok: queued as B82481DF1CE
quit
221 2.0.0 Bye
これは私のlocalPCからキャプチャされ、ドメインkim-nuernberger.eu
を介して接続しました。
Postfixログ(/var/log/mail.log)
Apr 20 16:31:37 The999ers postfix/smtpd[16420]: connect from unknown[2a03:4000:2:206::1]
Apr 20 16:31:57 The999ers postfix/smtpd[16420]: 25CED1DF1CE: client=unknown[2a03:4000:2:206::1]
Apr 20 16:32:13 The999ers postfix/cleanup[16425]: 25CED1DF1CE: message-id=<[email protected]>
Apr 20 16:32:13 The999ers postfix/qmgr[16407]: 25CED1DF1CE: from=<[email protected]>, size=385, nrcpt=1 (queue active)
Apr 20 16:32:14 The999ers postfix/smtp[16426]: 25CED1DF1CE: to=<[email protected]>, orig_to=<[email protected]>, relay=mx4.hotmail.com[65.55.37.104]:25, delay=25, delays=23/0.01/0.47/1.1, dsn=2.0.0, status=sent (250 <[email protected]> Queued mail for delivery)
Apr 20 16:32:14 The999ers postfix/qmgr[16407]: 25CED1DF1CE: removed
Apr 20 16:32:14 The999ers postfix/smtpd[16420]: disconnect from unknown[2a03:4000:2:206::1]
注:いくつかの不要な問題を修正した後、ログを更新しました。
これは、サーバー(つまり、telnet localhost 25
)自体からメールを送信しようとした可能性があり、smtpd_recipient_restrictions
permit_mynetworks
がpermit_sasl_authenticated
の前にあるため、mynetworks
( localhost
(あなたの場合)は認証する必要はありません。制限を再配置して、目的を達成します。
詳細: postfix docs
編集1:
Telnetとpostfixのログをありがとう。 postfixは、mydestination
、relay_domains
virtual_alias_domains
およびvirtual_mailbox_domains
で処理するドメインのメールを受信するために認証を必要としません。ユーザーは、認証しない限り、外部ドメイン(つまり、リモートのドメイン、たとえばgmail.com)にrelay
することはできません。これは予想される動作です。
たとえば、main.confではなくmaster.confで変更したり、送信時にチェックを追加したりして、電子メールを送信する前にユーザーに認証を強制し、すべてを拒否することができます。
-o smtpd_relay_restrictions=permit_sasl_authenticated,reject
これは4年前のことですが、おそらく新しい人々を助けるでしょう。