Microsoft hat das SMTP-Feature für Windows Server schon lange abgekündigt und entfernt es nun aus der Version 2025. Eine leichtgewichtige Open-Source-Alternative ist E-MailRelay, das es auch für Linux gibt und in Windows eine einfache GUI für die Konfiguration bietet. Es beherrscht die gängigen Sicherheitsoptionen, kooperiert aber auch mit simplen Clients.
Das in Windows Server integrierte SMTP-Feature war nie dazu gedacht, einen vollwertigen Mail-Server zu betreiben und beispielsweise einen Exchange-Server zu ersetzen. Vielmehr bot er eine einfache Möglichkeit, etwa wichtige Systemmeldungen per Mail an Admins zu versenden.
Als Alternative kommen neben E-MailRelay auch andere kostenlose Tools in Frage, unter anderem der komfortable hMailServer. Dessen Entwicklung wurde jedoch schon vor drei Jahren eingestellt, was für einige Anwender gegen einen Einsatz dieser Software sprechen dürfte.
Auch wenn E-MailRelay mehr Funktionen als das Windows-Feature bietet, so eignet es sich dennoch für ähnliche Szenarien und ist nicht als Server für die geschäftliche Mail gedacht. Die Software läuft auch als Dienst, so dass sie unabhängig von einem angemeldeten Benutzer funktioniert.
Installation
Nach dem Download des ZIP-Archivs von GitHub entpackt man die darin enthaltene Verzeichnisstruktur und führt dann emailrelay-setup.exe aus. Der grafische Wizard erfüllt zwei Aufgaben, nämlich das Kopieren der Ordnerstruktur an den Installationsort des Programms sowie das Erstellen einer Batch-Datei, die das Tool mit den konfigurierten Optionen aufruft.
Nach der Auswahl der Konfigurations-, Spool- und Installationsverzeichnisse muss man sich für einen Installationstyp entscheiden. Zur Auswahl stehen hier POP3 und SMTP, wobei man für das Weiterleiten von Systemmeldungen SMTP reicht. Darüber hinaus legt man hier fest, wann und wie oft der Server die Warteschlange abarbeiten soll.
Hier bietet sich die Option When client disconnects an, so dass Mails zügig rausgehen, ohne dass der Server die Warteschlage in regelmäßigen Intervallen prüfen muss.
Anschließend folgen zwei Dialoge, die das Verhalten von E-MailRelay als SMTP-Server und als SMTP-Client festlegen. Die Server-Einstellungen bestimmen seine Kommunikation mit Mail-Clients, wobei es sich dabei natürlich auch um Scripts handeln kann, die häufig nur limitierte Optionen bieten.
Grundsätzlich kann man hier sowohl auf die Verschlüsselung als auch die Authentifizierung verzichten, abhängig davon, welche Informationen man zu versenden gedenkt und welche Fähigkeiten die Clients besitzen.
Standardmäßig erlaubt e-Mailrelay ohnehin nur Verbindungen von Clients aus dem gleichen Subnet, was die Gefahr verringert, dass es für den Spam-Versand missbraucht wird. Möchte man die Kommunikation über TLS verschlüsseln, dann benötigt man ein Zertifikat im PEM-Format. Dieses kann man bei den Einstellungen für den SMTP-Server angeben.
Sollen sich die Clients über Name und Passwort authentifizieren, dann legt das Programm die Credentials in der Datei emailrelay.auth ab, und zwar mittels Base64 kodiert. In einem PowerShell-Script kann man diese Anmeldedaten über den Parameter Credential an Send-MailMessage übergeben.
Für die Client-Konfiguration gibt man die Daten ein, die E-MailRelay benötigt, um Nachrichten über einen SMTP-Server zu versenden. Hier sind die Ermessenspielräume geringer, weil der Betreiber des Mail-Dienstes bestimmt, welche Kriterien der Client erfüllen muss.
Das betrifft vor allem die Authentifizierung sowie eine zumeist erforderliche Verschlüsselung der Verbindung. Auch die hier eingegebenen Anmeldedaten landen in der Datei emailrelay.auth.
Über die anschließend angezeigten Dialoge bestimmt man, welche Informationen im Logfile mitgeschrieben werden sollen und an welche IP-Adresse sich der Server bindet. Dort kann man auch Clients aus anderen Netzwerken zulassen.
Schließlich passt man noch die Startoptionen für E-MailRelay an. Entscheidet man hier, dass es automatisch mit dem Betriebssystem starten soll, dann läuft das Programm als Service.
Nach Abschluss der Installation führt man die erwähnte emailrelay-start.bat aus dem Verzeichnis %ProgramData%\E-MailRelay aus, um das Programm zu starten.
Einstellungen nachträglich anpassen
Wenn man die Einstellungen später ändern möchte, dann kann man anhand der mitgelieferten Dokumentation die Parameter für den Programmstart in dieser Batch-Datei manuell anpassen oder dafür emailrelay-gui.exe aufrufen. Letzteres durchläuft den gleichen Assistenten wie bei der ursprünglichen Installation.
Wenn das Programm als Service läuft, dann muss man diesen beenden und neu starten, damit die Änderungen wirksam werden:
Get-Process emailrelay | Stop-Process
Start-Process emailrelay
Fehlersuche
Für einen ersten Test kann man eine Mail per PowerShell verschicken. Ein Aufruf könnte so aussehen:
Send-MailMessage -Body "Test" -From user@contoso.com `
-SmtpServer mailrelay.contoso.com-Subject "Test-Mail" `
-To admin@contoso.com -Credential "maxm"
Wenn die Nachricht nicht ankommt, dann sollte man erst einen Blick in die Log-Datei werfen. Was dort protokolliert wird, hängt von den Einstellungen ab, die man während der Installation konfiguriert hat.
Die Standardwerte sorgen jedoch bereits dafür, dass man hier den Ablauf des Versands im Detail nachverfolgen kann.
Erhält man hier keinen entscheidenden Hinweis, dann wechselt man in das Spool-Verzeichnis. Wird eine Nachricht vom externen SMTP-Server zurückgewiesen, dann findet sich dort eine Datei mit dem gleichen Namen wie die zwischengespeicherte Mail, aber mit der Endung ".bad", in die man einen Blick werfen sollte.
Zusammenfassung
E-MailRelay ist ein kostenloser SMTP-Server, der sich als Ersatz für das SMTP-Feature in Windows Server eignet. Im Unterschied zu diesem läuft das Open-Source-Tool auch auf Windows 10 / 11 und unter Linux.
Die Konfiguration unter Windows fällt dank des grafischen Assistenten relativ leicht. Er übersetzt die Einstellungen in die entsprechenden Parameter und schreibt den Aufruf des Programms in eine Batch-Datei. Diese startet E-MailRelay mit den konfigurierten Optionen, wobei es standardmäßig als Service läuft.
Das Versenden von Systemnachrichten ist oft die Aufgabe von Scripts oder einfachen Tools, die manchmal nicht einmal die Authentifizierung an einem SMTP-Server unterstützen. E-MailRelay lässt sich auch für solche Szenarien nutzen.