TLS 连接失败:错误:140943FC:SSL 例程:SSL3_READ_BYTES:通过 Qmail 发送邮件时 sslv3 警报错误记录 mac

TLS 连接失败:错误:140943FC:SSL 例程:SSL3_READ_BYTES:通过 Qmail 发送邮件时 sslv3 警报错误记录 mac

我正尝试向波兰最大的托管公司之一发送电子邮件,但他们的服务器拒绝接收该电子邮件,并显示以下消息:

TLS connect failed: error:140943FC:SSL routines:SSL3_READ_BYTES:sslv3 alert bad record mac; connected to 89.161.199.168.
I'm not going to try again; this message has been in the queue too long.

我已经联系该公司并得到回复:

“我们的验证显示,服务器 mail.domainhere.pl 正在尝试通过 SSL/TLS 协议连接到我们的服务器。我们的服务器不支持这种形式的连接,但我想指出的是,我们的服务器配置正确,符合当前的 RFC 标准。以下建立连接的方法是服务器之间通信的非标准方法。”

我在 CentOS 6.5 64 位上使用 Qmailtoaster。即使我在邮件客户端中不使用 SSL,也会发生这种情况!

我的 SMTP 配置示例:

    #!/bin/sh

QMAILDUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
MAXSMTPD=`cat /var/qmail/control/concurrencyincoming`
BLACKLIST=`cat /var/qmail/control/blacklists`
SMTPD="/var/qmail/bin/qmail-smtpd"
TCP_CDB="/etc/tcprules.d/tcp.smtp.cdb"
RBLSMTPD="/usr/bin/rblsmtpd"
HOSTNAME=`hostname`
VCHKPW="/home/vpopmail/bin/vchkpw"
RECORDIO="/usr/bin/recordio"

### MR -- incresing SOFTLIMITVAR if not enough (example: because 'login fail')
if [ `uname -m` = 'x86_64' ] ; then
        SOFTLIMITVAR="72000000"
else
        SOFTLIMITVAR="18000000"
fi

IP=0
PORT=25

### MR -- SSL must using SMTPS=1 and SSL=1 but non-SSL only SSL=0 (without SMTPS=0)
export SMTPAUTH="!" \
        SSL=0 \
        REQUIRE_AUTH=0 \
        FORCE_TLS=0 \
        DENY_TLS=0 \
        AUTH=1 \
        REQUIRE_AUTH=0 \
        ALLOW_INSECURE_AUTH=1

### MR -- spamhaus.org recommended for not using $RBLSMTPD $BLACKLIST entry before $SMTPD
exec /usr/bin/softlimit -m $SOFTLIMITVAR \
        /usr/bin/tcpserver -v -R -H -l $HOSTNAME -x $TCP_CDB -c "$MAXSMTPD" \
        -u "$QMAILDUID" -g "$NOFILESGID" $IP $PORT $RECORDIO \
        $SMTPD $VCHKPW /bin/true 2>&1

如何纠正这个问题?

答案1

如果 /var/qmail/control/notlshosts/host.dom.ain 存在,则不会在该主机上尝试 TLS。

将一个与您要发送到的 mx 域名相同的文件添加到 /var/qmail/control/notlshosts/ 以仅为该域禁用 TLS。

(如果 notlshosts 不存在):

mkdir /var/qmail/control/notlshosts

然后,创建文件:

touch /var/qmail/control/notlshosts/example.com

编辑:Superbiji 是正确的,文件名应该是域的 mx 主机名,而不仅仅是域。

所以

touch /var/qmail/control/notlshosts/mx.example.com

是一个更合适的例子,或者其他什么

dig example.com MX 

返回

答案2

解决方法很简单:

mkdir /var/qmail/control/tlshosts/exhaustivelist

这将关闭所有域的 TLS:

   tlshosts/exhaustivelist
        if this file exists no TLS will  be  tried  on  hosts
        other than those for which a file tlshosts/<FQDN>.pem
        exists.

甚至不需要重新启动 qmail ;)

相关内容