- Anleitung zur Einrichtung von DNSSec und DANE (TLSA): Sicherer E-Mail-Dienste-Anbieter
- Vortrag zu DNSSec: Sicherer E-Mail-Dienste-Anbieter
Mit TLSA kann man für eine Domain im DNS festlegen, welche Zertifizierungsstelle für die Domain Zertifikate ausstellen darf (Eintrag mit 2 1 1) oder welcher Schlüssel (Eintrag mit 3 1 1) für TLS gilt. Auf diesem Weg kann sich ein Nutzer bei einer zweiten Quelle (DNS) über die Echtheit eines angebotenen Zertifikats informieren. Wenn dabei DNSSec genutzt wird, ist die Information aus der zweiten Quelle abgesichert.
Da sich bei Letsencrypt regelmäßig der Schlüssel für TLS ändert, müsste man die Anpassung des Eintrags im DNS automatisieren. Leider habe ich dafür nicht die Möglichkeit und kann im DNS als TLSA-Eintrag nur das Zertifikat von Letsencrypt festlegen.
Durch einen Wechsel der Zwischenzertifizierungsstellen bei Let's Encrypt habe ich gelernt, dass man auch mehrere TLSA-Einträge hinterlegen kann, um genau dem Umstand eines Wechsels Rechnung zu tragen.
Im DNS habe ich einen
Wildcard-Eintrag
(*._tcp
) erstellt, da ich das Zertifikat für alle Dienste der Domain verwende.
% resolvectl tlsa jo-so.de
_443._tcp.jo-so.de IN TLSA 2 1 1 e5545e211347241891c554a03934cde9b749664a59d26d615fe58f77990f2d03
-- Cert. usage: Trust anchor assertion
-- Selector: SubjectPublicKeyInfo
-- Matching type: SHA-256 -- link: wlp59s0
_443._tcp.jo-so.de IN TLSA 2 1 1 60b87575447dcba2a36b7d11ac09fb24a9db406fee12d2cc90180517616e8a18
-- Cert. usage: Trust anchor assertion
-- Selector: SubjectPublicKeyInfo
-- Matching type: SHA-256 -- link: wlp59s0
_443._tcp.jo-so.de IN TLSA 2 1 1 8d02536c887482bc34ff54e41d2ba659bf85b341a0a20afadb5813dcfbcf286d
-- Cert. usage: Trust anchor assertion
-- Selector: SubjectPublicKeyInfo
-- Matching type: SHA-256 -- link: wlp59s0
_443._tcp.jo-so.de IN TLSA 2 1 1 276fe8a8c4ec7611565bf9fce6dcace9be320c1b5bea27596b2204071ed04f10
-- Cert. usage: Trust anchor assertion
-- Selector: SubjectPublicKeyInfo
-- Matching type: SHA-256 -- link: wlp59s0
_443._tcp.jo-so.de IN TLSA 2 1 1 bd936e72b212ef6f773102c6b77d38f94297322efc25396bc3279422e0c89270
-- Cert. usage: Trust anchor assertion
-- Selector: SubjectPublicKeyInfo
-- Matching type: SHA-256 -- link: wlp59s0
-- Information acquired via protocol DNS in 1.2ms.
-- Data is authenticated: yes
% resolvectl tlsa jo-so.de:25
_25._tcp.jo-so.de IN TLSA 2 1 1 8d02536c887482bc34ff54e41d2ba659bf85b341a0a20afadb5813dcfbcf286d
-- Cert. usage: Trust anchor assertion
-- Selector: SubjectPublicKeyInfo
-- Matching type: SHA-256 -- link: wlp59s0
_25._tcp.jo-so.de IN TLSA 2 1 1 bd936e72b212ef6f773102c6b77d38f94297322efc25396bc3279422e0c89270
-- Cert. usage: Trust anchor assertion
-- Selector: SubjectPublicKeyInfo
-- Matching type: SHA-256 -- link: wlp59s0
…
Webseite zum Generieren des TLSA-Eintrags
Prüfungen der TLSA-Einträge
Prüfung der TLSA-Einstellungen für verschiedene Dienste oder Prüfung für SMTP
Ein Programm zur Analyse von DNSSec könnte dnsviz sein. Das Programm gibt es auch als Debian-Paket.
Prüfen der DNSSec-Einträge mit DNSSec-Debugger von Verisign.
Siehe auch: Certbot mit Nginx, Netzwerkverwaltung mit Systemd