Exchange+Outlook:SMTP über Telnet testen
Aus znilwiki
Wer es sich leicht machen nimmt mein Tool: TelnetSMTP-TestTool.exe (Telnet SMTP Test Tool)
Das Tool ist ein telnet Client der die nachfolgend beschriebenen Befehle per Schaltflächen zur Verfügung stellt und sogar die Base64 Umrechnung des Benutzernamen und des Passwortes übernimmt.
Anhand einer Beispielsitzung schauen wir uns die Kommunikation einmal an:
Wir verbinden und mit einem telnet-client, z.B. Putty mit dem Mailserver. Die Verbindung erfolgt dabei in der Regel auf Port 25. Dies ist überlicherweise der Port für den Dienst SMTP (Simple Mail Transfer Protocoll)
Server: 220 smtp.1und1.de (mrbap0) Welcome to Nemesis ESMTP server Wir: HELO test.znil.net Server: 250 smtp.1und1.de
HELO ist quasi die gegenseitige Begrüßung, Alternativ geht
Wir: EHLO test.znil.net Server: 250-smtp.1und1.de 250-STARTTLS 250-AUTH LOGIN PLAIN 250-AUTH=LOGIN PLAIN 250-PIPELINING 250-SIZE 120000000 250 HELP
EHLO ist das selbe wie HELO, nur wollen wir das ESMTP Protokoll nutzen, das Enhanced SMTP Protokoll
Wir: AUTH LOGIN Server: 334 VXNlcm5hbWU6 Wir: bWF4Lm11c3Rlcm1hbm5Aem5pbC5uZXQ= -> Benutzername Server: 334 UGFzc3dvcmQ6 Wir: ZHVtbXkmNg== -> Passwort Server: 235 Authentication successful
AUTH LOGIN bedeutet das wir uns Anmelden wollen - je nach Mailserver kann dieser Schritt auch übersprungen werden.
Nach unserem Befehl melden der Server sich kryptisch zurück.
Nun in einer einzelnen Zeile den Benutzernamen - aber Base64 kodiert.
Es folgt wieder eine kryptische Meldung.
Nun das Passwort, wiederum Base64 kodiert
Wir: MAIL FROM:<max.mustermann@znil.net> Server: 250 OK
Damit geben wir an wer der Absender ist. die < > können ggf. auch weggelassen werden, eventuell sieht es aber später im Mailclient komisch aus.
Wir: RCPT TO:<bernhard@znil.net> Server: 250 OK
RCPT TO: für den Empfänger der Email. Gibt es mehrere Empfänger so einfach eine weitere RCPt TO Zeile für jeden weiteren eingeben
Wir: DATA Server: 354 Enter mail, end with "." on a line by itself
Wir sind fertig mit den Empfänger und wollen nun die eigentliche Nachricht verfassen
Wir: From: max.mustermann-znil.net <max.mustermann@znil.net> To: bernhard-znil.net <bernhard@znil.net> Subject: Testmail 21:22:21 Der Lieutnant von Laeuten, befahl seinen Leuten, nicht eher zu laeuten, bis der Lieutnant von Laeuten, seinen Leuten, das Laeuten befahl. . Server: 250 Message 0Mg0KT-1Pzi5t12ov-00O59s accepted by mrbap0.kundenserver.de
Die From: und To: Zeilen geben den Anzeigenamen an, in < > dahinter ggf. die Antwortadresse
Subject: ist dann der Betreff. Wichtig ist das diese Zeilen unmittelbar auf DATA folgen müssen.
Nach einer einzelnen Leerzeile beginn der eigentliche Mailtext. Wir beenden ihn mit einer einzelnen
Leerzeile gefolgt und einem einzelnen Punkt in einer Zeile.
Wir: QUIT Server: 221 OK
Damit melden wir uns wieder ab und schliessen die Sitzung.
Eine Liste der möglichen Antwort-Codes: (gemäß RFC 2821):
500 Syntax error, command unrecognized (This may include errors such as command line too long) 501 Syntax error in parameters or arguments 502 Command not implemented (see section 4.2.4) 503 Bad sequence of commands 504 Command parameter not implemented 211 System status, or system help reply 214 Help message (Information on how to use the receiver or the meaning of a particular non-standard command; this reply is useful only to the human user) 220 <domain> Service ready 221 <domain> Service closing transmission channel 421 <domain> Service not available, closing transmission channel (This may be a reply to any command if the service knows it must shut down) 250 Requested mail action okay, completed 251 User not local; will forward to <forward-path> (See section 3.4) 252 Cannot VRFY user, but will accept message and attempt delivery (See section 3.5.3) 450 Requested mail action not taken: mailbox unavailable (e.g., mailbox busy) 550 Requested action not taken: mailbox unavailable (e.g., mailbox not found, no access, or command rejected for policy reasons) 451 Requested action aborted: error in processing 551 User not local; please try <forward-path> (See section 3.4) 452 Requested action not taken: insufficient system storage 552 Requested mail action aborted: exceeded storage allocation 553 Requested action not taken: mailbox name not allowed (e.g., mailbox syntax incorrect) 354 Start mail input; end with <CRLF>.<CRLF> 554 Transaction failed (Or, in the case of a connection-opening response, "No SMTP service here") 211 System status, or system help reply 214 Help message (Information on how to use the receiver or the meaning of a particular non-standard command; this reply is useful only to the human user) 220 <domain> Service ready 221 <domain> Service closing transmission channel 250 Requested mail action okay, completed 251 User not local; will forward to <forward-path> 252 Cannot VRFY user, but will accept message and attempt delivery 354 Start mail input; end with <CRLF>.<CRLF> 421 <domain> Service not available, closing transmission channel (This may be a reply to any command if the service knows it must shut down) 450 Requested mail action not taken: mailbox unavailable (e.g., mailbox busy) 451 Requested action aborted: local error in processing 452 Requested action not taken: insufficient system storage 500 Syntax error, command unrecognized (This may include errors such as command line too long) 501 Syntax error in parameters or arguments 502 Command not implemented (see section 4.2.4) 503 Bad sequence of commands 504 Command parameter not implemented 550 Requested action not taken: mailbox unavailable (e.g., mailbox not found, no access, or command rejected for policy reasons) 551 User not local; please try <forward-path> 552 Requested mail action aborted: exceeded storage allocation 553 Requested action not taken: mailbox name not allowed (e.g., mailbox syntax incorrect) 554 Transaction failed (Or, in the case of a connection-opening response, "No SMTP service here")
Externe Links hierzu:
http://blog.computer-tipps.info/2006/09/27/smtp-auth-mit-telnet-testen/ http://www.netgeiger.de/Knut/Tips_Tricks/Computer/E-Mail/smtp.php http://www.msxfaq.de/internet/smtptelnet.htm http://www.ietf.org/rfc/rfc2821.txt
Eigene Beschreibung folgt - ich programmiere gerade ein Mimencode Tool dazu. Schritt 2 wird ein Mailtest-Programm.