如何让 sendmail 处理邮件/var/spool/clientmqueue?sendmail -q不适用于此目录。
我目前没有 SMTP 服务器设置。但是,在我的 PHP 代码中,我将所有 SMTP 请求发送到 sendmail。使用此程序有任何下降吗?如果是,将所有 STMP 请求发送到“集中”SMTP 服务器有什么好处?
我有一个作为 LAMP 堆栈运行的 CentOS Linode 实例。我也在使用 Google Apps 发送电子邮件。我的 MX 记录指向 google 的服务器,并且在转发我的电子邮件方面一切正常。
但是,盒子上的 sendmail 无法正常工作,这意味着来自 PHP (wordpress) 的电子邮件没有被发送。
查看本地邮件我可以看到这些消息在日志中重复 -
----- Transcript of session follows -----
<my email addr>... Deferred: Connection refused by aspmx.l.google.com.
Run Code Online (Sandbox Code Playgroud)
我没有配置 sendmail 的经验 - 谁能告诉我从哪里开始解决这个问题?我已经做了很多谷歌搜索,但无济于事。
我正在尝试设置用于发送电子邮件的外发邮件服务器,以便中继到我们的 ISP。
在 /etc/postfix/main.cf 中,我将 myhostname 指定为 ourcompany.example.com,将 myorigin 和 mydomain 指定为 $myhostname。ourcompany.example.com 是可解析的。
但是查看 /var/log/maillog 中的日志,似乎 postfix 确实使用 myhostname 作为发送地址,但使用了 getmyhostname() 中的任何内容,它被设置为内部 DNS 名称,因为这是一个内部服务器,我们只发送电子邮件,但不处理收到的电子邮件。
有任何想法吗?
编辑:postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
html_directory = no
inet_interfaces = localhost
inet_protocols = all
mail_owner = postfix
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
mydestination = $myhostname, localhost.$mydomain, localhost
mydomain = example.com
myhostname = ourcompany.example.com
myorigin = …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 Centos 5 上配置 sendmail,以便所有邮件都通过另一个 SMTP 服务器。在这种情况下,它恰好是一个 Exchange 服务器。我用这一行编辑了 sendmail.mc 文件:
define(`SMART_HOST', `10.1.1.30')dnl
Run Code Online (Sandbox Code Playgroud)
但是当我尝试发送电子邮件时,出现以下错误:
Nov 2 14:02:00 COMPUTERNAME sendmail[1370]: oA2K1xht001368: to=<testemail@test.com>, ctladdr=<root@localhost.localdomain> (0/0), delay=00:00:01, xdelay=00:00:00, mailer=relay, pri=120355, relay=10.1.1.30, dsn=5.1.2, stat=Host unknown (Name server: 10.1.1.30: host not found)
Run Code Online (Sandbox Code Playgroud)
10.1.1.30 框可以从我发送邮件的框访问。意思是,我可以 ping 10.1.1.30 并获得良好的响应。所以我不明白为什么sendmail找不到主机。有任何想法吗?谢谢。
是否可以更改已经排队的邮件的发件人地址?
到目前为止,我们使用的中继服务器在几天前悄悄改变了它的策略,现在拒绝没有经过验证的发件人地址的邮件。我们现在已经调整了 sendmail 的设置,但是一些带有旧发件人地址的邮件已经卡在队列中 ( Sender address rejected: unverified address)。我可以更改他们的发件人地址吗?
CentOS 5.x 发送邮件 8.14.4
当我的 Sendmail 服务器尝试与外部主机通信时,一个过于热心的网络安全功能会导致 TLS 协商失败。这会导致 sendmail 不断重新排队一些邮件,因为它不会故障转移到未加密的传递。
有没有办法完全禁用出站 TLS?我知道我可以为单个 mx 记录(或部分域)添加Try_TLS:broken.server NO条目,但我更愿意完全禁用它,直到根本原因得到解决。
据我所知,似乎没有任何方法可以告诉 SendMail 不使用任何 TLS。
我试过Try_TLS:*但这没有用。
我知道根本原因不是我的特定系统,但由于我无法控制受影响的部分,我想至少让邮件流动。有任何想法吗?
我想在 Sendmail 中禁用反向 DNS 查找。
我们有一个 SMTP 中继,运行 Sendmail,带有基于 IP 的 access.db。我们不需要反向查找,事实上,它们可能会导致响应时间延迟。这会在监控中触发警报......这让人们不高兴。
我进行了搜索,但找不到任何内容来禁用传入连接的反向 DNS 查找。显然,我不能只是终止所有 DNS 查找,因为这样就不会发送邮件。
提前致谢!
网络上充满了如何禁用 cron 中的邮件的建议,就像这里所问的那样,阻止 linux 向我发送 cron 错误?. 是否真的没有全局配置标志可以设置为所有用户和所有命令禁用 cron 中的邮件。我真的不想告诉所有用户你必须添加
MAILTO=""
Run Code Online (Sandbox Code Playgroud)
或者
<command> > /dev/null 2>&1
Run Code Online (Sandbox Code Playgroud)
到您的 crontab。
我将首先声明我不是 sendmail 方面的专家。我很少使用它,但在这种情况下,我必须为我的客户使用。
背景:
我的一个客户端有一个运行 Debian 7.7、Sendmail 8.14.4 和 OpenSSL 1.0.1e 的邮件服务器。它生成电子邮件(诸如帐户重置之类的内容)并将其发送给客户。我将其称为“服务器 A”。
由于 TLS 握手失败,从服务器 A 发送到域 *.outlook.com 中的任何邮件服务器的邮件(奇怪的是不包括 @outlook.com 邮件,这些邮件由 hotmail 处理)被推迟。这只是微软拥有的服务器的问题;其他一切都在工作。日志中的错误类似于:
sendmail[22213]: ruleset=tls_server, arg1=SOFTWARE, relay=mail.protection.outlook.com, reject=403 4.7.0 TLS handshake
sendmail[22213]: s2L9EakQ022098: to=<blah@microsoft.com>, delay=00:00:55, xdelay=00:00:31, mailer=esmtp, pri=181653, relay=mail.protection.outlook.com. [145.123.225.25], dsn=4.0.0, stat=Deferred
Run Code Online (Sandbox Code Playgroud)
注意:这些日志是编造的,因为我的客户不希望复制和粘贴内容,以免意外泄漏敏感数据。信息就在那里,我只是手动输入,所以忽略错别字等。
这就是我可以从日志中获得的全部信息,即使日志是 15(除此之外,系统开始成为磁盘绑定)。
问题:
握手的 tcpdump 显示服务器 A 正在连接到 Outlook.com,EHLO 成功,服务器 A 启动了 STARTTLS,然后 Outlook.com 以其证书链响应。所有这一切都很正常。
然后在服务器 A 收到微软证书链后,服务器 A 发送了自己的客户端证书。Outlook.com 然后断开了连接。
我们的客户端证书是我们用于组织内部验证的自签名证书,不应发布到 Outlook.com。
根据我有限的知识,我最好的猜测是,outlook.com 正在请求客户端证书进行验证(或者至少 sendmail 认为它请求证书),服务器 A 上的 sendmail 是有义务的。Outlook.com 然后断开连接,要么是因为证书无效,要么不是它所期望的。
两个问题:
为什么 sendmail 将客户端证书作为 …