DANE (DNS-based Authentication of Named Entities, RFC 6698), bir alan adının kullanması gereken sertifikayı veya açık anahtarı DNS kaydında yayımlamasını sağlar. Bu kayıt TLSA türündedir ve güvenilirliği DNSSEC imzalarına dayanır.
Nasıl çalışır?
İstemci bir servise bağlanmadan önce _port._protokol.alanadi için TLSA kaydını DNSSEC doğrulamasıyla sorgular. Sunucunun sunduğu sertifika bu kayıtla eşleşiyorsa bağlantı doğrulanır. Böylece CA'ya ek olarak ya da CA yerine DNS üzerinden bir güven çapası kurulur.
TLSA kaydının alanları
- Usage: 0/1 (CA kısıtı), 2 (kendi güven çapası), 3 (DANE-EE, doğrudan uç sertifika).
- Selector: 0 tam sertifika, 1 yalnızca açık anahtar (SPKI).
- Matching type: 0 tam veri, 1 SHA-256, 2 SHA-512.
Yaygın tercih olan 3 1 1, uç sertifikanın açık anahtarının SHA-256 özetini yayımlar.
Kayıt oluşturma
openssl x509 -in sertifika.pem -noout -pubkey | openssl pkey -pubin -outform DER | openssl dgst -sha256 -binary | xxd -p -c 64
; DNS bölge dosyasına
_443._tcp.alanadi.com. IN TLSA 3 1 1 (özet değeri)
Sorgulama
dig +dnssec TLSA _443._tcp.alanadi.com
dig +dnssec TLSA _25._tcp.mx.alanadi.com
Kullanım alanı ve sınırlar
- DANE'in en yaygın uygulaması SMTP'dir; posta sunucuları arasında STARTTLS'in doğrulanmasında kullanılır.
- Ana tarayıcılar web için DANE'i desteklemez; bu yüzden web siteleri hâlâ CA onaylı sertifikaya ihtiyaç duyar.
- DNSSEC zorunludur; imzasız bir bölgede TLSA kaydı güven sağlamaz.
- Sertifika yenilendiğinde anahtar değişirse TLSA kaydını güncellemeyi unutmayın; aksi halde doğrulama başarısız olur. Anahtarı sabit tutmak ya da yeni özeti önceden yayımlamak yaygın yöntemdir.
Web siteniz için tarayıcıların tanıdığı bir SSL sertifikası gereklidir; kurulumu SSL denetleme aracıyla doğrulayabilirsiniz.