Sonntag, 16. Juni 2019

TLS Terminal Verbindung zu SMTP

Verschlüsselte Terminal Verbindung zum Bluewin SMTP

Vorwort

Du möchtest in einem Mail Programm die Einstellungen vornehmen, aus irgendeinem Grund, scheint es aber nicht zu funktionieren. Das Mail Programm selber liefert dir aber keinen wirklichen Grund.
Es kann sein das mit dem Passwort und Nutzername irgendwas nicht stimmt. Eventuell wurde aber auch deine IP gesperrt oder der Account deaktiviert.
Zeit um sich mal mit dem Terminal zum SMTP Server zu verbinden um zu schauen ob man da nicht bessere Informationen erhält.
Der Beitrag verwendet als Zielsystem den verschlüsselten SMTP von Bluewin. Kann sinngemäss aber natürlich auch zur Verbindung mit anderen Servern genutzt werden.

Base64 Codierung

Ist man später mit dem SMTP Server verbunden und möchte sich authentifizieren, so wird er Nutzername und Passwort in der Base64 Kodierung verlangen.
Daher muss man sich Nutzername und Passwort zuerst mal Base64 kodiert besorgen. Das geht entweder über eine App via Smartphone oder auch direkt über das Terminal. In diesem Beispiel verwende ich das Windows Subsystem for (Ubuntu) Linux. Wieso? Ja eigentlich nur um zu zeigen, dass keiner kommen muss er habe die nötigen Befehle und Programme nicht...

Let's go:


Mittels echo -n 'Dein Mailaccount' | base64 und
echo -n 'Dein Passwort' | base64 bekommst du sie Base64 codiert.
Wie gesagt, diese Zugangsdaten werden in dieser Kodierung später benötigt.


Achtung. Der Nutzername und das Passwort werden damit nicht verschlüsselt, sondern nur Base64 kodiert. Teile diesen Nutzernamen und das Passwort auch in dieser Kodierung nicht öffentlich.



(Mit dem Befehl echo -n Base64kodiertesirgendwas | base64 -d kann man die Kodierung wieder in Klartext umwandeln.)


TLS Verbindung zum SMTP Server

Mit dem nächsten Befehl verbindet man sich zum SMTP Server.
openssl s_client -connect TLS-smtpServer.generic.com:PORT

Im Falle von Bluewin wäre dies:
openssl s_client -connect smtpauths.bluewin.ch:465

Im Normalfall kommt es nun zur Verbindung zum Server. Sollte jetzt schon etwas krumm laufen, so wäre der Server, Port, die Internetverbindung, Firewall uä. zu prüfen. Auch möglich, die IP wird beim Provider blockiert.













Anmeldung am SMTP Server

Nachdem die Verbindung funktioniert hat, kann man sich mit einem auth login anmelden.
Der Server verlangt zuerst den Base64 kodierten Username und danach das Base64 kodierte Passwort.
Stimmt beides funktioniert die Anmeldung. Sollte etwas davon nicht stimmen, so wird das der Server melden.







Wer möchte, kann nun via shell auch gleich ein Mail senden. Weiterführende Informationen findet man unter diesem Link: https://de.wikihow.com/E-Mails-%C3%BCber-Telnet-verschicken