
Estou tentando enviar um e-mail para uma das maiores empresas de hospedagem polonesas e seus servidores se recusam a recebê-lo com a mensagem:
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.
Entrei em contato com esta empresa e obtive resposta:
"Nossa verificação mostrou que o servidor mail.domainhere.pl está tentando se conectar ao nosso servidor via protocolo SSL/TLS. Essa forma de conexão não é suportada pelo nosso servidor, mas gostaria de observar que nossos servidores estão configurados corretamente e correspondem aos atuais Padrões RFC. O método a seguir para estabelecer conexão não é padrão para comunicação entre os servidores."
Estou usando o Qmailtoaster no CentOS 6.5 de 64 bits. Isso acontece mesmo se eu não usar SSL no meu cliente de e-mail!
Exemplo da minha configuração 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
Como corrigir isso?
Responder1
Se /var/qmail/control/notlshosts/host.dom.ain estiver presente, nenhum TLS será tentado neste host.
adicione um arquivo com o nome do domínio mx para o qual você está enviando para /var/qmail/control/notlshosts/ para desabilitar o TLS apenas para esse domínio.
(se notlshosts não existir):
mkdir /var/qmail/control/notlshosts
então, crie o arquivo:
touch /var/qmail/control/notlshosts/example.com
editar: Superbiji está correto, o nome do arquivo deve ser o nome do host mx do domínio, não apenas o domínio.
então
touch /var/qmail/control/notlshosts/mx.example.com
é um exemplo mais adequado, ou o que quer que seja
dig example.com MX
retorna
Responder2
A solução é muito simples:
mkdir /var/qmail/control/tlshosts/exhaustivelist
Isso desativará o TLS para todos os domínios:
tlshosts/exhaustivelist
if this file exists no TLS will be tried on hosts
other than those for which a file tlshosts/<FQDN>.pem
exists.
Não há necessidade de reiniciar o qmail;)