"Bağlantınız Özel Değil" / NET::ERR_CERT Hatası ve Çözümleri

Tarayıcıda "Bağlantınız özel değil" ya da NET::ERR_CERT_... hatası gördüğünüzde site açılmaz ve ziyaretçiler korkar. Bu yazıda bu hatanın en sık karşılaşılan nedenlerini ve her birinin kesin çözümünü ele alıyoruz. Önce hata koduna bakın; kod, sorunu doğrudan işaret eder.

Hata kodunu okuyun

Chrome tabanlı tarayıcılarda hata mesajının altında bir kod bulunur. En yaygınları:

  • NET::ERR_CERT_DATE_INVALID → sertifikanın süresi dolmuş (veya cihaz saati yanlış).
  • NET::ERR_CERT_AUTHORITY_INVALID → ara zincir eksik ya da güvenilmeyen otorite.
  • NET::ERR_CERT_COMMON_NAME_INVALID → sertifika alan adıyla eşleşmiyor (ör. www kapsanmamış).

Neden 1 — Süresi dolmuş sertifika

En sık görülen nedendir. Ücretsiz sertifikalar 90 gün geçerlidir; yenilemeyi unutmak bu hatayı doğurur. Geçerlilik tarihini terminalden kontrol edin:

echo | openssl s_client -connect alanadiniz.com:443 -servername alanadiniz.com 2>/dev/null | openssl x509 -noout -dates

notAfter tarihi geçmişse sertifika dolmuştur. Çözüm: ücretsiz SSL sihirbazımızla yeni bir sertifika oluşturun, ZIP'i indirin ve sunucunuzdaki eski dosyaların üzerine yazın, ardından servisi yeniden yükleyin.

Eğer yalnızca sizin cihazınızda hata çıkıyorsa, sorun büyük olasılıkla yanlış sistem saatidir. Cihaz tarih/saatini otomatik (NTP) olarak ayarlayın.

Görsel: <Chrome "Bağlantınız özel değil" uyarı ekranı>
NET::ERR_CERT hatası, çoğunlukla süre veya zincir kaynaklıdır.

Neden 2 — Eksik ara zincir (intermediate)

Sunucuya yalnızca certificate.crt yükleyip CA Bundle / ara zinciri eklemeyi unutmak bu hatanın klasik sebebidir. İlginç olan, sitenin bazı tarayıcılarda açılıp bazılarında ERR_CERT_AUTHORITY_INVALID vermesidir; çünkü bazı sistemler ara sertifikayı önbellekten tamamlayabilirken mobil tarayıcılar tamamlayamaz.

Çözüm — sunucuya göre:

  • Nginx: ssl_certificate için tek başına certificate.crt değil, fullchain.pem kullanın.
  • Apache: SSLCertificateChainFile yönergesine ca_bundle.crt tanımlayın.
  • cPanel: SSL/TLS yöneticisinde CA Bundle kutusunu ca_bundle.crt içeriğiyle doldurun.

Zincirin tam sunulduğunu doğrulamak için:

echo | openssl s_client -connect alanadiniz.com:443 -servername alanadiniz.com -showcerts

Çıktıda sertifikadan ara sertifikaya kadar birden fazla BEGIN CERTIFICATE bloğu görmelisiniz. Tek blok varsa zincir eksiktir.

Neden 3 — Alan adı uyuşmazlığı

ERR_CERT_COMMON_NAME_INVALID, sertifikanın istenen adı kapsamadığını gösterir. En sık senaryo: sertifika yalnızca alanadiniz.com için alınmış, ama ziyaretçi www.alanadiniz.com adresine giriyor. Çözüm: sertifikayı yeniden alırken sihirbazda "www alt alanını da dahil et" seçeneğini işaretleyin; böylece her iki ad da kapsanır.

Neden 4 — Karışık içerik (mixed content)

Sayfanın kendisi HTTPS olsa bile içindeki bazı kaynaklar (resim, script, stil) hâlâ http:// ile yükleniyorsa tarayıcı kilit yerine uyarı gösterir ve script'leri engelleyebilir. Bu konunun ayrıntılı çözümünü karışık içerik rehberimizde bulabilirsiniz; kısa çözüm, tüm kaynak adreslerini https:// yapmaktır.

Hızlı kontrol listesi

  1. Hata kodunu okuyun (DATE / AUTHORITY / COMMON_NAME).
  2. Sertifika süresini openssl ... -dates ile kontrol edin.
  3. Zinciri -showcerts ile doğrulayın; eksikse CA Bundle ekleyin.
  4. www ya da ek alan adları kapsanıyor mu, bakın.
  5. Cihaz saatini ve önbelleği (özel sekme) test edin.

Özet

NET::ERR_CERT hatalarının büyük kısmı üç nedene dayanır: dolmuş sertifika, eksik ara zincir ve alan adı uyuşmazlığı. Hata kodunu okuyup ilgili çözümü uygulayın. Sertifikayı yenilemek veya www'yi dahil etmek için ücretsiz SSL sihirbazımızı kullanabilir, eksik zincir için ZIP'teki fullchain.pem ya da ca_bundle.crt dosyasını yükleyebilirsiniz.