Ana içeriğe geç
DigiCert, Sectigo ve GeoTrust SSL sertifikaları
0850 259 76 06 WhatsApp Destek Bayi Ol
SSL Sertifikaları
Markalar
Kod İmzalama Entrust HSM Thales HSM LEI Kodu
Araçlar
Destek İletişim WhatsApp Sepet
Dil
Para birimi
SSL Sertifikası Al
SSL Güvenliği

SSL Sertifika Zinciri Hataları: Incomplete Chain ve Çözümü

SSL sertifika zinciri (certificate chain) hataları: Incomplete chain, wrong order, expired intermediate sorunlarının tespiti ve çözümü.

10 dk okuma

SSL Sertifika Zinciri (Certificate Chain) Nedir?

SSL güvenliği bir güven zinciri (chain of trust) üzerine kuruludur. Her SSL sertifikası, bir üst otoritenin imzasıyla güvenilir hale gelir:

Root CA Sertifikası → Ara (Intermediate) Sertifika(lar) → Site Sertifikası

Tarayıcılar yalnızca root CA sertifikalarını yerleşik olarak güvenir. Site sertifikasından root'a kadar olan zincirdeki her halka doğrulanabilir olmalıdır. Herhangi bir halka eksik veya bozuksa sertifika zinciri hatası oluşur.

Yaygın Sertifika Zinciri Hataları

1. Incomplete Chain (Eksik Zincir)

En yaygın zincir hatası. Sunucuda yalnızca site sertifikası yüklü, ara sertifika(lar) eksik.

Belirtiler

  • Chrome'da çalışır ama Firefox'ta hata verir (Chrome AIA desteğiyle eksik sertifikayı indirebilir, Firefox indiremez)
  • Masaüstünde çalışır ama mobilde hata verir
  • SSL Labs testi "Chain issues: Incomplete" gösterir

Çözüm

# Ara sertifikayı indirin ve fullchain oluşturun
cat your_domain.crt intermediate.crt > fullchain.pem

# Nginx
ssl_certificate /etc/ssl/fullchain.pem;
ssl_certificate_key /etc/ssl/private.key;

# Apache
SSLCertificateFile /etc/ssl/your_domain.crt
SSLCertificateChainFile /etc/ssl/intermediate.crt

2. Wrong Order (Yanlış Sıralama)

Sertifika dosyalarının birleştirme sırası yanlışsa bazı platformlarda sorun yaşanır.

Doğru Sıralama

  1. Site sertifikası (leaf / end-entity)
  2. Ara sertifika 1 (site sertifikasını imzalayan)
  3. Ara sertifika 2 (varsa — ara sertifika 1'i imzalayan)
  4. Root sertifika eklenmez (tarayıcıda yerleşik)
# Sırayı kontrol edin
openssl s_client -connect domain.com:443 -showcerts 2>/dev/null | grep "s:" | head -10

# Çıktıda sıralama:
# s:CN = yourdomain.com         (site cert)
# s:CN = Sectigo RSA Domain Validation Secure Server CA  (intermediate)
# ...doğru sırada olmalı

3. Expired Intermediate (Süresi Dolmuş Ara Sertifika)

Site sertifikanız geçerli olsa bile ara sertifikanın süresi dolmuş olabilir. Bu durumda zincir doğrulanamaz.

Çözüm

# Ara sertifika tarihini kontrol edin
openssl x509 -in intermediate.crt -noout -dates

# Süresi dolmuşsa, CA'nızdan güncel ara sertifika indirin
# Sectigo: https://support.sectigo.com/articles/Knowledge/Sectigo-Intermediate-Certificates
# DigiCert: https://www.digicert.com/kb/digicert-root-certificates.htm

4. Cross-Signed Chain Sorunları

Bazı CA'lar (özellikle Let's Encrypt) eski cihaz uyumluluğu için cross-signed zincir kullanır. Yeni root'a geçiş sırasında uyumsuzluklar olabilir.

Let's Encrypt Örneği

  • Uzun zincir: DST Root CA X3 → ISRG Root X1 → Ara Sertifika → Site Cert (eski Android desteği için cross-sign; bu çapraz imzanın süresi 2024'te doldu ve artık kullanılmıyor)
  • Kısa zincir: ISRG Root X1 → Ara Sertifika → Site Cert (bugün kullanılan zincir)
  • Certbot varsayılan olarak doğru zinciri seçer; CA birden fazla zincir sunuyorsa --preferred-chain ile tercih belirtilebilir

Sertifika Zinciri Test Araçları

AraçÖzellikErişim
SSL LabsKapsamlı zincir analizi, chain issues raporussllabs.com/ssltest
DATASSL SSL CheckerHızlı sertifika zinciri kontrolüdatassl.com/ssl-checker
whatsmychaincert.comEksik ara sertifikaları otomatik tespit ve bundle oluşturmawhatsmychaincert.com
OpenSSL CLIDetaylı sertifika zinciri incelemeKomut satırı

Sertifika Zinciri Doğrulama Komutları

# Sunucudan dönen tüm sertifikaları göster
openssl s_client -connect domain.com:443 -showcerts

# Zincirdeki her sertifikanın bilgileri
openssl s_client -connect domain.com:443 -showcerts 2>/dev/null | \
  awk '/BEGIN/{cert=""} {cert=cert$0"\n"} /END/{print cert | "openssl x509 -noout -subject -issuer -dates"}'

# Zinciri doğrula
openssl verify -CAfile ca-bundle.crt -untrusted intermediate.crt site.crt

Sonuç

Sertifika zinciri hataları, SSL sorunlarının en yaygın kaynaklarından biridir. Doğru ara sertifikaları doğru sırayla yüklemek — bu kadar basit bir adım — sorunların büyük çoğunluğunu çözer. whatsmychaincert.com ile eksik sertifikaları otomatik tespit edebilir, SSL Labs ile yapılandırmanızı doğrulayabilirsiniz.

Bu yazıyı paylaş
Ali Yiğit
Yazar

Ali Yiğit

Önerilen SSL Sertifikaları

Tüm Ürünler
EV DigiCert

DigiCert Basic EV SSL

DigiCert Basic EV SSL ile genişletilmiş doğrulama. Kurum adı sertifika ayrıntılarında görünür, $1.50

AED 1.402,23 /yıl
Detaylar
EV DigiCert

DigiCert EV Multi-Domain

DigiCert EV Multi-Domain ile çoklu domaini genişletilmiş doğrulama ile koruyun. 250 SAN, $1.500.000

AED 2.816,51 /yıl
Detaylar
EV DigiCert

DigiCert Secure Site EV

DigiCert Secure Site EV ile genişletilmiş doğrulama. DigiCert Smart Seal, güvenlik açığı değerlendir

AED 3.648,67 /yıl
Detaylar