使用 mailx 时,Postfix 不会拒绝收件人地址

Pho*_*ặng 4 postfix filter mailx

我在使用 postfix 时遇到问题,无法拒绝黑名单中某个地址的外发电子邮件。

这是我的配置/etc/postfix/main.cf

smtpd_recipient_restrictions = 
      check_recipient_access hash:/etc/postfix/bad_recipients, permit_mynetworks, reject_unauth_destination, permit
Run Code Online (Sandbox Code Playgroud)

文件/etc/postfix/bad_recipients

phongdang@chotot.vn REJECT
Run Code Online (Sandbox Code Playgroud)

然后我使用命令:

postmap /etc/postfix/bad_recipients 
Run Code Online (Sandbox Code Playgroud)

创建 bad_recipients.db

并重新启动后缀: /etc/init.d/postfix restart

然后我尝试发送邮件到 phongdang@chotot.vn:

echo "hello world" | mailx -s "Test from CLI" phongdang@chotot.vn
Run Code Online (Sandbox Code Playgroud)

邮件日志:

Nov  4 19:54:50 cent6 postfix/pickup[32452]: 851B011FD2B: uid=0 from=<root>
Nov  4 19:54:50 cent6 postfix/cleanup[32491]: 851B011FD2B: message-id=<20141104125450.851B011FD2B@cent6.5-template>
Nov  4 19:54:50 cent6 postfix/qmgr[32453]: 851B011FD2B: from=<root@cent6.5-template>, size=447, nrcpt=1 (queue active)
Nov  4 19:54:50 cent6 postfix/smtp[32493]: connect to ASPMX.L.GOOGLE.COM[2607:f8b0:400e:c02::1b]:25: Network is unreachable
Nov  4 19:54:51 cent6 postfix/smtp[32493]: 851B011FD2B: to=<phongdang@chotot.vn>, relay=ASPMX.L.GOOGLE.COM[74.125.28.26]:25, delay=1.2, delays=0.05/0/0.6/0.51, dsn=2.0.0, status=sent (250 2.0.0 OK 1415105691 x3si145045pdr.187 - gsmtp)
Nov  4 19:54:51 cent6 postfix/qmgr[32453]: 851B011FD2B: removed
Run Code Online (Sandbox Code Playgroud)

虽然我限制了电子邮件 phongdang@chotot.vn,但我还是收到了电子邮件。请帮我修复它。

小智 7

  • 这是因为smtpd_recipient_restrictions仅适用于smtpd守护进程通过 SMTP 事务收到的邮件。
  • 使用sendmailmailx命令提交的邮件maildroppostdrop命令排入队列,由命令pickup直接拾取并馈送至清理。

您不能限制通过sendmailmailx命令提交的邮件的收件人。

此问题的唯一解决方案是强制您的应用程序仅通过 smtp 发送邮件。