Windows SMTP-Server richtig einrichten

Achtung. Diese Beschreibung ist NICHT zutreffend, wenn Sie Exchange 2000/2003 auf dem Server installiert haben.

Exchange 2000/2003 nutzt als Transportengine den Windows SMTP-Server, der durch entsprechende EventSinks umfangreich erweitert wird. Aber auch ohne Exchange ist der Windows SMTP-Server ziemlich flexibel und eignet sich für viele Einsatzzwecke. Daher sollten Sie sich auch mit dem Windows SMTP-Server ein wenig auskennen:

Sie sehen, dass der Windows SMTP-Server vielseitig einsetzbar ist, wenn er denn richtig konfiguriert ist. Ein falscher Klick und Sie haben ein offenes Relay. Damit dies nicht passiert habe ich hier eine Schritt für Schritt Anleitung für die Konfiguration des virtuellen SMTP-Servers als Relay zwischen Internet und Exchange beschrieben:

Funktionsschaltbild

Am Ende der Konfigurationsschritte soll sich der Windows SMTP-Server wie auf folgendem Bild in die Kommunikation zwischen Exchange und Internet einbinden:

 

Die gelben Pfeile kennzeichnen die eingehende Richtung. Per Default nimmt der SMTP-Server Mails von überall an. Die Einstellung unter den Domains regelt indirekt auch die Weitergabe und damit das Relayverhalten von extern. Damit der interne Mailserver nach draussen senden darf, wird dessen IP-Adresse in den Relaybeschränkungen eingetragen.

Installation und Konfiguration

Vor der Konfiguration von NoSpamProxy und dem virtuellen SMTP-Server steht die Installation des virtuellen SMTP-Servers. Über die Systemsteuerung - Software ist der SMTP-Server als optionale Komponente auszuwählen.

Das Windows Setup kopiert benötigte Dateien von der Betriebssystem CD und schließt die Installation ab. Zur Konfiguration des virtuellen SMTP-Servers dient die Konsole für die Internet Dienste. Hier erscheint der virtuelle SMTP-Server als Eintrag unter den Internet Diensten.

In der Standardeinstellung nimmt der virtuelle SMTP-Server nur Mails für den eigenen Hostnamen an und legt diese in ein Verzeichnis ab. Der Server versucht ausgehende Mails per DNS zuzustellen aber ist kein offenes Relay.

Ausgehender Verkehr

Der wichtigste Einsatzfall eines virtuellen SMTP-Servers ist der Versand von Nachrichten in das Internet. NoSpamProxy selbst macht keine DNS-Auflösung oder Routing von Nachrichten, sondern erwartet ausgehend einen Mailserver, der die Nachrichten weiter leitet. Dies kann ein Smarthost eines Providers sein. In den meisten Fällen sind sie selbst aber für die direkte Zustellung der Nachrichten an die Empfänger im Internet zuständig. Wenn der Provider einen Smarthost mit Authentifizierung erfordert, ist ebenfalls ein virtuelle SMTP-Server das Mittel der Wahl.

In den Eigenschaften des virtuellen SMTP-Servers sind daher folgende Einstellungen durchzuführen

Verbindungseinstellungen

Auf diesem Port Empfängt der SMTP-Server Nachrichten. Wenn ein anderer Mailserver auf Port 25 schon Nachrichten annimmt, muss der SMTP-Server auf einen anderen freien Port (z.B.: 30) konfiguriert werden. Soll der Mailserver von außen nicht erreichbar sein, kann auch eine Firewall entsprechende Pakete blockieren.

Globale Einstellungen

Der virtuelle SMTP-Server hat z.B. eine Standardeinstellung von 2 MByte für die Größe eine Mail. Dies ist in den meisten Umgebungen zu gering und muss angepasst werden.

Zustellung

Für die Zustellung ausgehender Mails ist hier optional ein Smarthost einzutragen. In der Regel bleibt der Eintrag aber leer, wenn ihr Windows SMTP-Server die Mails über DNS zustellen soll

ACHTUNG: Wenn Sie auf dem gleichen Server Exchange 2000/2003 nutzen, dürfen Sie hier nichts eintragen. Mit Exchange sollten Sie besser einen SMTP-Connector mit Smarthost konfigurieren. Wenn Sie für bestimmte Domänen abweichende Einstellungen benötigen (z.B.: die eigenen Domänen) dann erfolgen diese später an anderer Stelle.

Zugriff

Hierüber steuern Sie, wer alles eine Mail an den Server senden darf. Wenn der SMTP-Server nut als Zwischenstation zwischen Internet und internem Mailserver genutzt wird, können Sie hier z.B.: die Erreichbarkeit von internen PCs verhindern . Das reduziert das Risiko, dass ein Wurm mit eigener SMTP-Engine von Intern ihren Server missbraucht.

Es ist möglich, auf einem Server zwei Instanzen des virtuellen SMTP-Servers zu betreiben um eingehende und ausgehende Nachrichtenströme zu trennen. Dies wird hier nicht weiter betrachtet.

Relaybeschränkungen

Damit ihr SMTP-Server nicht als offenes Relay missbraucht werden kann, sollten Sie hier auf jeden Fall nur die IP-Adressen eintragen, für die Sie Mails von intern nach extern weiter geben wollen, d.h. ein Relay für ALLE mögliche Zieladressen.

Beim Einsatz mit einem internen Mailserver wird hier die IP-Adresse des internen Mailservers konfiguriert. Die Funktion RELAY für eigene Domänen wird zu einem späteren Zeitpunkt an anderer Stelle konfiguriert.

Damit ist der virtuelle SMTP-Server den ausgehenden Verkehr konfiguriert. Nun könnten Sie ihren internen Mailserver schon so einstellen, dass er ausgehende Mails an diesen virtuellen SMTP-Server sendet.

Eingehender Verkehr

Aber auch in die Rückrichtung ist etwas Konfigurationsaufwand erforderlich. So kann es passieren, dass eine ausgehende Mail nicht zustellbar ist. Dann muss der virtuelle SMTP-Server einen Weg kennen, diese Unzustellbarkeiten sicher nach intern zustellen zu können. Der zweite Grund für diese Einstellungen ist gegeben, wenn der virtuelle Mailserver auch eingehende Verbindungen aus dem Internet annehmen und die Mails nach intern weiter leiten soll. Es kann wünschenswert sein, dass eingehende Mails abhängig von der Domäne an verschiedene Mailserver übertragen werden. In diesem Fall ist der SMTP-Server als Router für Nachrichten einsetzbar.

Um eingehende Mails über den virtuellen SMTP-Server zu leiten, sind folgende Einstellungen erforderlich:

Einrichten der Domänen

Alle internen Domänen müssen im virtuellen SMTP-Server unter „Domänen“ eingetragen werden.

Wählen Sie als Typ „Remote Domäne“ aus und tragen Sie den Domänennamen ein. Die Domäne erscheint dann in der Liste. Nun klicken Sie diesen Eintrag doppelt an, um die Details einzustellen

Hier können Sie nun abweichend von den globalen Einstellung zur Mailübermittlung den Server angeben, an den Mails für diese Domäne weitergegeben werden sollen. Dieser Eintrag stellt zudem sicher, dass Mails an diese Domäne als Relay weiter gegeben werden, selbst wenn die einliefernde IP-Adresse nicht für Relay berechtigt ist. Wird hier eine Domäne vergessen, dann betrachtet der virtuelle SMTP-Server diese als „extern“ und versendet die Mails an das Internet oder lehnt die Verbindung mit „550 5.7.1 Unable relay for“ ab. Pflegen Sie daher diese Liste gewissenhaft.

Ab sofort wird der virtuelle SMTP-Server alle Mails an ihn zu den definierten Mailservern weiter leiten auch wenn die einliefernde IP-Adresse nicht explizit für die Nutzung als Relay frei geschaltet ist. Die Konfiguration von Domänen im virtuellen SMTP-Server erklärt den Mailserver für diese Domänen für autoritativ, d.h. zuständig. Dieser Server ist dann für die Weiterleitung und das Queueing zuständig.

Nun müssen Sie nur noch sicherstellen, dass der virtuelle Mailserver zum einen seine Mails an den internen Mailserver zustellen kann (Firewall, IP-Routing, Namensauflösung etc.). Soll der Server aus dem Internet erreichbar sein, dann muss der MX-Eintrag auf eine offizielle IP-Adresse weisen und Verbindungen auf diese Adresse auf den Port 25 müssen zum virtuellen SMTP-Server durchgereicht werden. Dies kann durch Reverse-NAT, einen SMTP-Proxy oder direkt durch die offizielle IP-Adresse auf dem Server realisiert werden.

LDAP Routing

Eine Besonderheit gibt es bei eingehenden Routing. Der Windows SMTP-Server kann einen LDAP-Server befragen, um den nächsten Server für diese Adresse zu finden. Dazu müssen diese diese Konfiguration natürlich komplettieren:

Als Schema steht ihnen neben dem Active Directory noch SiteServer oder Exchange 5.5 zur Verfügung. Die Bindung kann anonym, unverschlüsselt, sicher per SSPI oder über das Dienstkonto des SMTP-Servers erfolgen. Bei "Unverschlüsselt" oder SSPI müssen Sie entsprechende Anmeldedaten zum Lesen des Verzeichnisdienstes angeben.

Leider konnte ich noch nicht genau heraus finden, was der Windows SMTP-Server hier genau abfragt. Meine Analysen mit Packetyzer haben mir zwar gezeigt, dass tatsächlich eine LDAP-Anmeldung erfolgt, aber eine LDAP-Abfrage konnte ich so nicht erkennen. Insofern kann es sein, dass diese Funktion nur Verteiler auflösen kann und ein Routing der Mails gar nicht vorgesehen ist.

Ausgehender Port verändern

Es ist sicher ein sehr seltener Fall, aber Sie können den Windows SMTP-Server auch anweisen, auf der Gegenseite nicht den Port 25 zu verwenden. Solche Konfigurationen sind oft der Fall, wenn auf einem Server mehrere Produkte installiert werden, die in einer SMTP-Kette verschaltet werden sollen und eine Beschränkung auf bestimmte IP-Adressen nicht greift.

Über diese Einstellung können Sie auch einen Exchange Server dazu bringen, ausgehende Mails über einen SMTP-Connector an ein Empfängersystem auf einem abweichenden Port zu senden. Damit die interne Kommunikation zwischen Exchange Servern und über Routinggruppenconnectoren nicht gestört wird, sollten Sie aber erst einen eigenen virtuellen SMTP-Server anlegen, dort den Zielport anpassen und im SMTP-Connector dann diesen neuen virtuellen SMTP-Server als lokalen Bridgehead einbinden

POP3

Seit Windows 2003 gibt es sogar einen POP3-Server, der den virtuellen SMTP-Server um Postfächer erweitert. Damit wird aus dem kleinen SMTP-Server sogar ein kompletter Mailserver für den Versand und Empfang von Nachrichten per SMTP und den Zugriff von Anwendern per POP3. Der virtuelle SMTP-Server kann aber selbst keine Mails per POP3 abholen. Adressbücher erhalten Sie durch den Zugriff auf das Active Directory.

Entwickler und Administratoren

Wenn Sie nun den virtuellen SMTP-Server auf ihrem Server als Dienst zum Versand von Statusmails per ASP o.ä. einrichten wollten, dann sollten Sie den Server nicht nur installieren sondern auch konfigurieren. Dazu zählen im wesentlichen zwei Einstellungen:

Fehlersuche und Protokollierung

Für die Fehlersuche und Überwachung können Sie im virtuellen SMTP-Server das Logging einschalten. Beachten Sie bitte, dass Sie auf der Karteikarte „Erweitert“ die gewünschten Felder aktivieren.

Prüfen Sie weiterhin, dass die Protokoll nicht ihre Festplatte unkontrolliert voll schreibt. Zusätzlich können Sie im Eventlog nach Fehlern suchen.

Weitere Links

Keywords:How-to Anleitungen Windows SMTP Relay