Aufbau eines Linux Mailserver

Hier möchte ich kurz den von mir favorisierten Aufbau eines „Mailserver“ unter Linux beschreiben. Im Eigentlichen ist es nicht ein „Mailserver“ sondern mehrere Dienste die zusammenarbeiten und im Endeffekt nach außen als ein Server auftreten. Der Mailserver-Komplex besteht aus:

Service-Liste:

  • Postfix SMTP-Server
  • AmaVis
    • Spamassasin
      • pyszor
      • dcc
      • bayes
    • ClamAV
  • Courier
    • IMAP-Server
    • POP3-Server

Schematischer Aufbau:

Annahme Von E-Mails

Kommen E-Mails vom Internet aus am Mail-Server an, werden diese zunächst angenommen und dann geprüft. Zu erst wird der Aufbau der E-Mail geprüft. Ist dieser nicht FQDN-Konform wird die E-Mail abgewiesen, da FQDN-Unkonforme (FQDN = Full Qualified Domain Name = Standardmäßiger Domainname) E-Mails nicht im Internet vorkommen, außer sie werden von Spammern verwendet. Danach wird geprüft ob der einliefernde Mailserver per Reserve DNS und EHLO-Check legitim ist. Darauf wird dann noch geprüft ob der Empfänger FQDN-konform ist. Ist dies der Fall wird die IP des einliefernden Servers gegen verschiedene Spam-Listen getestet. Sollte dies positiv sein, wird die E-Mail abgewiesen. Ist das Ergebnis negativ wird die E-Mail an AMaViS übergeben. Dieser durch-scannt mit Hilfe von Spamassassin die E-Mail nach Spam-Merkmalen. Auch wird durch AMaViS die E-Mail auf Viren geprüft. Dies geschieht mit Hilfe von ClamAV. Wenn die E-Mail dann letztendlich auch diese Prüfungen bestanden hat, wird sie auf die Festplatte ins MailDir des betreffenden Empfängers gespeichert. Dort liegt sie dann als simple Textdatei vor.

Nun kann sie durch ein Mailprogramm abgerufen werden. Dies geschieht indem das Mailprogramm zu Courier eine Verbindung aufbaut und nach neuen Mails fragt. Courier biete dazu die Protokolle POP3 und IMAP an. Darüber werden dann die als Textdateien gespeicherten E-Mail aus dem Maildir ausgelesen und an das Mailprogramm gesendet.

Versenden von E-Mails

Vor dem Versenden durch den SMTP-Server wird die E-Mail wieder auf Viren und Spam geprüft. Ein Greylisting findet in diese Richtung nicht statt. Die Anti-Spam-Listen werden in diese Richtung auch nicht abgefragt. Im Anschluss wird die Mail wieder darauf geprüft ob Sender- und Empfänger-Adresse FQDN-konform sind. Auch wird noch geprüft ob der empfangende Mailserver legitim ist. Passiert die Mail die Tests wird sie vom SMTP versendet.