我正在使用以下设置。
客户的 DNS 指向 Hostgator,但客户想测试他的网站在 DigitalOcean 上运行是否更快。因此,我指向 DigitalOcean 的唯一 DNS 记录是:
site.com A xxx.xxx.xxx.xxx
www.site.com CNAME site.com
site.com AAAA abcd:abcd::::::0001 (example ip6)
其余 DNS 记录指向 hostgator 服务器。
我配置了sendmail
从网站发送邮件,并且一切正常,直到目标地址是[email protected]
。
我很确定它将这次投递视为本地投递,并且永远不会发送到服务器之外。
这是我的sendmail.mc
文件,只是我修改过的部分:
...
FEATURE(`no_default_msa')dnl
dnl DAEMON_OPTIONS(`Family=inet6, Name=MTA-v6, Port=smtp, Addr=::1')dnl
dnl DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp, Addr=127.0.0.1')dnl
dnl DAEMON_OPTIONS(`Family=inet6, Name=MSP-v6, Port=submission, M=Ea, Addr=::1')dnl
dnl DAEMON_OPTIONS(`Family=inet, Name=MSP-v4, Port=submission, M=Ea, Addr=127.0.0.1')dnl
...
...
MAILER_DEFINITIONS -- I haven't touched these three lines
MAILER(`local')dnl
MAILER(`smtp')dnl
dnl define(`MAIL_HUB', `site.com.')dnl
dnl define(`LOCAL_RELAY', `site.com.')dnl
LOCAL_RULESETS
LOCAL_RULE_0
define(`confDONT_PROBE_INTERFACES', `true')dnl
R$* < @site.com. > $* $#esmtp $@ mail.site.com $: $1<@site.com.>$2
我的local-host-names
原本是:
site.com
localhost
改为:
localhost
另外,我的/etc/hosts
文件有这一行:
127.0.0.1 site.com {servername} localhost.localdomain localhost
在这种情况下{servername}
是我的服务器的本地名称。
相关mail.log
条目:
Mar 23 01:36:13 servername sendmail[15492]: 02N1aD4f015492: from=www-data, size=5902, class=0, nrcpts=2, msgid=<[email protected]>, relay=www-data@localhost
Mar 23 01:36:13 servername sm-mta[15493]: 02N1aDOf015493: <[email protected]>... User unknown
我认为此日志条目基本描述了该情况。用户未知部分。其余的日志条目都很好,但这是域所在位置失败的条目@site.com
。
我按照这些教程操作过,但似乎仍然不起作用:
- https://tecadmin.net/install-sendmail-on-ubuntu/
- http://biostall.com/how-i-resolved-my-ubuntu-sendmail-woes/
我应该在 sendmail 的配置中修改什么才能表明该服务器未接收电子邮件?