DANE stunnel

From
Jump to navigation Jump to search

Stunnel dane

Vorüberlegung

OpenSSL DANE support

Derzeit keiner. Weil stunnel auf OpenSSL aufsetzt, ist die Idee, DANE basierend auf dem bestehenden OpenSSL Code bereitzustellen.

Postfix Implementation

Postfix implementiert DANE auf Basis von OpenSSL. Also genau das, was wir auch machen möchten. Idee: Routinen aus Testsuite nach stunnel portieren. Ergebnis: Postfix copy pastet Code aus OpenSSL 1.0.1 und maintained diesen scheinbar lange genug nichtmehr, um die Tests brechen zu lassen. Nach einigen Stunden geben wir auf.

GnuTLS

GnuTLS implementiert DANE bereits und stellt die Funktionalität in der libdane bereit. Der DNSSEC Teil basiert auf libunbound, welches als Abhängigkeit bereit stehen muss.

unbound

Initial muss der DNSSEC root key von data.iana.org bezogen werden. Falls unbound installiert: unbound-anchor -a "/etc/unbound/root.key"

libdane

dane_verify_crt erwartet ein Zertifikat (bzw. Zertifikatskette wenn mit intermediate) im PEM Format. OpenSSL kann das leisten.

Deshalb: stunnel hält im verification Teil (verify.c) das Zertifikat des Servers, zu dem eine Verbindung aufgebaut werden soll. Dieses wird übergenen an dane_verify_crt, welches das DANE Ergebnis zurückliefert.

Test

DNSSEC/TLSA Validator für Firefox

danetool ist Teil von GnuTLS

https://good.dane.verisignlabs.com/

https://bad-params.dane.verisignlabs.com/

https://bad-hash.dane.verisignlabs.com/