我在服务器故障和整个互联网上都看到了很多关于这个问题的提法,但是没有一个解决scheme已经解决了我的问题。
我正在Ubuntu 13.10上运行Sendmail 8.14.4,这是一个只有web服务器(称为domain.com ),并且不处理任何传入或传出的电子邮件,除了通过PHP mail()向用户发送自动消息。 任何收到[email protected]邮件都将通过MXlogging通过不同的服务器设置进行处理,并按预期工作。 从服务器发送到[email protected]电子邮件在本地被路由并失败,但似乎是一个常见的问题,但任何其他域都按预期工作。
我已经尝试了很多解决scheme,包括将define(`confDONT_PROBE_INTERFACES', `True')dnl到/etc/mail/sendmail.mc ,然后运行sendmailconfig并重新启动sendmail。 但是,它并没有解决问题,并且运行命令echo $=w | sendmail -bt echo $=w | sendmail -bt domain.com仍然出现在列表中。 我已经从/etc/mail/local-host-names删除了domain.com ,但还有其他地方需要删除它吗? 我需要删除/etc/hosts中的所有引用吗? 当我运行hostname domain.com被报告,我可以改变这一点,如果我这样做会导致任何其他服务的问题?
放弃这个解决scheme,我也尝试通过将以下内容添加到sendmail.mc来设置一个中继:
define(`MAIL_HUB', `example.com.')dnl define(`LOCAL_RELAY', `example.com.')dnl
但是,这也解决不了问题。 我错过了什么? 如果可能的话,我宁愿直接从服务器发送邮件,而不是中继邮件,但在这个阶段,任何解决scheme都是好的!
更新:我现在已经将主机名更改为www.domain.com ,似乎现在正确地打到邮件服务器,而不是本地路由。 但是,我现在得到一个错误说未知的用户? 邮件服务器有一个为特定用户设置的转发账户,虽然没有实际的邮箱,这是一个问题吗? 我已经添加了下面的日志:
Jan 27 12:13:31 www sendmail[1839]: s0RCDV3n001839: from=www-data, size=129, class=0, nrcpts=2, msgid=<[email protected]>, relay=www-data@localhost Jan 27 12:13:32 www sm-mta[1841]: s0RCDVtW001841: from=<[email protected]>, size=401, class=0, nrcpts=2, msgid=<[email protected]>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1] Jan 27 12:13:32 www sendmail[1839]: s0RCDV3n001839: [email protected],[email protected], ctladdr=www-data (33/33), delay=00:00:01, xdelay=00:00:01, mailer=relay, pri=60129, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (s0RCDVtW001841 Message accepted for delivery) Jan 27 12:13:32 www sm-mta[1843]: STARTTLS=client, relay=spool.mail.gandi.net., version=TLSv1/SSLv3, verify=FAIL, cipher=DHE-RSA-AES256-SHA, bits=256/256 Jan 27 12:13:36 www sm-mta[1843]: s0RCDVtW001841: to=<[email protected]>, ctladdr=<[email protected]> (33/33), delay=00:00:05, xdelay=00:00:04, mailer=esmtp, pri=150401, relay=spool.mail.gandi.net. [217.70.184.6], dsn=2.0.0, stat=Sent (Ok: queued as 378B22A89BC) Jan 27 12:13:36 www sm-mta[1843]: STARTTLS=client, relay=mail.domain.com., version=TLSv1/SSLv3, verify=FAIL, cipher=DHE-RSA-AES256-SHA, bits=256/256 Jan 27 12:13:36 www sm-mta[1843]: s0RCDVtW001841: to=<[email protected]>, ctladdr=<[email protected]> (33/33), delay=00:00:05, xdelay=00:00:00, mailer=esmtp, pri=150401, relay=mail.domain.com. [79.170.40.74], dsn=5.1.1, stat=User unknown Jan 27 12:13:36 www sm-mta[1843]: s0RCDVtW001841: s0RCDatW001843: DSN: User unknown Jan 27 12:13:37 www sm-mta[1843]: s0RCDatW001843: to=<[email protected]>, delay=00:00:01, xdelay=00:00:01, mailer=local, pri=30000, dsn=2.0.0, stat=Sent
我已经通过telnet连接到邮件服务器testing了用户,并且用户被接受了。
您的服务器应具有除domain.com以外的(FQDN)主机名。 之后检查LOCAL_DOMAIN设置的sendmailconfiguration。 删除“domain.com”条目,如果你有,只有本地主机和FQDN。
不要忘记在更改.mc文件后重新编译sendmailsconfiguration。
最好的,森马