SMTP und POP3 mit Windows Server 2003

25.09.2003 von THOMAS WOELFER 
Windows Server 2003 ist der erste Server von Microsoft, der einen kompletten SMTP- und POP3-Dienst mitbringt. Wir zeigen, wie Sie diese Dienste richtig installieren und worauf Sie bei der Konfiguration achten müssen.

Der Windows Server 2003 enthält sowohl einen SMTP- als auch einen POP3-Server-Dienst. POP3 ist dabei ein Novum, denn bisher gab es nur einen eher experimentellen POP3-Dienst aus dem SDK, aber keinen offiziellen Support für POP3 in den Server-Versionen von Windows.

Der SMTP-Dienst nimmt die Mails von anderen Servern oder lokalen Mail-Clients entgegen und verteilt sie dann im Falle von ausgehenden Mails als Smart-Relay an die entsprechenden Mailserver der Empfänger oder im Falle eingehender Mails in die lokalen Postfächer der Benutzer. Von dort kann der lokale Benutzer sie mit seinem Mail-Programm über den POP3-Dienst abholen.

Bisher waren Administratoren von Windows-Netzen immer auf Produkte von Drittanbietern angewiesen, um den lokalen Benutzern Mailfunktionen zur Verfügung stellen zu können, da eine entsprechende Funktionalität in Windows einfach fehlte. Mit Windows Server 2003 wird das nun erstmals anders, da hier die Basiskomponenten schon direkt im Betriebssystem integriert sind. Wie Sie diese Komponente richtig installieren und konfigurieren, zeigt dieser Beitrag.

Installation

Sowohl der SMTP- als auch der POP3-Dienst werden bei der Installation des Windows Server 2003 zumindest in der "Standard Edition" nicht automatisch mit installiert, da es ein Bestandteil der Secure-Computing-Idee von Microsoft ist, per Default nur die notwendigsten Dienste zu installieren und zu starten.

Um diese Dienste verwenden zu können, benutzen Sie daher zunächst den Assistenten zur Konfiguration des Servers. Dort wählen Sie den Befehl zum Hinzufügen einer Funktion und wählen dann aus der Liste der angebotenen Funktionen die Funktion "Email-Server" aus.

Dabei können Sie einen Stand-alone-Mailserver installieren oder ihn in ein Active Directory integrieren. Bei der zweiten Variante erfolgt die Verwaltung der Mail-Accounts einfach über das Management der Benutzerkonten im Active Directory - im anderen Fall haben die vom POP3-Server verwalteten Mailboxen nichts mit den Benutzer-Accounts innerhalb der Domäne zu tun.

Konfiguration der Dienste

Die Installation der Mailserver-Komponente alleine reicht nicht aus, um tatsächlich mit E-Mail arbeiten zu können. Stattdessen ist es erforderlich, die beiden Dienste noch etwas von Hand zu konfigurieren.

Dabei hat Microsoft dem POP3-Dienst eine eigene Konfigurationskonsole spendiert, wohingegen der SMTP-Dienst über die IIS-Verwaltung zu konfigurieren ist. Nach der Installation finden Sie daher einen neuen Menüeintrag für den POP3-Server im administrativen Menü, aber keinen für den SMTP-Server: Wenn Sie diesen konfigurieren wollen, müssen Sie die Konsole zur Konfiguration des IIS öffnen.

Der SMTP-Dienst ist auch für sich allein eine hilfreiche Sache. Wenn Sie beispielsweise eine Webseite auf Ihrem Server betreiben und dort ein Formular für den E-Mail-Kontakt anbieten, können Sie diese Mail vom SMTP-Dienst zustellen lassen: Ein POP-Server ist dafür nicht notwendig. Ferner können Sie den SMTP-Dienst auch zum Transport von E-Mails, die sonst per Script erzeugt werden, verwenden. So ein Script lässt sich zum Beispiel für regelmäßige Backups von einigen Dateien per E-Mail einsetzen, oder aber Sie benutzen das Script, um einzelne Dateien einfach von der Kommandozeile per E-Mail zu versenden.

Das ist mit dem SMTP-Server relativ einfach, da dieser über die CDO-Objekte für Scripting direkt nutzbar ist. Unter Windows 2000 standen auch die CDONTS-Objekte zur Verfügung. Windows 2003 Server bietet nur noch CDO. Um genau zu sein: Sogar eigene Event-Behandlungen lassen sich per Script an den SMTP-Server binden. Damit ist zum Beispiel ein eigener Content-Filter möglich, oder Sie schreiben ein Script, mit dem Sie auf bestimmte eingehende E-Mails automatisiert reagieren können.

SMTP per Script verwenden: Ein Beispiel

Eine einfache Version eines VBS-Scripts, das den SMTP-Dienst nutzt, um von der Kommandozeile eine Mail zu versenden, könnte so aussehen:

Dim ArgObj
Set ArgObj = WScript.Arguments
dim oMsg
set oMsg = CreateObject("CDO.Message")
oMsg.To = ArgObj.Item( 0)
oMsg.From = "IhrAbsenderHier@domain.tld"
oMsg.Subject = ArgObj.Item( 1)
oMsg.TextBody = ArgObj.Item( 2)
oMsg.Send

Das Script erwartet drei Parameter: Der erste ist die gewünschte Empfängeradresse, der zweite der Text der Betreffzeile, und der dritte ist der Inhalt der Mail. Die Betreffzeile und den Textkörper müssen Sie auf der Kommandozeile in Anführungszeichen setzen, wenn mehrere Wörter enthalten sein sollen.

Mit wenigen Erweiterungen können Sie dieses Script natürlich auch verwenden, um Dateien als Attachments zu versenden: Alles, was dazu benötigt wird, ist ein etwas aufwendigeres Auslesen der Parameter.

Wenn man einen SMTP-Server betreibt, sind einige Dinge zu berücksichtigen. Im Besonderen ist es wichtig, dass nur diejenigen Personen Zugriff auf den Server haben, von denen man dies wünscht. Der Zugriff auf den Server muss also auf die eine oder andere Art beschränkt werden. Dazu bietet der SMTP-Dienst von Windows Server 2003 verschiedene Optionen. Auch der Versand von Mail erweist sich häufig als sehr unzuverlässig. Zielserver sind mitunter nicht erreichbar, wodurch eine zu versendende Mail nicht weitergeleitet werden kann.

Die möglichen Ursachen dafür sind vielfältig: Der Zielserver kann momentan down sein, eine Route zum Server falsch gesetzt, die eigene Internet-Verbindung nicht verfügbar sein oder vieles mehr. Daher muss man auch konfigurieren, wie der SMTP-Server versuchen soll, Mails im Fehlerfall erneut zuzustellen. Auch dazu bietet der SMTP-Dienst verschiedene Optionen.

Die unterschiedlichen Konfigurationsoptionen des SMTP-Dienstes finden Sie in der Management-Konsole des IIS unter dem Zweig "Virtueller Standardserver für SMTP".

POP3 mit eigenständiger Konsole

Den POP3-Service verwalten Sie über eine eigene Konsole aus dem administrativen Menü. Am einfachsten ist die Verwaltung, wenn Sie sich innerhalb einer Netzwerkumgebung mit Active Directory befinden.

Um ein neues Postfach einzurichten, klicken Sie in der POP3-Konsole auf die Domain, für die Sie das Postfach einrichten möchten. Im Normalfall wird das die lokale Domain sein, die bei der Einrichtung des POP3-Servers automatisch erzeugt wird.

Sie brauchen bloß den Namen des Postfachs sowie ein Passwort anzugeben. Der POP3-Service erzeugt dann einen Benutzer im Active Directory für dieses Postfach. Bei diesem Benutzer handelt es sich dann um einen ganz normalen AD-Benutzer, mit dem kleinen Unterschied, dass er mit seinem AD-Passwort auch E-Mail vom POP-Server abholen kann.

Nun wird es im Normalfall allerdings so sein, dass Sie ein Postfach für einen bereits vorhandenen Benutzer anlegen wollen. Dazu schalten Sie einfach die Option "Einen für dieses Postfach assoziierten Benutzer anlegen" aus. Als Namen für das Postfach geben Sie dann den Namen eines vorhandenen AD-Account ein. Leider ist die Integration in das AD hier noch nicht ganz so weit vorangeschritten, wie man es sich wünschen würde: So gibt es an dieser Stelle beispielsweise keine Liste der vorhandenen Benutzer - und in der AD-Konsole für die Benutzerverwaltung findet sich keine integrierte Möglichkeit, um eine Mailbox anzulegen.

Wenn Sie Ihren Windows Server 2003 zudem als Router oder als Router mit NAT und Firewall verwenden, müssen Sie in der Firewall noch sicherstellen, dass der SMTP- und der POP3-Server erreichbar sind. Bei POP3 reicht es aus, wenn Sie den Zugriff darauf über das interne Interface zulassen. Der SMTP-Server sollte auch von außen erreichbar sein, damit andere SMTP-Server Mails dort abliefern können. (mha)