有没有一种方法可以发送电子邮件,使接收者看到多个收件人电子邮件地址(包括他自己的电子邮件地址),但实际上只发送给他自己的一个接收者?
答案1
是的,SMTP 收件人列表始终可以与“收件人:”或“抄送:”标头完全不同;服务器实际上并不关心标头。
例如,“Bcc:”寻址就是这样工作的(因为根本没有“Bcc:”标题),但它也可以反过来并包含与真实收件人列表无关的标题。
在 SMTP 对话中,它看起来像这样:
$ nc 邮件服务器.example.net smtp ←220 mailserver.example.net ESMTP 你好! → ehlo 你的主机名.isp.net ←250 邮件服务器.example.net → 邮件来自:<[电子邮件保护]> ←250 好 → 收件地址:<[电子邮件保护]> ←250 好 → 收件地址:<[电子邮件保护]> ←250 好 → 数据 ←354 等待数据 → 至:<[电子邮件保护]>、<[电子邮件保护]> → 主题:你好。 → 内容类型:text/plain;字符集=utf-8 → → 电子邮件的问题在于你几乎可以伪造任何东西。 → 。 ←250 好 → 退出 ←221 再见
信封上写的地址——rcpt
是实际的收件人。他们将收到邮件。
标题中给出的地址 – To:
– 仅用于显示目的。它们不用于发送。
使用 Unix 时发送邮件界面,除在命令行中给出收件人外,其他规则均适用:
$ sendmail[电子邮件保护] → 至:<[电子邮件保护]>、<[电子邮件保护]> → 主题:你好。 → 内容类型:text/plain;字符集=utf-8 → → 关于电子邮件的一个特点是,你几乎可以欺骗一切东西。 →CtrlD
答案2
当然。在发送阶段,您只需要与收件人的 MX 服务器通信,并在RCPT
命令中指定它们。但据我所知没有哪个 MUA 可以做到这一点。