自从从 postfix 3.1.12-0 + deb9u1 更新到 3.4.14-0 + deb10u1 以来,我一直遇到问题,我认为这不是版本问题,而是 MTA 之间发送<>接收的命令序列问题(防火墙要重新启动?我有一台 watchguard xtm-870F...)
一些地址已被 xxx.xxx.fr、domain1.fr、user、user1 和 user2 替换,以匿名化
这是 postfix 发送的日志,你可以看到,发送命令(数据)和收到的消息(250 个收件人)不匹配[电子邮件保护]好的)
Unexpected response from mel1.cnaf.fr[195.101.92.41]:25.
Transcript of session follows.
In: 220-mel1.cnaf.fr ESMTP
In: 220 Spamming and relaying are prohibited, accesses are logged.
Out: EHLO relais.xxx.fr
In: 220 Spamming and relaying are prohibited, accesses are logged.
Out: MAIL FROM:<[email protected]>
In: 250-mel1.cnaf.fr
In: 250-SIZE 10485760
In: 250 STARTTLS
Out: RCPT TO:<[email protected]>
In: 250 sender <[email protected]> ok
Out: RCPT TO:<[email protected]>
In: 250 recipient <[email protected]> ok
Out: DATA
In: 250 recipient <[email protected]> ok
Out: RSET
In: 354 Please end data with <CR><LF>.<CR><LF>
Out: QUIT
尝试在 Postfix 中禁用管道: smtpd_discard_ehlo_keywords = pipelining
...但没有更好的了
在纯 telnet 中,它可以工作。尝试通过嗅探数据包查看某些内容,但除了响应不匹配之外什么也没看到。
提前感谢您的帮助/想法:)
谨致问候,Arnaud W.
答案1
谢谢大家,终于找到了!
确实,我们的 av/netfilter (DrWeb) 出现了问题,有时会破坏协议。我打开了一个支持 cas 并在这里发布信息,因为这似乎是一个新的/未知的错误
临时解决方法是在 AgentCentral 中设置
[Linux防火墙] InspectSmtp = 否
谨致问候,阿诺。
答案2
以下是支持人员的完整回答。可能对其他 DrWeb 用户有所帮助:
============== 你好,问题是过滤模式下的 maild(作为 milter)和检查 smtp 的 linuxfirewall 是互相排斥的。
linuxfirewall 可以检查 smtp、pop、imap 和 http,以及可选的“解开”ssl 连接(默认情况下它是关闭的),这需要额外的调整(创建“受信任”证书并将其作为受信任证书添加到客户端以允许此“mitm”ssl 检查)
另外,如果 Dr.Web for Unix 邮件服务器在 esuite-server 的控制下运行,则其配置只能在 es-server 端进行,而对于 linuxfirewall 的详细和完整设置,只能在反病毒网络 > xxxx > UNIX > Dr.Web 代理端选项卡配置中的 ini 文件编辑器(用于取消和覆盖组件界面中所做的任何设置)中进行 drweb.ini 配置文件
[Linux防火墙] UnwrapSsl = 是
以及禁用防火墙必须有 OutputDivertEnable = No InputDivertEnable = No
或者,如果不需要设置防火墙,也可以通过更方便、更正常的方法来完全关闭它:防病毒网络 > xxx > UNIX > SpIDer Gate [v] 启用 SpIDer Gate
取消选中|从启用 SpIDer Gate 中的 [ ] 中删除 [v]
如果你在这个站上使用 ssh 并检查 drweb-ctl cfsh linuxfirewall |grep DivertEnable
而不是(示例)现有的 LinuxFirewall.OutputDivertEnable = Yes LinuxFirewall.InputDivertEnable = No LinuxFirewall.ForwardDivertEnable = No
在 es-server web 界面中取消选中“启用 SpIDer Gate”中的 [ ] 并按“保存”后
drweb-ctl cfsh linuxfirewall |grep DivertEnable
将返回 LinuxFirewall.OutputDivertEnable = No LinuxFirewall.InputDivertEnable = No LinuxFirewall.ForwardDivertEnable = No
意思是linuxfirewall已经关闭。
==============
所以对我来说正确的用法是将其完全关闭。