SMTP-Dienste am Mailserver absichern

Es gibt derzeit viele Anfragen zum Thema Verschlüsselung, Compliance, MandatoryTLS, “E-Mail Made in Germany” (das ist übrigens eine Partnerschaft und kein technisches Konzept).

Aus diesem Grund möchten wir Ihnen mit dem heutigen Artikel zeigen, wie Sie Ihre SMTP-Dienste am Mailserver (im Beispiel AXIGEN) korrekt absichern.

Aufgaben

Folgende Aufgaben gilt es zu erledigen:

  • Zwei SMTP-Listener einrichten (Einer auf Port 25 und einer auf Port 587)
  • Optional: Weiteren Listener für Port 465
  • STARTTLS auf den Listeners aktivieren
  • Plain-Authentifizierung ausschalten
  • Authentifizerung bei sicheren Verbindungen aktivieren (nach TLS)

Grundlagen der SMTP-Listener / Ports

Im SMTP-Verkehr sind folgende drei Ports im Standard beschrieben:

  •  25 – SMTP – dieser wird zur Kommunikation von MTA zu MTA (also Mailserver zu Mailserver) verwendet. Dieser Port kann auch zur Kommunikation mit Mailclients verwendet werden. Jedoch gibt es deutlich bessere Optionen.
  • 465 – SMTPS – SSL wird auf diesem Port erzwungen und wird vor jeder weiteren Kommunikation zwingend vorausgesetzt. Kein SSL, keine weitere Verbindung.
  • 587 – MSA – dieser Port ist ähnlich zum Standard-Port. SSL kann auf diesem Port verwendet werden. Da sehr viele ISPs den Versand von SMTP-Nachrichten auf Port 25 unterbunden haben (viele Schadprogramme verwenden diesen Port), sollten sie diesen Port einrichten, damit Ihre Benutzer auch E-Mails einliefern können. Das betrifft vor allem Benutzer, die in Mobilfunktnetzen oder öffentlichen WLANs unterwegs sind.

STARTTLS erlauben

Im ersten Schritt sollten Sie prüfen, ob STARTTLS für eingehende Verbindungen erlaubt ist:

  • WebAdmin => Security and Filtering
  • Dort auf Acceptance and Routing klicken
  • Im Bereich Acceptace Basic Settings prüfen Sie den Bereich Allowed ESMTP Comands
  • Stellen Sie sicher, dass Allow StartTLS angehakt ist.

Für ausgehende Verbindungen sollten Sie prüfen, ob STARTTLS ESMTP korrekt eingerichtet it:

  • WebAdmin => Security and Filtering
  • Dort auf Acceptance and Routing klicken
  • Im Bereich Routing Basic Settings prüfen Sie die Einstellungen für Outgoing Delivery
  • Prüfen Sie dort, ob die Checkbox bei Use StartTLS if available angehakt ist.

 SMTP-Listener einrichten

Ports 25 und 587:

Diese beiden Ports sollten auch Verbindungen ohne SSL erlauben, jedoch STARTTLS unterstützen.

smtp_rec

Die SSL-Einstellungen sollten auf beiden Ports so aussehen:

listeners

 

Folgende zusätzliche Hinweise sind zu beachten:

  • Die Checkbox “Enable SSL for this listener” sollte nicht aktiviert werden. Diese beiden Listener sollen primär nicht-SSL Verbindungen akzeptieren. Erst wenn der Client den Befehl für STARTTLS sendet, wird AXIGEN automatisch SSL aktivieren.
  • SSLv2 und SSLv3 sind deaktiviert. Diese beiden veralteten SSL-Protokolle sind angreifbar.
  • Wenn Sie DHE Cipher verwenden möchten, wie z.B. DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA dann müssen Sie den Pfad für das DH (Diffie-Hellman) Parameter-File setzen.

SMTP Port 465:

Der Port 465 sollte nur SSL-Verbindungen akzeptieren. Hierzu müssen Sie die Checkbox bei “Enable SSL for this Listener” aktivieren.

Regeln für die Authentifzierung

Im nächsten Schritt sollten zwei Regeln auf dem AXIGEN angelegt werden:

  • Authentifizierung für Plan-Text Verbindungen deaktivieren
  • Aktivierung der Authentifizierung für sichere Verbindungen (nach StartTLS)

Dies wird in AXIGEN über zwei Routing-Regeln erreicht. Diese müssen im Webadmin -> Security and Filtering -> Acceptance and Routing -> Advanced Settings angelegt werden.

Nachfolgend erklären wir Ihnen diese beiden anzulegenden Regeln

  • disableAUTH_on_non_SSL
  • enableAUTH_on_SSL

Authentifizierung für Plain-Text-Verbindungen deaktivieren:

  • Klicken Sie auf “+ Add Acceptance/Routing Rule“.
  • Als Name geben Sie ein “disableAUTH_on_non_SSL
  • Conditions lassen Sie leer. Dies bedeutet, dass diese Regel für alle Verbindungen gilt.
  • Bei Actions wählen Sie “Plain connections authentication” und setzen Sie “Not authenticated
  • Klicken Sie auf Save Configuration

rule1

Authentifizierung für sichere Verbindungen zulassen (jedoch erst nach StartTLS):

  • Klicken Sie auf “+ Add Acceptance/Routing Rule“.
  • Als Name verwenden Sie “enableAUTH_on_SSL
  • Conditions lassen Sie leer. Dies bedeutet, dass diese Regel für alle Verbindungen gilt.
  • Bei Actions wählen Sie “SSL connections authentication” und setzen “Authenticated”.
  • Wählen Sie die gewünschten Authentifizierungarten
  • Da diese Regel nur für sichere Verbindungen gilt, könnten Sie Plain und Login weglassen
  • Klicken Sie auf “Save Configuration

rule2

Reihenfolge der beiden Regeln:

In der Übersicht unter Advanced Acceptance / Routing Rules stellen Sie bitte sicher, dass disableAUTH_on_non_SSL rule vor der Regel enableAUTH_on_SSL in der Reihenfolge kommt:

order

STARTTLS für eingehende und ausgehende SMTP Verbindungen bei einer bestimmten Domain erzwingen

Damit Sie STARTTLS für eingehende und ausgehende SMTP-Verbindungen zwingend voraussetzen, benötigen Sie eine Routing Regel.

Das ist dann sinnvoll, wenn Sie

  1. Wenn Sie Mails nur annehmen wollen, wenn der gegnerische Server STARTTLS unterstützt.
  2. Sie Mails an einen gegnerischen Mailserver nur mit STARTTLS ausliefern wollen.

Hinweis: Dies kann dazu führen, dass Sie keine Mails von Servern erhalten, die dieses Verfahren nicht unterstützen)

Hierzu muss die folgende Regel angelegt werden:

 

  • Klicken Sie auf “+ Add Acceptance/Routing Rule“.
  • Als Name verwenden Sie “allow_only_tls_for_mydomain_com” (bitte entsprechend anpassen)
  • Bei Conditions wählen Sie Connection -> isSSL und lassen die Checkbox unangehakt
  • Bei Conditions wählen Sie danach Recipient->Domain is “mydomain.com” (Domain Namen bitte anpassen)
  • In der oberen Combobox (“For incomig messages that match”) wählen Sie ALL aus.
  • Bei Actions fügen Sie Folgendes hinzu SMTP -> Action. Danach wählen Sie Reject aus der Dropdown aus und hinterlassen eine Erklärung für den gegnerischen Mailserver, wie z.B. “Accepting only secure delivery (STARTTLS) for mydomain.com
  • Klicken Sie auf Speichern

forcetls

Ausgehenden SMTP-Verkehr mit STARTTLS in Kombination TLS1.1 und TLS1.2 erzwingen

Hinweis: Dies kann dazu führen, dass Mails nicht ausgeliefert werden können, wenn der gegnerische Mailserver kein STARTTLS mit TLS1.1/1.2 unterstützt.

Falls Sie erzwingen wollen, dass AXIGEN nur E-Mails an Server liefert, die STARTTLS mit TLS1.1 oder TLS1.2  unterstützen, müssen Sie folgende Regel anlegen:

 

  • Klicken Sie auf “+ Add Acceptance/Routing Rule“.
  • Als Name verwenden Sie “use_only_tls11_and_12_when_relaying”
  • Bei Conditions wählen Sie Delivery->Relaying mail 
  • Bei Action fügen Sie folgendes hinzu -> SSL Encryption und stellen Sie sicher, dass die Checkbox angehakt ist
  • Bei Actions fügen Sie weiterhin hinzu -> SSL Versions und stellen Sie sicher, dass nur TLS1.1 und TLS1.2 angehakt sind
  • Klicken Sie auf Speichern

relaying tls

Den englischen Originalartikel finden Sie hier.

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert