Table of Contents
Absicherung Domain
Beitrag mit den umgesetzten und geplanten Verfahren zur Absicherung der Domain (und des Mailservers) vom Circus Maximus.
Certification Authority Authorization (CAA)
Über einen CAA-Record können Domain-Inhaber ausdrücklich einen oder mehrere Herausgeber autorisieren, Zerti- fikate für ihre Domain auszustellen. Dafür schlägt die CA im Domain Name System nach, ob für die betreffende Domain ein CAA-Record mit ihrem Namen hinterlegt ist.
Info: PHP-Bibliothek für einen Webdienst zum Entgegennehmen von IODEF-Berichten unter https://github.com/marknl/iodef
Links: dnsimple - CAA Records | SSLMate Record-Generator
https://www.netcup-news.de/2017/12/07/netcup-dns-server-um-caa-records-erweitert/
DNS-Einträge für circus-maximus.de:
0 issue “letsencrypt.org”
0 iodef “mailto:nuntius@circus-maximus.de”
Status: umgesetzt (mit Reporting)
Sender Policy Framework (SPF)
Das Sender Policy Framework (SPF) ist ein Verfahren, mit dem das Fälschen der Absenderadresse einer E-Mail verhindert werden soll. Bei SPF trägt der Inhaber einer Domain in das Domain Name System (DNS) der Domain ein, welche Mail-Server zum Versand von E-Mails für diese Domain berechtigt sind.
Links: dnsimple - SPF Records | Wikipedia - SPF
DNS-Eintrag für circus-maximus.de:
v=spf1 a mx ~all
Über eine erfolgte SPF-Verifikation wird im Mail-Header wie folgt informiert:
X-Received-SPF: pass (mx11.ispgateway.de: domain of circus-maximus.de designates 85.13.131.189 as permitted sender)
Status: umgesetzt
DomainKeys Identified Mail (DKIM)
DKIM-Signaturen basieren auf asymmetrischer Verschlüsselung. Eine E-Mail wird mit einer Digitalen Signatur versehen, die der empfangende Server anhand des öffentlichen Schlüssels, der im Domain Name System (DNS) der Domäne verfügbar ist, verifizieren kann. Schlägt dies fehl, hat der empfangende Mail Transfer Agent (MTA) oder das empfangende Anwendungsprogramm die Möglichkeit, die E-Mail zu verweigern oder auszusortieren.
Links: dnsimple - DKIM Records | Setup Email Server DKIM Keys | Test DKIM Config
1. Schritt: Generierung Schlüsselpaar
Die Generierung des privaten und öffentlichen Schlüssels für die DKIM-Signatur kann über das Skript “/tools/DKIM_gen_keys.php” erfolgen. Dazu muss temporär ein schreibbares Verzeichnis /tmp/ angelegt werden. Im Verzeichnis werden anschließend die beiden Schlüssel angelegt und der zugehörige DNS-Eintrag über das Skript ausgegeben. Die beiden Schlüssel müssen anschließend noch in das /inc/ Verzeichnis verschoben werden.
2. Schritt: DNS-Eintrag
Der Name des DNS-Eintrags ist der Selektor (Name des Schlüssels):
nuntius._domainkey
Datenfeld des DNS-Eintrags:
v=DKIM1; h=sha256; t=s; p=MIIB…
Im Datenfeld können bis zu 512 Zeichen eingetragen werden. Damit sind Schlüssel bis zu einer Stärke von 2048 Bits möglich.
3. Schritt: E-Mail Signatur
Das Generieren und Anhängen der DKIM-Signatur zu einer E-Mail kann in der Funktion send_mail() aus der Bibliothek mail.func.php über einen Parameter aktiviert werden.
Alternativ zu diesen drei Schritten kann die DKIM-Signierung aller E-Mails auch in den Domaineinstellungen des Hosters (wenn unterstützt wie bei All-Inkl.com) aktiviert werden. Dies hat den Vorteil, dass auch über ein Mail-Programm versandte E-Mails signiert werden.
Status: umgesetzt (über Domaineinstellung beim Hoster)
Domain-based Message Authentication, Reporting and Conformance (DMARC)
DMARC baut auf den bekannten Techniken SPF (Sender Policy Framework) und DKIM (DomainKeys Identified Mail) auf, indem es festlegt, wie der Empfänger von E-Mails die Authentifizierung durchführen soll. Während die vorgenannten Techniken beschreiben, wer eine Mail versenden darf (SPF) bzw. dass diese Mail in bestimmter Weise unverändert vom Absender stammt (DKIM), kann der Absender nach der DMARC-Spezifikation zusätzlich Empfehlungen geben, auf welche Art der Empfänger mit einer Mail umgeht, die in einem oder beiden Fällen nicht den Anforderungen entspricht. Sofern der Empfänger einer E-Mail die DMARC-Spezifikation anwendet, ist dadurch eine konsistente Überprüfung der Authentizität dieser E-Mail gesichert.
Links: G Suite - Informationen zu DMARC
DNS-Eintrag für circus-maximus.de:
v=DMARC1; p=quarantine; pct=10; rua=mailto:nuntius@circus-maximus.de
Status: umgesetzt (mit aktuell 10% Quarantäne)
Sonstiges
How to extract public key from .pem file using openssl (on linux):
openssl rsa -in ./private-key.pem -pubout -out PublicKey.pub