AXIGEN und die DSGVO (EU Datenschutzgrundverordnung)

Am 25.05.2018 tritt die DSGVO in Kraft – viele Fragen drehen sich darum, wie der eigene Mailserver DSGVO-konform zu konfigurieren ist.

HINWEIS:

Die nachfolgenden Informationen werden allgemeingültig bereitgestellt. Bitte prüfen Sie selbst, ob alle für Ihr Unternehmen bzw. Ihren Einsatzzweck relevanten Angaben ausreichend berücksichtigt oder angegeben werden. Eine rechtliche Beratung kann nicht gewährt werden. Bei Fragen konsultieren Sie bitte einen Fachmann und/oder Ihren Datenschutzbeauftragten.

 

 

Welche personenbezogenen Daten gibt es beim Betrieb eines Mailservers?

  • Postfächer (Mails, Kalender, etc.)
  • Nutzungsdaten (insbesondere Logs)

Wie kann AXIGEN bei der Umsetzung der DSGVO unterstützen?

1. Kein Zugriff auf Postfach-Inhalte

AXIGEN-Administratoren haben keinen globalen Zugriff auf einzelne Postfächer und können deren Inhalt nicht ohne Aufwand einsehen. Darüber hinaus ist es selbstverständlich nicht möglich, fremde Postfächer einzusehen, etc. Zur Sicherstellung des Betriebs gibt es jedoch gezielte Schnittstellen, um beispielsweise Daten zu sichern oder wiederherzustellen.

Die Benutzerkennwörter sind ebenfalls verschlüsselt und können nicht ausgelesen werden. Es ist nur möglich, ein neues Kennwort zu setzen.

2. Benutzerberechtigungen

AXIGEN unterstützt ein umfangreiches Rechte-Management, mit dem Sie individuelle Rechte für die Administratoren vergeben können, bspw. Zugriff auf spezielle Domains oder Aktionen.admin

 

3. Individuelle Log-Level

AXIGEN unterstützt pro Dienst individuelle Logging-Einstellungen: Von Minimal-Log bis zum Debug Log und unterstützt individuelle Vorhaltezeiten. Es ist ebenfalls möglich, die Logs an einen Syslog-Server zu senden, um dort bspw. individuelle Zugriffe zu konfigurieren. Ebenfalls wird durch das Logging nicht der Inhalt von E-Mails protokolliert.

Logging

Rotation

 

4. Verschlüsseltes Dateisystem möglich

AXIGEN nutzt die Infrastruktur des Betriebssystems zur Ablage der Daten und keine eigene Datenbank. Von daher kann AXIGEN bspw. problemlos auf einem verschlüsselten Dateisystem betrieben werden.

5. Transportsicherheit

AXIGEN unterstützt SSL auf allen Diensten. Es ist ebenfalls möglich, SSL zu erwingen (Forced SSL)

6. E-Mail Verschlüsselung

AXIGEN kann mit gängigen Lösungen hinsichtlich SMIME und PGP angebunden werden (z.B. über MILTER). Sollten Sie keine eigene Lösung betreieben wollen, können Sie bspw. auf unseren Dienst spambarrier zurückgreifen.

AXIGEN – Überwachung der Queue mit Push-Benachrichtigung

Eine der wichtigsten Aufgaben für Mailserver Administratoren ist die Überwachung der Mail-Queue. Läuft die Queue voll, liegt ein Problem vor und Mails können nicht zugestellt werden. Dieser Artikel zeigt, wie Sie die Queue überwachen können und im Störungsfall benachrichtigt werden.

Die Benachrichtigung soll in unserem Fall über eine Push-Nachricht erfolgen. Hierzu muss man sich beim Dienst pushover anmelden. Der Dienst selbst ist kostenlos, die Apps für die verschiedenen Smartphones kosten etwas, können aber kostenfrei getestet werden. Mit der Anmeldung erhalten Sie ein User-Token. Nach der Anmeldung legen Sie bitte auch eine Applikation an (z.B. AXIGEN). Für diese Applikation erhalten Sie ebenfalls ein Token – das App-Token. Diese beiden Zeichenketten benötigen wir später wieder. Zum aktuellen Zeitpunkt kann man bis zu 7500 Nachrichten pro Monat kostenlos versenden. Das sollte reichen 🙂

Danach benötigen wir einen Aufruf zur Überwachung der Queue. Das ist durch folgenden Befehl möglich:

find /var/opt/axigen/queue/ -name 'S*' | wc -l

Dieser gibt die Anzahl der Mails aus, die sich aktuell in der Queue befinden – z.B. 14.

Als nächstes benötigen wir noch den Aufruf zum Versand der Push-Benachrichtigung. Das können wir mit curl bewerkstelligen (ggf. vorher installieren). Hier bitte USERTOKEN und APPTOKEN durch Ihre Werte ersetzen.

curl -s --form-string "token=APPTOKEN" --form-string "user=USERTOKEN" --form-string "message=AXIGEN Queue Alarm: $counter Mails in der Queue" https://api.pushover.net/1/messages.json

Zusammengefasst können wir das in Shell-Script verpacken. Wenn der Schwellwert von 100 Mails in der Queue überschritten wird, erfolgt die Benachrichtigung. Diesen Wert kann man natürlich entsprechend anpassen (-gt 100):


#!/bin/bash
counter=`find /var/opt/axigen/queue/ -name 'S*' | wc -l`;
if [ $counter -gt 100 ]; then
curl -s --form-string "token=APPTOKEN" --form-string "user=USERTOKEN" --form-string "message=AXIGEN Queue Alarm: $counter Mails in der Queue" https://api.pushover.net/1/messages.json
fi

Dieses Script legt man am System ab und macht es ausführbar. Im letzten Schritt müssen wir das Script nur noch im System ablegen und z.B. alle fünf Minuten über einen Cronjob ausführen:

*/5 * * * * /bin/bash /usr/local/queuewatch/queuewatch >/dev/null 2>&1

Die Meldung sieht dann so aus:

IMG_9056

SSL/TLS in der SMTP-Kommunikation erzwingen (Forced TLS / SSL)

Obwohl der Begriff “Forced TLS” weitestgehend unspezifiziert ist, handelt es sich dabei grob gesagt um folgende Anforderung:

Jeder SMTP-Verkehr (eingehend und ausgehend) muss zwingend über SSL/TLS verschlüsselt werden – ansonsten ist er abzulehnen.

Da wir dies natürlich nicht von allen Kommunikationspartnern erzwingen können, soll es eine Domain-Beschränkung geben.

Zur Umsetzung müssen zwei Routing/Acceptance Regeln angelegt werden.

Regel 1: Alle eingehenden Verbindungen, die von der Domain domain.tld kommen, sollen abgelehnt werden, wenn keine sichere Verbindung hergestellt werden kann:

1. Wechseln Sie im Webadmin auf -> Security & Filtering -> Acceptance & Routing -> Advance Settings.
2. Klicken Sie auf “+Add Acceptance / Routing Rule”.
3. Geben Sie in das Feld “Rule name” ein Namen ein, wie z.B. mydomain_force_ssl_in
4. Setzen Sie den Haken bei “Enable this acceptance/ routing rule”.
5. Im Bereich der Bedingungen (Conditions) wählen Sie:
– Delivery -> Domain -> und fügen  hinzu:
Sender domain – Is – und geben Sie die betroffene Domain ein. In unserem Fall mydomain.tld
– Wählen Sie Connections -> Is SSL -> fügen Sie diese Bedingung hinzu und haken die Checkbox nicht an.
6. Im Bereich Conditions wählen Sie bitte “ALL of the condition below” im Bereich “For incoming messages that match”.
7. Im Bereich “Actions” wählen Sie SMTP -> Action -> und fügen eine neue Aktion hinzu und wählen Reject aus.
8. Speichern Sie die Regel mit dem Button “Save Configuration” im unteren Bereich.

In

Regel 2: Für ausgehende Verbindungen erzwingen wir, dass das Relaying nur über SSL erfolgen darf:

1. Wechseln Sie im Webadmin auf -> Security & Filtering -> Acceptance & Routing -> Advance Settings.
2. Klicken Sie auf “+Add Acceptance / Routing Rule”.
3. Geben Sie in das Feld “Rule name” ein Namen ein, wie z.B. mydomain_force_ssl_out
4. Setzen Sie den Haken bei “Enable this acceptance/ routing rule”.
5. Im Bereich der Bedingungen (Conditions) wählen Sie:
– Delivery -> Relaying mail -> Fügen Sie diese Bedingung hinzu
– Recipient -> domain -> Fügen Sie diese Bedingung hinzu und wählen Sie:
Recipient domain – Is – und geben Sie die betroffene Domain ein. In unserem Fall mydomain.tld.
6. Im Bereich Conditions wählen Sie bitte “ALL of the condition below” im Bereich “For incoming messages that match”.
7. Im Bereich der Aktionen (Actions) wählen Sie:
– Relay -> Host -> Und geben Sie dort den Ziel-Server (MX) der Domain an und wählen Sie als Port den SMTP-SSL Port 465.
– Wählen Sie Relay -> SSL Encryption und setzen Sie den Haken bei SSL.
8. Speichern Sie die Regel mit dem Button “Save Configuration” im unteren Bereich.

Out

Wichtiger Hinweis:

Testen Sie diese Regel sorgfältig. Eine falsche Konfiguration oder Umsetzung kann den Mailverkehr erheblich beeinträchtigen.

 

 

Erpressungs-Malware: Locky – Wie gut sind Sie (und Ihr Mailserver) geschützt?

Bei Locky handelt es sich um einen sehr gemeinen Schädling, der gerade vor allem per E-Mail verbreitet wird.

Er verbreitet sich zunächst auf dem System, ohne aktiv zu werden – also relativ unauffällig. Zu einem Zeitpunkt wird er auf einmal aktiv und verschlüsselt alles, worauf der Zugriff hat. Also auch USB-Festplatten, Netzlaufwerke und Cloud-Speicher.

Hierbei werden so ziemlich alle Dateitypen verschlüsselt – die Verschlüsselung gilt aktuell als unknackbar.

Wer seine Dateien wiederhaben will, muss zahlen. Hierzu erscheint ein Erpresserschreiben auf dem Bildschirm (inzwischen auch in Deutsch) mit den entsprechenden Hinweisen zur “Geldübergabe”.

Locky wird in Form von Word-Dateien verbreitet, die per E-Mail versendet werden. Es handelt sich hierbei oft um Fake-Rechungen, die sich angeblich im Anhang befinden. Aber auch Script-Dateien werden aktuell versendet.

Die Virenscanner hinken aktuell immer einen kleinen Schritt hinterher. Genau genommen handelt es sich dabei um Makro-Viren, wie sie in ähnlicher Form schon seit Jahren verbreitet werden.

Wir empfehlen Ihnen folgende Schritte zur eigenen Absicherung:

  • Erstellen Sie ein Backup auf einen Datenträger, der nicht dauerhaft am System angeschlossen ist. Wie z.B. eine USB-Festplatte, die direkt nach dem Backup wieder vom System entfernt wird.
  • Setzen Sie einen aktuellen Virenscanner ein.
  • Öffnen Sie niemals E-Mails mit verdächtigen Anhängen oder von Absendern, die sie nicht kennen. Halten Sie ggf. Rücksprache mit dem angeblichen Absender, ob die Mail von ihm stammt.
  • Konfigurieren Sie ihr Office so, dass keine unsicheren Makros ausgeführt werden.
  • Halten Sie Ihr System über Sicherheitsupdates aktuell.
  • Konfigurieren Sie Ihren Mailserver so, dass Mails direkt beim Empfang geprüft werden und virenverseuchte Mails direkt abgelehnt werden (reject).

Um auf Nummer sicher zu gehen, gehen einige Unternehmen aktuell dazu über, z.B. doc Anhänge vollständig  zu blocken (z.B. über MimeDefang). Eine drastische, aber effektive Maßnahme.

Neuer Dienst: Cloud AntiVirus und AntiSpam – spambarrier.de

Pünktlich zum Jahreswechsel 2015 / 2016 wurde unser neuer Dienst spambarrier.de fertiggestellt.

Über 10 Jahre Erfahrung im Bereich Mailserver flossen in dieses Projekt ein, um einen zuverlässigen und komfortablen Service gegen Viren und Spam für Sie bereitzustelllen.

Das kurze Einführungsvideo zeigt Ihnen mehr:

Wir freuen uns auf Ihre Anmeldung und Ihre Kommentare, Hinweise, Verbesserungsvorschläge und natürlich Lob.

Wir wünschen einen guten Rutsch und einen guten Start in ein neues, gesundes, glückliches und erfolgreiches Jahr 2016!

Kostenlose SSL-Zertifikate für Mailserver mit Let’s Encrypt

Seit dem 03. Dezember 2015 läuft die offene Beta-Phase von “Let’s Encrypt”

free

Die neue Zertifizierungsstelle (CA) liefert kostenlose SSL-Zertifikate. Diese müssen jedoch alle 90 Tage erneuert werden (Über Sinn und Unsinn dieses Limits lässt sich streiten)

Sponsoren sind unter Anderem Cisco, Mozilla und Facebook.

Zur Erstellung der Zertifikate gibt es einen offiziellen Client, den ich heute vorstellen möchte.

Zunächst muss dieser Installiert werden:

cd /opt
git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt

Danach muss der Bootstrapper aufgerufen werden, der dann die Depencencies prüft und die Python-Umgebung einrichtet:

/opt/letsencrypt/letsencrypt-auto --help

Zur Verifizierung der Domain (z.B. mailserverblog.de) ruft Letsencrypt eine Verifikations-URL auf, die z.B. so aussieht:

http://mailserverblog.de.www148.your-server.de/.well-known/acme-challenge/xhde4WMKAXXTXKQXyftUqUIjy_02TPhfaRFCmGffqf4

Die Verifikation erfolgt entweder über Port 80 oder Port 443. Dieser Port ist in der Regel schon durch einen Webserver (oder das Webmail) belegt.
Der einfachste Weg ist daher, diese Dienste kurz zu beenden. Der Let’s Encrypt Client bringt einen eigenen Webserver mit.

Der Aufruf zum Ausstellen eines Zertifikats sieht daher wie folgt aus:

/opt/letsencrypt/letsencrypt-auto certonly --standalone --email postmaster@mailserverblog.de.www148.your-server.de -d mailserverblog.de

Nach diesem Aufruf finden sich die Zertifikate in folgendem Ordner:

/etc/letsencrypt/live/mailserverblog.de
  • Das Zertifikat: cert.pem
  • Das Zertifikat inkl. Intermediate-Zertifikaten: chain.pem
  • Alle Zertifikate kombiniert: fullchain.pem
  • Privater Schlüssel: privkey.pem

AXIGEN benötigt ein PEM-File, das auch den privaten Schlüssel beinhaltet.

cat /etc/letsencrypt/live/mailserverblog.de/privkey.pem /etc/letsencrypt/live/mailserverblog.de/cert.pem > /var/opt/axigen/encrypt.pem

Das encrypt.pem kann dann in AXIGEN im SSL-Listener hinterlegt werden. Wie man AXIGEN mit einer A+ Verschlüsselung versieht, steht hier .
Das Prozedere zur Erneuerung folgt in einem weiteren Artikel.

Mailserver-Authentifizierung am ActiveDirectory (AXIGEN)

Authentifizierung am Active Directory

Dieser Artikel zeigt Ihnen, wie Sie einfach Mailkonten gegen das ActiveDirectory oder LDAP authentifizieren können. Somit können Sie viele Vorteile nutzen, die das Active Directory bietet (z.B. Passwortrichtlinie, etc.).

Hierbei erfolgt lediglich eine Authentifizierung gegen LDAP / ActiveDirectory und keine Synchronisation. Die Synchronisation ist etwas komplexer. Die reine Authentifizierung erfordert keine Addons, Schemas oder Ähnliches.

Dieser Artikel beschreibt beispielhaft die einfachste Methode einer AD-Anbindung mit AXIGEN. Sie erfordert kaum zusätzlichen Aufwand und zeichnet sich durch gute Wartbarkeit hinsichtlich Updates (Windows und AXIGEN) aus.

Ausgangspunkt

Wir gehen davon aus, dass Sie:

  • einen fertig installierten AXIGEN-Serve besitzen (Die Screenshots zeigen Version 9, ob Sie Linux oder Windows als Plattform für AXIGEN nutzen ist hierbei egal). Es ist die Lizenzierzung des Clustering / Delegated Administration Plugin erforderlich.
  • bereits eine fertig eingerichtete Domäne mit ActiveDirectory besitzen. Die AD-Struktur muss im Netz erreichbar sein. Es muss keine Änderung am AD vorgenommen werden, kein Addon installiert, etc.
  • Im Beispiel heißt unsere interne Domäne huestel.local
  • Die Mail-Domain heißt ebenso huestel.local und ist bereits in AXIGEN angelegt. Konnten müssen nicht angelegt werden, können aber – siehe hierzu weiter unten.

Einrichtung:

Schritt 1 – Einrichtung des Active Directory Connectors

Wechseln Sie zunächst im Webadmin auf den Bereich “Clustering” und “Clustering Setup”:

1

Danach fügen Sie im Bereich “LDAP Connectors” einen neuen Connector hinzu:

2

Bei der Anlage werden Sie gebeten, einige Parameter bereitzustellen.

(Hinweis: Nicht-genannte Parameter können leer bzw. in der Standardeinstellung verbleiben)

3

  • Vergeben Sie zunächst eine Namen für den LDAP-Connector
  • Danach Hostname und Port (im Standard 389)
  • Als Server Typ wählen Sie Active Directory

Scrollen Sie weiter nach unten und füllen die weiteren Parameter aus:

4

Die Synchronisationsoptionen können Sie ignorieren, da diese keine Rolle spielen. Wichtig sind die “LDAP Search Parameters“. Geben Sie hierzu einen Benutzer an, der über Zugriffsrechte auf das Active Directory verfügt. In unserem Beispiel is das der Einfachheit halber der Administrator. Besser ist es, einen anderen Benutzer zu verwenden:

Admin DN: CN=Administator,CN=Users,DC=huestel,DC=local

Admin DN Password: <Passwort des Benutzers>

Scrollen Sie weiter nach unten:

5

Zuletzt müssen Sie noch den den DN angeben, über den die Accounts gefunden werden können:

Account Base DN: CN=Users,DC=huestel,DC=local

Speichern Sie den Connector ab.

Schritt 2: User Map

Hier darf keine User Map angelegt sein, da diese nicht benötigt wird.

leer

Schritt 3 – Authentifizierung einrichten:

Wechseln Sie in den letzten Reiter und wählen dort aus:

  • LDAP Bind: Perform
  • authentication using: <Wählen Sie den zuvor angelegten Connector>

6

Schritt 4: Active Directory

Die Suche im AD und Authentifizierung von AXIGEN am ActiveDirectory erfolgt über folgende Parameter:

  • Benutzername: sAMAccountName (Hinweis: Wenn Sie in Schritt 1 als ServerTyp LDAP auswählen, wird das Feld UID ausgewertet)
  • Passwort
  • Gruppenzugehörigkeit zu InetOrgPerson

inetorg

john

Mechanik:

Wenn man sich nun am AXIGEN anmeldet, laufen im Hintergrund folgende Schritte ab:

  • AXIGEN kontaktiert den LDAP/AD-Server über den administrativen DN, der in den “LDAP Search parameters” im LDAP-Connector angegeben wurde
  • Wenn der Benutzer nicht im LDAP gefunden wurde, wird die Authentifizierung fehlschlagen, selbst wenn das Konto in AXIGEN existiert
  • Wenn der Benutzer nicht im AXIGEN gefunden urde, wird die Authentifizierung ebenfalls fehlschlagen, außer Sie aktivieren die automatische Account-Anlage (siehe nächster Punkt)
  • Wenn der Benutzer sowhl im AXIGEN als auch im Active Directory gefunden wurde,  dann werden die Zugangsdaten abgeglichen und bei Erfolg der Zugriff gewährt.

Automatische Account-Anlage in AXIGEN aktivieren:

Im Standard schlägt die Authentifizierung fehl, wenn das Konto in AXIGEN nicht exisitert. Sie können jedoch festlegen, dass im Falle einer positiven Authentifizierung am AD auch das Konto im AXIGEN angelegt wird. Die zugehörigen Standardeinstellungen können z.B. von der Domain geerbt werden. Um die automatische Account-Anlage zu aktivieren, gehen Sie wie folgt vor:

Wechseln Sie im Webadmin auf den Punkt “Automatic Migration”:

am

Wählen Sie die gewünschte Domain aus:

domains

Haken Sie dort NICHT “Enable automatic migration for this domain an”, aber dafür “Enable account creation on LDAP-based authentication”:

auto2

Testlauf:

Wenn Sie sich nun beispielsweise am Webmail anmelden, können Sie im AXIGEN-Log die Authentifizierung nachvollziehen (bitte Log-Level für den Connector erhöhen):

2015-11-01 13:19:41 -0500 16 axisrv USERDB:00000026: >> LDAP search DN='CN=Users,DC=huestel,DC=local' filter='(&(objectClass=user)(|(sAMAccountName=john.doe)(axiAliases=john.doe)))'
2015-11-01 13:19:41 -0500 08 axisrv USERDB:00000026: LDAP search successful.

Kopien aller eingehenden und ausgehenden Nachrichten erzeugen

Wenn Sie Ihre E-Mails direkt beim Empfang / Versand archivieren möchten und alle versendeten oder empfangenen Mails in ein Archivpostfach kopieren möchten (dort können Sie die Mails bspw. mit Mailstore abholen), gehen Sie wie folgt vor:

Im Webadmin:
1. Erstellen Sie ein neues AXIGEN Konto, z.B. archiv@domain.tld
2. Wechseln Sie in den Bereich: Security&Filtering => Acceptance and Routing und dort auf Add Acceptance / Routing Rule:
3. Erstellen Sie die erste Regel für alle ausgehenden Nachrichten:

Wählen Sie dort als Regel aus: Sender Domain – RegEx – . (Punkt)

und Add Receipient (Ihr Account) und den Ordner (z.B. Inbox)

2015-08-04_2330

und speichern diese.

4. Erstellen Sie eine Regel für alle eingehenden Nachrichten:
Wählen Sie dort als Regel aus: Receipient Domain – RegEx – . (Punkt)
und Add Receipient (Ihr Account) und den Ordner (z.B. Inbox)

2015-08-04_2330_001

und speichern diese.

Mailserver SSL mit A Klassifizierung (A Grade) – am Beispiel Webmail

Einleitung:

Das Team von Qualsys (https://www.qualys.com/) hat ein SSL-Test-Tool entwickelt. Mit diesem Tool können SSL-Konfigurationen getestet und bewertet werden: https://www.ssllabs.com

Die Bewertungen (Ratings) gehen dabei von A bis F. “A+” steht für sehr gut, und “F” gilt als extrem unsicher. Ziel eines jeden Admins sollte es sein, hier eine möglichst gute Bewertung zu erzielen.

Mozilla hat eine sehr detaillierte Auflistung veröffentlicht, welche SSL-Cipher geeignet sind und welche Browser hier unterstützt werden: https://wiki.mozilla.org/Security/Server_Side_TLS

Ziel der Anleitung soll es sein, beispielsweise für das Webmail eine A-Grade Bewertung erhalten.

Was wird benötigt:

  • Sie benötigen ein geeignetes SSL-Zertifikat. Wir verwenden fast ausschließlich RapidSSL. Sollten Sie noch keines haben, können Sie bei uns beispielsweise eines erwerben: http://mailserver-ssl.de .
  • Die aktuellste Version von AXIGEN

Einstellungen:

In den SSL-Listenern müssen folgende Parameter gesetzt sein:

Erlaubte SSL-Verfahren: TLS1.0, TLS1.1 and TLS1.2
Cipher Suite: !AECDH:!ADH:!aNULL:!eNULL:!RC4:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-SHA256:AES128-GCM-SHA256:HIGH:!MD5:!EDH:!EXPORT
Prefer server’s cipher suite order: Angehakt
Use Ephemeral Key: Angehakt

 

 

Das Ergebnis:

Das Ergebnis ist eine A-Bewertung, wie man bei einem unserer Testserver sehen kann:

AGrade

Einschränkung:

Sie sperren damit Windows XP-Benutzer mit dem IE6 aus. Aber diese Kombination verwendet hoffentlich niemand mehr 🙂