如何阻止特定使用者的外寄郵件([電子郵件受保護])在 Postfix 中除特定網域清單之外的所有網域(例如@example.com、@dot1q.com)?
我找到了阻止郵件發送到特定網域的解決方案:
編輯主文件檔案(預設位置位於/etc/後綴)並添加
transport_maps = hash:/etc/postfix/transport
到文件中。建立一個名為/etc/postfix/運輸,如果它不存在。在傳輸文件末尾添加以下內容:example.com : dot1q.com : * discard:
但不幸的是,這會阻止所有使用者的電子郵件。是否可以使這項工作僅適用於一個用戶[電子郵件受保護]?
答案1
在您的情況下,文件的正確語法transport
應該是(使用正規表示式):
/^user@example\.com/ discard:
/.*/ :
第一行postfix
告訴丟棄郵件已發送[email protected]
,地址為第二行 tesspostfix
至接受其他一切。
答案2
Postfix 提供了 ' check_sender_access
' 參數。它可以在 /etc/postfix/main.cf 中用作
smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/access
若要封鎖 發出的電子郵件[email protected]
,請
/etc/postfix/access
使用下列命令建立
[email protected] REJECT
之後運行以下命令
postmap /etc/postfix/access
service postfix restart
如果您使用 sendmail 作為 MTA,請編輯檔案 /etc/mail/access 並在其中新增以下規則:
From:[email protected] REJECT
然後重新啟動 sendmail 服務,
service sendmail restart
用戶“test”不應該能夠發送郵件。