Uncover Certificate used on remote SMTP Server

Hallo zusammen,

In diesem Artikel zeige ich euch, wie man das verwendete Zertifikat beim SMTP Service herausfindet. Das ist gar nicht so einfach. Für HTTPS Webseiten kann man beispielsweise einfach die Testseite von Qualys SSL Labs benutzen

Grundlagen

Ob ein Mailserver überhaupt TLS anbietet, kann man mit Telnet überprüfen. Falls ihr Telnet nicht installiert habt, findet ihr hier eine Anleitung, wie man den Telnet Client unter Windows 10 installiert.

telnet mailserver.domain.tld 25
helo meinmailserver.meinedomain.tld

Erst wenn man bei der Begrüssung "ehlo" Extended Helo verwendet, werden die Optionen angezeigt, welcher der Server unterstützt. Sieht man dort "STARTTLS" so kann der Server eine über TLS gesicherte Kommunikation anbieten.

telnet mailserver.domain.tld 25
ehlo meinmailserver.meinedomain.tld

Um zu sehen, welches Zertifikat dafür verwendet wird, benötigt man OpenSSL. Die Light version reicht dazu vollkommen aus

Nun kann man das Zertifikat mit folgendem OpenSSL Befehl anzeigen

cd C:\Program Files\OpenSSL-Win64\bin
openssl s_client -connect mail.serveralive.ch:25 -starttls smtp

Man sieht dabei den CN und die Certificate Chain.

Wenn man sich alles ab "BEGIN CERTIFICATE" und "END CERTIFICATE" in ein Notepad kopiert und als .CER File abspeichert

Kann man das Zertifikat mit dem Windows Zertifikat GUI anzeigen lassen

Grüsse
Andres Bohren