Alle Beiträge von Don Matteo

lebt in der Schweiz, ist System Engineer MCP bei A-Enterprise GmbH. Mitglied des UNBLOG Knowledge Network. Author und Blogger zu den Themen, Tutorials für Linux und Open Source.

SMTP-Test und Diagnose-Tool

SMTP-Console ist ein SMPT-Test Tool für einfache Diagnose und Fehlerbehebung oder Überprüfung von SMTP-Verbindungen.

Das kostenlose SMTP-Console Tool hilft bei der Diagnose und ermöglicht die einfache Fehlersuche und das Testen von SMTP-Verbindungen ohne in Telnet Kommandos eingeben zu müssen. Es unterstützt sowohl offene als auch sichere (SSL/TLS) SMTP-Serververbindungen.

SMTP-Console für SMTP Test und Diagnose

SMTP Test und Diagnose Tool, SMTP-Console Commands

Das Tool enthält eine integrierte Bibliothek mit Befehle wie EHLO, MAIL FROM, RCPT TO, DATA. Die freie Software SMTP-Console von SocketLabs für Windows kann hier heruntergeladen werden.

Wenn Probleme beim Herstellen einer Verbindung oder beim versenden von E-Mails mit einem SMTP-Server bestehen, kann der Fehler schnell diagnostiziert werden, die Verbindung zum SMTP-Relay-Server kann wie folgt überprüft und getestet werden.

SMTP-Fehler mit einem Mailserver können sein!

  • Der SMTP-Server sendet nicht ?
  • Kommunikation zum SMTP-Server ist blockiert, Firewall ?
  • Warum ist die Verbindung zum SMTP-Server fehlgeschlagen ?
  • SMTP-Server erfordert SMTP-Auth Authentifizierung ?
  • Wie eine SSL/TLS oder STARTTLS Verschlüsselung aufbauen ?
  • Antwortet der Server mit dem richtigen Hostnamen ?
  • Der SMTP-Server antwortet mit Fehler E-Mail ?

SMTP-Relay-Server Verbindungsprobleme Testen mit SMTP-Console als Telnet-Alternative

Als erstes geht man im Menü auf Actions – Connect um die Verbindung zum SMTP-Server herzustellen.

Nach dem die Verbindung zum SMTP-Server hergestellt ist, kann über Commands mit EHLO ein Dialog gestartet werden.

Die SMTP-Server Commands in folgender Reihenfolge:

EHLO example.com
MAIL FROM:<hostmaster@example.com>
RCPT TO:<recipient@domain.net>
DATA
Body Message zB. hello this is s test message!
.
RSET
QUIT

  Nach DATA folgt die Eingabe der Nachricht, ein Punkt (.) in einer neuen Zeile und drücken der Eingabetaste versendet die E-Mail.

Wird beim SMTP-Server eine Authentifizierung über STARTTLS erforderlich, öffnet man erst eine Verbindung zum Server unter Actions – Connect, dann wählt man StartTls und unter Commands Helo mit der Eingabe zB. HELO domain.com, dann unter Actions Login bei User ein gültiges Benutzerkonto mit Passwort eintragen, als Type AUTH-LOGIN wählen. Nun kann unter Commands mit Mail From und Rcpt To gefolgt von Data eine Test-Nachricht erstellt werden, die Nachricht muss mit einem Punkt (.) beendet werden, danach wird der SMTP-Status Code 200 Ok queued as <Queue ID> ausgegeben, die E-Mail wurde versendet.

  Die Test-E-Mail enthält keine Absender Adresse.

SMTP-Server Test mit Telnet und Port 25

Bei Windows ist der Telnet-Client zwar vorhanden, aber ab Windows 10 standardmäßig nicht aktiviert (als Feature nicht installiert). Das Feature Telnet-Client lässt sich am einfachsten aus der PowerShell installieren.

Install-WindowsFeature "Telnet-Client"

PowerShell als Administrator öffnen für das hinzufügen von Features.

Add-WindowsFeature -Name Telnet-Client

  Möglicherweise ist der frühere PowerShell Befehl erforderlich.

Alternativ kann das Windows CPL-Modul verwendet werden, hierzu geht man über die Tasten Win+R und der ausführung control appwiz.cpl,,2

Telnet verwendet standardmäßig Port 23, daher muss am Ende des Befehls open die Portnummer angegeben werden. Ein SMTP-Server verwendet üblicherweise die Ports 25, 465 und 587.

Sobald die Verbindung zum SMTP-Server hergestellt ist, funktionieren Backspace und Delete nicht, es müssen hier Base64-Werte eingegeben werden, damit der SMTP-Server die Anweisungen akzeptiert. Werden bei der Eingabe Fehler gemacht, drücke die Eingabetaste und beginne erneut.

C:\> telnet
Microsoft Telnet> set localecho
Microsoft Telnet> set logfile c:\temp\telnetlog.txt
Microsoft Telnet> OPEN smtp.server.net 25
220 smtp.server.net ESMTP
EHLO example.com
250-smtp.server.net
250-PIPELINING
250-SIZE
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN CRAM-MD5 DIGEST-MD5
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
MAIL FROM:<hostmaster@example.com>
250 2.1.0 Ok
RCPT TO:<recipient@domain.net> NOTIFY=success,failure
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
Subject: test message from console

hello this is a test message!
.
250 2.0.0 Ok: queued as 98FCE1766
QUIT
221 2.0.0 Bye

  Zwischen dem Betreff: (Subject) und dem Nachrichtentext ist eine Leerzeile erforderlich.

Es erscheint die Meldung OK gefolgt von einem Queue ID-Code. Die E-Mail wurde gesendet. Überprüfe nun den Posteingang des E-Mail-Kontos, an das die E-Mail gesendet wurde, um zu bestätigen, dass der Vorgang funktioniert hat.

  Der optionale NOTIFY-Befehl gibt die bestimmten Übermittlungsstatusbenachrichtigungen (DSN) an (auch als Bounce-Nachrichten, Unzustellbarkeitsberichte oder Unzustellbarkeitsberichte bezeichnet), die SMTP bereitstellen muss. In diesem Beispiel wird eine DSN-Nachricht für eine erfolgreiche oder fehlgeschlagene Nachrichtenübermittlung angefordert.

Windows Terminal als Administrator öffnen

Windows Terminal Preview 1.15 ist mit einem aktualisierten Design der Benutzeroberfläche in den Einstellungen, und mit einer neuen Profileinstellung „erhöhte rechte“ und einer überarbeiteten Textrendering-Engine erhältlich.

Im Unterschied zum herkömmlichen Konsolehost führt Windows Terminal die verschiedenen Kommando­zeilen in Tabs aus, wobei jede Shell Session über ein eigenes Profil konfiguriert wird.

In Windows Terminal lassen sich nun die Erhöhung der Privi­legien für einzelne oder alle Shells konfi­gurieren. Zu den Einstellungen eines Profils gehört die Option, die jeweilige Shell mit Admin Rechten zu starten. Per Voreinstellung öffnet Windows Terminal jedoch alle automatisch eingerichteten Profile im Kontext des aktuell angemeldeten Kontos.

Terminal Profil als Administrator konfigurieren

Um eine Shell für administrative Anforderungen zu konfigurieren, kann man die Funktion zum Duplizieren vorhandener Profile nutzen. Dazu öffnet man die Einstellungen und nutzt den Befehl Neues Profil hinzufügen.

Im folgenden Dialog kann ein bestehendes Profil selektiert werden, das kopieret werden soll, anschließend klickt man auf Duplikat. Es öffnen sich die Einstellungen dieses neuen Profils und es lässt sich dort dessen Namen ändern und die Option Dieses Profil als Administrator ausführen aktivieren.

Dieses neue Profil erscheint nach dem Speichern gleich in der Drop-down-Liste und kann hier direkt gestartet werden. Wie erwartet erscheint der Dialog für die Authentifizierung unter einem administrativen Konto.

Nach erfolgreicher Anmeldung öffnet das Kommandozeilen Terminal aber nicht in einem neuen Tab, sondern in einem eigenen Fenster. Was daher kommt, dass das „elevated“ Terminal Profil als child process von Windows-Terminal gestartet wird.