Mailserver mit Spamfilter

Das OpenSuse Linux 10.1 von der Heft-DVD eignet sich nicht nur für den Desktop. Mit ein paar Zusatzpaketen wird daraus ein Mail-Server, der alle E-Mails auf Virenprüft, Spam filtert, sauber sortiert und ganz nebenbei als zentrale Postsammelstelle dient.

In Pocket speichern vorlesen Druckansicht
Lesezeit: 34 Min.
Von
  • Oliver Lau
Inhaltsverzeichnis

Dieser Artikel ist ein Vorabdruck aus dem c't-Special "Linux", das am 10. Juli erscheint. Das Sonderheft kostet 8,50 Euro und ist am gut sortierten Zeitschriftenhandel erhältlich. Auch kann es über den heise-Shop bestellt werden.

Das neue c't-Special Linux

Seit Monaten steht der ausgemusterte, aber noch voll funktionstüchtige PC unter dem Schreibtisch. Die eingebaute Grafikkarte ist von anno dazumal, Prozessor und Board aus der Pentium-Generation und auch die 40-GByte-Festplatte lockt keinen Power-User mehr hinterm Ofen hervor. Die Zeit scheint also gekommen, den Rechner für einen Apfel und ein Ei zu versteigern. Oder besser: ihm eine neue Aufgabe zu geben, etwa als zentralem Mail-Server, der alle ein- und ausgehende Post frei von Viren hält, windige Geschäftsvorschläge, lästige Reklame für Erektionsförderer oder Benachrichtigungen über groteske Lotteriegewinne als Spam erkennt sowie als Sammelstelle für die Mail-Accounts der Familienmitglieder dient. Die müssen dann nicht mehr selbst ihre E-Mails von diversen Konten abrufen, sondern verwalten sie bequem auf dem zentralen IMAP-Server, wo alle Mails bereits sauber vorsortiert in separaten Ordnern liegen.

Als Grundlage für das Projekt eignet sich Suse Linux 10.1 von der Heft-DVD. Für alle, die ihren Server ohne KDE- oder Gnome-Desktop, also mit einer textbasierten Oberfläche neu aufsetzen möchten, haben wir im Folgenden die wichtigsten Schritte zusammengefasst.

Nach dem Booten von der DVD sollte man per Druck auf F2 zunächst Deutsch als Systemsprache wählen und dann erst die Installation über den entsprechend lautenden Menüpunkt starten. Nach einem mitunter langwierigen Startvorgang – das Betätigen von Escape schaltet auf eine Konsole mit den Systemmeldungen um, die Ungeduldigen die Wartezeit etwas versüßen kann – ist die Lizenzvereinbarung zu akzeptieren und dann "Neuinstallation" zu wählen. Im Schirm "Desktop auswählen" nimmt man "Andere/Textmodus".

In den Installationseinstellungen konfiguriert man anschließend Tastaturbelegung, Zeitzone, Partitionierung, Sprache und Bootloader. Weil sich dank des OpenSuse-eigenen Konfigurationswerkzeugs Yast alle gewünschten Programme und Bibliotheken bequem nachinstallieren lassen, beginnt man in der "Software-Auswahl" zunächst mit einem "Minimal-System", das nur gut 580 MByte auf der Platte beansprucht. Sämtliche Mail landet später in einem Unterordner von /var. Die Partition, in der dieses Verzeichnis liegt, sollte also genügend Freiraum für die kommenden Jahre als Postlagerstelle bieten. Nach der Installation startet der Rechner neu und man gelangt automatisch zum Setzen des Rechnernamens, zum Beispiel "homeserver" als Hostname plus "example.com" als Domainname. Die Wahl des Domain-Anteils im Namen ist frei, nur empfiehlt es sich, keine Domain anzugeben,die bereits im Internet verwendet wird, weil sonst alle Mails an diese Domain im lokalen Mail-Server landen. Das Häkchen neben "Hostnamen über DHCP ändern" sollte man entfernen. Dazu gleich mehr.

Nach dem Setzen des root-Passworts gelangt man in die Netzwerkkonfiguration. Da die Mail-Clients via IMAP und SMTP mit dem Mail-Server sprechen, muss man die entsprechenden Ports in der Firewall freischalten; bei OpenSuse heißt der für SMTP zu erlaubende Dienst "Mailserver". Wer den Rechner nicht nur über die Konsole, sondern außerdem per SSH aus der Ferne steuern möchte, fügt hier unter "Firewall/Erlaubte Dienste" in der "externen" Zone "SSH" zur Liste erlaubter Dienste hinzu. Soll die Fernsteuerung auch über VNC (Virtual Network Console) [3] stattfinden, muss man außerdem ein Loch für "Verwaltung via entfernten Rechner (remote)" in die Firewall bohren und die "Verwaltung vom entfernten Rechner aus (remote) über VNC" aktivieren. Anwender, die über einen Proxy ins Internet gehen, geben unter "Proxy" die URLs für den Zugriff via HTTP oder FTP sowie die gegebenenfalls erforderlichen Zugangsdatenfür den Proxy ein.

Die IP-Adresse eines Servers sollte man möglichst nicht automatisch per DHCP setzen lassen, sondern via "Ändern/Netzwerkschnittstellen" fest einstellen. Da der Server nur im lokalen Netz zugänglich sein soll, empfiehlt sich der Internet-Zugang über einen separaten Router mit eingebauter Firewall, die alle eingehende Verbindungen blockiert, aber ausgehende Verbindungen jeder Art erlaubt.

In unserem Beispiel liegen alle lokalen IP-Adressen im Netz 192.168.0.0/24. Als Adresse für den Server haben wir die 192.168.0.199 gewählt, als IP-Adresse für die interne Schnittstelle des Routers die 192.168.0.1. Die interne Router-IP-Adresse ist als "Standardgateway" unter dem Menüpunkt "Routing" einzutragen.

Glücklich dürfen sich die schätzen, deren Router als DNS-Proxy fungiert. Die wählen unter dem Menüpunkt "Hostname und Namenserver" als "Nameserver 1" die Adresse des Internet-Gateway, also die 192.168.0.1. Alle anderen müssen sich bei ihrem Provider erkundigen, unter welchen IP-Adressen deren DNS-Server zu erreichen sind. Typischerweise sind das zwei oder drei verschiedene, die man als "Nameserver 1" bis "Nameserver 3" vorgibt.

Das wars auch schon mit der Netzwerkkonfiguration. Danach gehts zum Test der Netzwerkverbindung, den man Yast vornehmen lässt, um sicherzustellen, dass die vorangegangenen Einstellungen korrekt sind. Meldet Yast hier einen Fehler, hat sich der vermutlich bei der Eingabe von Gateway oder Nameserver eingeschlichen, und man sollte seine Eingaben nochmals prüfen. Anschließend lässt man Yast die neuesten Patches herunterladen.

Bei der nachfolgenden Wahl der Authentifikationsmethode belässt man es der Einfachheit halber bei "Lokal (/etc/passwd)". Im Schirm "Neuer lokaler Benutzer" gibt man seine Benutzerdaten ein. Das Setzen eines Häkchens neben "Systemmail empfangen" leitet alle Meldungen des Systems (etwa über gefundene Viren) an diesen Benutzer weiter. Weitere Benutzer lassen sich unter dem Punkt "Benutzer-Verwaltung" anlegen.

Die folgenden Bildschirme bestätigt man so lange mit "Weiter", bis Yast einen zur gelungenen Installation beglückwünscht. Nach "Beenden" meldet man sich als root am System an und startet das Konfigurationswerkzeug erneut per Eingabe von yast.

fetchmail holt E-Mails von POP3- oder IMAP-Postfächern ab. Anschließend scannt der Mail-Server sie auf Viren und legt sie in lokalen IMAP-Ordnern ab.