CODE:
fetchmail: pop.gmx.net fingerprints do not match!
13589:error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed:s3_clnt.c:951:
fetchmail: SSL connection failed.
fetchmail: socket error while fetching from ...@gmx.de@pop.gmx.net
fetchmail: Query status=2 (SOCKET)
Man muß dazu sagen, dass ich fetchmail mit der folgenden Konfiguration aufrufe:
CODE:
poll pop.gmx.net proto POP3 timeout 30 uidl
user "user@gmx.de" password "passwort" is "user" ssl
sslproto tls1 sslcertpath /etc/ssl/certs sslfingerprint
"BA:03:AC:50:A9:A0:C7:AF:1E:79:3A:B7:C0:E7:19:5E" sslcertck keep
(Nein, das Passwort ist nicht passwort und die E-Mail Adresse ist auch nicht user@gmx.de ;))
In dieser Konfiguration überprüft fetchmail den angegebenen SSL Fingerprint (Option sslfingerprint) gegen den Fingerprint des Zertifikats, dass der Server angibt und wenn der Fingerprint nicht stimmt, dann gibt es eben obige Fehlermeldung. Zusätzlich wird mit der Option sslcertck überprüft, ob das Zertifikat (direkt oder indirekt) vertrauenswürdig ist. GMX verwendet zum Beispiel ein Zertifikat das von Thawte ausgestellt ist. Wenn man das Paket ca-certificates installiert, bekommt man unter anderem das Thawte Root-Zertifikat installiert und das System betrachtet diese Zertifikate als vertrauenswürdig. Der generische, manuelle Weg diese Zertifikate zu erhalten ist für Thawte hier beschrieben.
Zurück zu der obigen Fehlermeldung. Die sieht verdächtig nach einem erneuerten Zertifikat aus. Glücklicherweise kann man das recht einfach prüfen und damit ich mir die passenden Optionen nicht jedesmal aus der Manpage raussuchen muß, hier die Schrittfolge in Kurzform:
CODE:
chrisbra@256bit:~$ openssl s_client -connect pop.gmx.net:995 -tls1 </dev/null 2>/dev/null |sed -n /BEGIN/,/END/p | openssl x509 -dates -fingerprint -md5 -noout
notBefore=Apr 27 08:51:09 2009 GMT
notAfter=May 10 07:06:14 2010 GMT
MD5 Fingerprint=92:C8:49:13:3A:55:D6:57:37:5F:0F:12:83:39:CE:06
In Langform: Zunächst bauen wir uns eine verschlüsselte Verbindung zu pop.gmx.net auf. Da sieht man z.B. welches Zertifikat der Server dem Client präsentiert. Dieses Zertifikat kann man sich dann auch in Textform ausgeben lassen (openssl x509 -text
CODE:
fetchmail --verbose pop.gmx.net
fetchmail: 6.3.9-rc2 fragt pop.gmx.net ab (Protokoll POP3) um Mo 27 Apr 2009 21:43:53 CEST: Abfrage gestartet
Versuche, mit 213.165.64.22/995 zu verbinden...verbunden.
fetchmail: Herausgeber-Organisation: Thawte Consulting cc
fetchmail: Herausgeber-CommonName: Thawte Premium Server CA
fetchmail: Server-CommonName: pop.gmx.net
fetchmail: pop.gmx.net-Schlüssel-Fingerabdruck: 92:C8:49:13:3A:55:D6:57:37:5F:0F:12:83:39:CE:06
fetchmail: pop.gmx.net-Fingerabdrücke stimmen überein.
fetchmail: POP3< +OK GMX POP3 StreamProxy ready
fetchmail: POP3> CAPA
fetchmail: POP3< +OK
fetchmail: POP3< STLS
....
Ach ja, und spätestens am 10. Mai 2010 wird es wieder ein neues Zertifikat geben.

Hoffentlich erinnere ich mich nächstes Jahr wieder daran. Bokkmarked. ;-)