SSMTP ne peut pas établir de connexion startssl à partir d'un Raspberry Pi

0

J'essaie de configurer des courriels automatisés sur mon Raspberry Pi, mais il ne négocie pas une session STARTTLS.

Le fichier ssmtp.conf est le suivant:

root=postmaster
mailhub={mailserver}:587
AuthUser={username}
AuthPass={password}
UseTLS=TES
UseSTARTTLS=YES
hostname={hostname}
FromLineOverride=YES
DEBUG=YES

Pas de revalias. L'erreur que je reçois dans mail.err est la suivante -

sSMTP[13572]: Cannot open {mailserver}:587

Dans syslog, je reçois les lignes suivantes -

sSMTP[13119]: Creating SSL connection to host
sSMTP[13119]: 220 {mailserver} ESMTP Postfix
sSMTP[13119]: EHLO {hostname}
sSMTP[13119]: 250 DSN
sSMTP[13119]: STARTTLS
sSMTP[13119]: 220 2.0.0 Ready to start TLS
sSMTP[13119]: SSL connection using (null)
sSMTP[13119]: Cannot open {mailserver}:587

Et ça meurt. J'ai essayé de modifier le paramètre hostname, les paramètres UseTLS et UseSTARTTLS, ne fonctionnaient pas. J'ai également essayé de définir les paramètres TLS_CA_File et TLS_CA_Dir publiés dans des messages de forum similaires (mais anciens), mais ils ne semblent même pas fonctionner du tout -

sSMTP[13572]: Unable to set TLS_CA_Dir="/etc/ssl/certs/"

et

sSMTP[12962]: Unable to set TLS_CA_FILE="/etc/ssl/certs/ca-certificates.crt"

Côté serveur je reçois ceci -

postfix/submission/smtpd[7557]: warning: dict_nis_init: NIS domain name not set - NIS lookups disabled
postfix/submission/smtpd[7557]: connect from unknown[{ip}]
postfix/submission/smtpd[7557]: SSL_accept error from unknown[{ip}]: -1
postfix/submission/smtpd[7557]: warning: TLS library problem: error:140760FC:SSL routines:SSL23_GET_CLIENT_HELLO:unknown protocol:s23_srvr.c:649:
postfix/submission/smtpd[7557]: lost connection after STARTTLS from unknown[{ip}]
postfix/submission/smtpd[7557]: disconnect from unknown[{ip}]

Cependant, tout fonctionne correctement lorsque j'essaie la même configuration sur une machine Ubuntu 18.04 ou à partir de clients de messagerie de bureau tels que Thunderbird. Des idées sur pourquoi il ne se connecte pas au serveur à partir du Pi?

zingmars
la source
Avez-vous généré le /etc/ssl/certs/ca-certificates.crt fichier?
Ipor Sircer
Oui, mais cela ne semble pas avoir d'importance puisque ssmtp ne me laisse pas définir TLS_CA_FILE.
zingmars

Réponses:

1

ssmtp est un logiciel non maintenu et a des problèmes liés à TLS. Debian complètement enlevé ssmtp des dépôts il y a plusieurs mois, Ubuntu suivra.

La seule raison pour laquelle cela fonctionne dans Ubuntu / Debian est parce que Debian avait l'habitude d'appliquer un correctif (qui portera smsp à GnuTLS pour des raisons de licence et résoudra fortuitement les bogues du code original).

(Dans votre cas, je voudrais deviner l'erreur est due à l'envoi par le client du message ClientHello obsolète "compatible SSLv2", qui a dépassé sa date utile et qui n'est plus reconnu par OpenSSL sur le serveur Postfix.)

La capacité d'utiliser TLS_CA_* parameters est un autre correctif ajouté par Debian - le logiciel ssmtp d'origine ne dispose pas de ces options car il exécute pas de validation de certificat du tout.

Utilisez msmtp à la place.

grawity
la source