ネットワークの特定のサーバーに認証なしでメールを送信する権限を与えたいと考えています。これはわかっており、check_sender_access
送信者 ( ) または受信者 ( )check_recipient_access
をテストできます。MAIL FROM
RCPT TO
の過度の使用を防ぐために、smtp_restriction_classes
一度にそのような検索を行う方法を探しています。つまり
# /etc/postfix/check_noauth_servers
root@bi-server [email protected]
root@bi-server [email protected]
user@reporting [email protected]
このような検索を実行できるソリューションまたはアクセス制限はありますか?
答え1
無関係な質問を2つしているようです。
最初、
ネットワーク上の特定のサーバーに認証なしでメールを送信する権限を与えたいと考えています。
permit_sasl_authenticated の前に check_client_access を配置することで簡単に解決できます。
smtpd_recipient_restrictions = check_client_access hash:/etc/postfix/no-auth, permit_sasl_authenticated, reject_unauth_destination
そして/etc/postfix/no-auth
:
your.server.name.or.ip OK
- しかし、質問の 2 番目の部分では、送信者アクセス マップと受信者アクセス マップの両方について同時に言及しているようです。
まさにこれが次smtpd_restriction_classes
の目的です:
smtpd_restriction_classes = noauth
noauth = check_recipient_access hash:/etc/postfix/allowed_recipients
smtpd_recipient_restrictions = permit_sasl_authenticated, check_sender_access hash:/etc/postfix/allowed_senders, reject_unauth_destination
/etc/postfix/allowed_senders では次のようになります:
[email protected] noauth
[email protected] noauth
/etc/postfix/allowed_recipients では次のようになります:
[email protected] OK
[email protected] OK
アクセス チェックを適用する順序は任意です。
より複雑なルール(送信者と受信者を1つのチェックにまとめるなど)が必要な場合は、転送、Postfix ファイアウォール デーモン。
これにより、ポリシー サーバー (check_policy_service) として適用される、iptables のような複雑なルールが可能になります。ポリシー サービスの利点は、すべての pre-DATA パラメーター (クライアント、helo、送信者、受信者) に一度にアクセスできることです。