Tarayıcının adres çubuğundaki alan adı, sertifikadaki adlarla eşleşmediğinde NET::ERR_CERT_COMMON_NAME_INVALID (Firefox'ta SSL_ERROR_BAD_CERT_DOMAIN) hatası oluşur. Modern tarayıcılar yalnızca sertifikanın Subject Alternative Name (SAN) alanına bakar; eski Common Name (CN) alanı tek başına yeterli sayılmaz.
Sık görülen senaryolar
- Sertifika
example.comiçin alınmış, sitewww.example.comadresinden açılıyor (veya tersi). - Sunucuya IP adresiyle bağlanılıyor; sertifikada IP yok.
- Sanal sunucuda (virtual host) varsayılan site başka bir alan adının sertifikasını sunuyor.
- Alt alan adı (
panel.example.com) sertifikanın kapsamı dışında. - Sertifika başka bir siteye ait sunucuya yanlışlıkla kurulmuş.
Sertifikadaki adları görme
echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | openssl x509 -noout -subject -ext subjectAltName
Buradaki -ext seçeneği OpenSSL 1.1.1 ve üzerinde çalışır. Listelenen DNS: kayıtlarından biri ziyaret ettiğiniz adla birebir (ya da geçerli bir wildcard kuralıyla) eşleşmelidir. -servername bayrağını unutmayın; SNI olmadan sunucu farklı bir sertifika döndürebilir.
Çözüm
- Kullandığınız tüm adları belirleyin: genellikle kök alan adı ve
wwwbirlikte gerekir. - Eksik adı kapsayan yeni sertifika alın ya da mevcut sertifikayı SAN eklenmiş şekilde yeniden yayınlatın. Yeni CSR için CSR oluşturucuyu kullanabilirsiniz.
- Sunucuda her alan adı için doğru
server_name/ServerNamebloğunun doğru sertifikaya bağlandığını kontrol edin. - Yönlendirme kullanıyorsanız, yönlendirmeyi yapan adın da geçerli sertifikası olmalıdır; aksi halde tarayıcı yönlendirmeden önce hata verir.
Önleme
Sipariş verirken alan adı listesini dikkatli planlayın. Çok sayıda ad için çok alanlı (SAN) sertifika, tüm alt alan adları için ise wildcard SSL uygun olabilir.