centos – 在Sendmail中禁用本地传递

前端之家收集整理的这篇文章主要介绍了centos – 在Sendmail中禁用本地传递前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在Centos服务器上使用Sendmail发送 PHP脚本的电子邮件,但问题是邮件被传递到机器上的本地邮箱而不是域的MX记录中指定的 – 实际上指向另一台机器我用于电子邮件.

我想sendmail不尝试本地为机器设置的域发送邮件,是否有一种简单的方法来禁用本地传送?

域不在local-host-names文件中.

我已经做了很多谷歌搜索,我看过:

Sendmail Configuration to not deliver mail to local machine

Disable local delivery in Sendmail

但要么没有答案,要么不适合.

我不想转发到另一台服务器,我只是想让它发送邮件而不管域名.

举个例子:

我有两个服务器,一个是mail.example.com上的邮件服务器和一个web.com服务器,当我在Web服务器上使用smtp服务时,它当前将邮件路由到example.com上的本地邮箱,但是它应该发送到mail.example.com上的邮箱

sendmail -bt的输出返回:

ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter  
> 3,0 info@example.com
canonify           input: info @ example . com
Canonify2          input: info 
Canonify2        returns: info 
canonify         returns: info 
parse              input: info 
Parse0             input: info 
Parse0           returns: info 
ParseLocal         input: info 
ParseLocal       returns: info 
Parse1             input: info 
Parse1           returns: $# local $: info
parse            returns: $# local $: info
我做了什么来禁用本地交付.我将使用example.com域名.

要求:

> example.com指向分配给其中一个eth接口的IP地址的条目.
> / etc / hosts定义example.com分配给与上面相同的IP地址
> example.com指向Google服务器的MX记录(ASPMX.L.GOOGLE.COM等)
>默认的sendmail安装(我的是在Ubuntu上)

脚步:

vim /etc/mail/sendmail.mc

在末尾:

define(`MAIL_HUB',`example.com.')dnl
define(`LOCAL_RELAY',`example.com.')dnl

然后:

sendmailconfig (or /etc/mail/make depending on your distro)
service sendmail restart

测试:

echo -e "To: user@example.com\nSubject: Test\nTest\n" | sendmail -bm -t -v
echo -e "To: user\nSubject: Test\nTest\n" | sendmail -bm -t -v

您应该看到它连接到Google服务器,然后您应该会看到您的邮件已发送到您的Google收件箱.

原文链接:https://www.f2er.com/centos/374047.html

猜你在找的CentOS相关文章