Über den Author / Internet / Mailversand über die SSH Console / Command

Mailversand über die SSH Console / Command

~3 Min. Lesezeit

Immer wieder muss man den Mailversand testen, ob alles funktioniert. Am einfachsten schickt man dann manuell ein Mail an den eigenen oder fremden SMTP Server, wo man testen möchte.

man kann dies über die Shell von Linux oder Command von Windows selber machen und das komplette SMTP Protokoll von Hand simulieren.

Dabei ist es aber nötig die genaue Anleitung einzuhalten und nicht versehentlich ein Enter zu viel zu drücken.
Wenn dies passiert, versteht der Server das Protokoll nicht mehr und wird mit einem Fehler abbrechen.

In meinem Beispiel, sende ich von ich@meinedomain.de zu irgendwer@fremdedomain.de eine Mail manuell.
Die ganze Anleitung funktioniert unter Linux (Shell) oder Windows (Command Promt) und auch anderen Betriebsystemen.

Um herauszufinden welcher Mail Server für eine Domain verantwortlich ist, gibt man folgenden Befehl in der Konsole ein:

nslookup -type=mx fremdedomain.de

Danach kommt eine Rückmeldung wie diese:
R09J1211:~# nslookup -type=mx fremdedomain.de
Server: 80.74.130.131
Address: 80.74.130.131#53

Non-authoritative answer:
fremdedomain.de mail exchanger = 5 mx1.fremdedomain.de.
fremdedomain.de mail exchanger = 5 mx2.fremdedomain.de.
fremdedomain.de mail exchanger = 10 mx3.fremdedomain.de.
fremdedomain.de mail exchanger = 10 mx4.fremdedomain.de.

Authoritative answers can be found from:
fremdedomain.de nameserver = ns3.fremdedomain.de.
f...

Mann kann dann den Server mit der kleinsten MX Nummer nehmen (vorne dran die 5 in meinem Beispiel).
Sollten mehrere Server die gleiche Nummer haben, kann einer von den beiden genommen werden.

An genau diesen Server richten wir unser Mail nun. Als erstes müssen wir nun eine Verbindung öffnen mit Telnet:

telnet mx1.fremdedomain.de 25

Nachdem wir Enter gedrückt haben bekommen wir eine Rückmeldung und der fremde Server erwartet weiteren Input.

Wichtig ist nun, das man KLEINERLEI Zeichen oder Enter drückt in dieser Phase wo nicht sein sollte. Ein falsches Zeichen und das Protokoll sieht ein Fehler und wirft einem nach ca. 30-60 Sekunden raus mit „Connection closed by foreign host.“.

Wenn der Server nun so schön auf unseren Input wartet, geben wir folgende Begrüssung ein, wo wir mit einem Enter abschliessen:

HELO fremdedomain.de

Als Rückmeldung gibt es dann ein freundliches Hallo zurück 🙂

Nun geben wir den Absender ein, was wir mit einem Enter abschliessen:

MAIL FROM:ich@meinedomain.de

Der Server sollte nun melden das die Absenderadresse in Ordnung ist: „250 ich@meinedomain.de….Sender OK“

Als nächstes sagen wir, wohin das Mail sollte und schliessen auch die Zeile mit einem Enter ab:

RCPT TO: irgendwer@fremdedomain.de

Auch dies bekommen wir zurück bestätigt mit „250 irgendwer@fremdedomain.de“.

Als nächstes schreiben wir DATA und bestätigen mit einem Enter und anschliessend geben wir den Titel an und bestätigen diesen mit zwei Enter:

DATA
Subject: Hier kommt der Titel der E-Mail hin
 

Anschliessend können wir den Text des Mail schreiben. Was nun wichtig ist, ist das man sich auslassen kann mit schreiben und mit Enter wie man möchte.
Wenn der Text fertig ist, gehen wir auf eine leere Linie (Enter) und geben ein Punkt ein ohne sonstigen Text und schliessen den mit zwei Enter ab:

Hier ist dein Test.
Hier vielleicht auch noch, man darf also viel Schreiben 😉
.
 

Dann bestätigt der Mailserver dies mit „Queued mail for delivery“.

Die Verbindung beenden können wir nun mit

QUIT

was wir mit einem Enter abschliessen.

Der ganze Vorgang sieht dann ungefähr so aus:

:~# telnet mx1.fremdedomain.de 25
Trying 65.55.92.184…
Connected to mx1.fremdedomain.de.
Escape character is ‚^]‘.
220 snt0-mc4-f30.Snt0.fremdedomain.de Sending unsolicited commercial or bulk e-mail to Microsoft’s computer net work is prohibited. Other restrictions are found at http://privacy.msn.com/Anti-spam/. Violations will resu lt in use of equipment located in California and other states. Thu, 25 Mar 2010 01:59:20 -0700
HELO fremdedomain.de
250 snt0-mc4-f30.Snt0.fremdedomain.de (3.10.0.73) Hello [xx.xxx.xxx.xxx] MAIL FROM:ich@meinedomain.de
250 ich@meinedomain.de….Sender OK
RCPT TO: irgendwer@fremdedomain.de
250 irgendwer@fremdedomain.de
DATA
354 Start mail input; end with .
Subject: test message

This is a test message you will not see a response from this command.
.
250 Queued mail for delivery

QUIT
221 snt0-mc4-f30.Snt0.fremdedomain.de Service closing transmission channel
Connection closed by foreign host.

Viel Spass beim Mail verschicken. 🙂

About Stefan

avatar

Ein männlicher IT Nerd, durchstöbert das Web nach speziellen Gadgets, unentbehrlicher Software und Alles was man im IT Sektor nicht verpassen darf.

Immer hilfsbereit wenn Probleme zu lösen sind oder das Unmögliche umgesetzt werden sollte.

Weitere interessante Artikel

User Profile migrieren oder backuppen

~0 Min. LesezeitFirmen synchronisieren User Profile über die Domain. Privatpersonen verlieren oft das User Profil, …

PHP Trojaner – Wettbewerb

~2 Min. LesezeitIn der Serie der PHP Trojaner gibt es noch viele weitere Möglichkeiten zum …

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

eMail-Benachrichtigung bei weiteren Kommentaren.
Auch möglich: Abo ohne Kommentar.