首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从不存在的电子邮件地址发送邮件

从不存在的电子邮件地址发送邮件
EN

Stack Overflow用户
提问于 2013-09-08 15:09:27
回答 1查看 4.6K关注 0票数 1

我最近从信使迁移到了Dovecot。配置后缀+ MySQL + Dovecot的主要指南是:https://library.linode.com/email/postfix/postfix2.9.6-dovecot2.0.19-mysql

一切都很完美,但当我更改邮件客户端的邮件地址,为服务器留下正确的登录和密码,并发送带有伪造邮件(和域)地址的电子邮件时,Postfix只发送它,而不验证数据库中是否存在该电子邮件地址,也不验证该电子邮件地址是否是我的。

因此,我的SMTP配置一定有问题。这是我的实际配置:

代码语言:javascript
复制
# Requirements for the sender details
smtpd_reject_unlisted_sender = yes
smtpd_reject_unlisted_recipient = yes

smtpd_sender_restrictions =
        warn_if_reject,
        permit_mynetworks,
        permit_sasl_authenticated,
        reject_non_fqdn_sender,
        reject_unknown_sender_domain,
        reject_unauth_pipelining,
        reject_unlisted_sender,
        reject_unverified_sender,
        permit

# Requirements for the connecting server
smtpd_client_restrictions =
        reject_rbl_client zen.spamhaus.org,
        reject_rbl_client blackholes.easynet.nl,
        reject_rbl_client bl.spamcop.net,
        permit

# Requirement for the recipient address
smtpd_recipient_restrictions =
        permit_mynetworks,
        permit_sasl_authenticated,
        reject_unauth_pipelining,
        reject_non_fqdn_recipient,
        reject_unknown_recipient_domain,
        reject_unauth_destination,
        reject_unlisted_recipient,
        reject_unverified_recipient,
        check_policy_service inet:127.0.0.1:10023,
        permit

smtpd_data_restrictions =
        reject_unauth_pipelining

# require proper helo at connections
smtpd_helo_required = yes
# waste spammers time before rejecting them
smtpd_delay_reject = yes
isable_vrfy_command = yes

有没有人?

EN

回答 1

Stack Overflow用户

发布于 2013-11-22 03:48:06

reject_unlisted_sender限制列在smtpd_sender_restrictions中,列在permit_mynetworkspermit_sasl_authenticated之后。后缀按顺序遍历限制列表,当它到达第一个许可/拒绝时终止,因此永远不会到达reject_unlisted_sender。由于您的消息没有被reject_unauth_destination拒绝,所以它肯定是因为permit_mynetworkspermit_sasl_authenticated而被接受的。

此外,除非您使用的发件人地址有一个实际上由后缀“拥有”的域部分(即在mydestinationvirtual_mailbox_domainsvirtual_alias_domainsrelay_domains中列出),否则无法验证它,reject_unlisted_sender也无法工作。请参阅postconf(5)手册页中的详细信息。

其他意见:

  • warn_if_reject限制放在permit_mynetworks之前。因为后者从不拒绝任何东西,所以warn_if_reject限制没有任何用处。
  • 由于您显式地使用了reject_unlisted_recipientreject_unlisted_sender,所以没有必要设置smtpd_reject_unlisted_sendersmtpd_reject_unlisted_recipient
  • (几乎)每个列表末尾的最后一个permit是隐式的,可以删除。
  • 除非是复制/粘贴错误,否则您已经拼写错了disable_vrfy_command
  • 我建议您将客户端和发送方限制列表合并到smtpd_recipient_restrictions中。如果启用了smtpd_delay_reject,所有限制都将在接收方阶段进行评估,而单个列表通常会使配置更容易理解。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18685239

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档