Neden SSL sertifika doğrulama önemli?
SSL/TLS sertifikası, bir web sitesinin kimliğini doğrulamaya ve sunucu ile tarayıcı arasındaki trafiği şifrelemeye yarar. Doğrulama, eriştiğiniz adresin beklediğiniz site olduğuna dair ek güven sağlar; aynı zamanda süresi geçmiş, eksik zincirli veya iptal edilmiş bir sertifika çeşitli uyarılara yol açabilir. Aşağıda hem kullanıcılar hem de site sahipleri için pratik doğrulama adımları bulacaksınız.
Temel kavramlar: sertifika, zincir ve güven deposu
- Leaf (sunucu) sertifikası: Siteye ait olan X.509 sertifikadır; tarayıcı bu sertifikadaki alan adının (CN/SAN) ziyaret edilen ad ile eşleşip eşleşmediğini kontrol eder.
- Aradaki (intermediate) sertifikalar: Sertifika otoritesinin (CA) kök sertifikası ile sunucu sertifikası arasındaki ara bağlantıyı sağlar. Genellikle sunucu zincirde bu ara sertifikaları sunmalıdır.
- Kök (root) sertifika: İşletim sistemi veya tarayıcı tarafından güvenilen sertifika otoritesinin köküdür; genelde yerel trust store içinde bulunur.
- Sertifika zinciri doğrulama: Sunucu sertifikasından başlayarak ara sertifikalar yoluyla güvenilen kök sertifikaya kadar olan imza doğrulanır ve sertifika alan adı, tarih aralığı ve kullanım amaçları kontrol edilir.
Tarayıcı sertifika uyarıları ne anlama gelir?
Tarayıcılar bir sertifikada problem tespit ettiğinde uyarı gösterir. Yaygın nedenler şunlardır:
- Sertifika süresi dolmuş veya daha önce geçerli değil (tarih hatası).
- Alan adı sertifikadaki SAN/CN ile eşleşmiyor.
- Tarayıcının güven deposunda bulunmayan bir imzalayan (untrusted issuer).
- Eksik aradaki sertifikalar zinciri tamamlanamıyor.
- Sertifika iptal edilmiş olabilir (revocation).
Uyarı aldığınızda acele karar vermemek, bağlantıyı kapatıp doğrulama yapmak genelde doğru yaklaşımdır. Kritik işlemler için site sahibi veya teknik ekip ile doğrulama yapmak önerilir.
Adım adım: Tarayıcı üzerinde hızlı doğrulama
Çoğu modern tarayıcıda temel sertifika bilgileri birkaç tıkla görüntülenebilir. Genel adımlar:
- Adres çubuğundaki kilit ikonuna tıklayın.
- Açılan bilgide "Bağlantı güvenli" / "Sertifika" / "Certificate" gibi bir seçeneği bulun ve detayları görüntüleyin.
- Sertifikanın düzenlenme ve bitiş tarihlerini, Issuer (verici), Subject (aldığı ad) ve parmak izi (fingerprint) bilgilerini kontrol edin.
Tarayıcı arayüzleri zamanla değişebilir; ancak kilit ikonunu kullanarak sertifika detaylarına erişmek çoğu durumda geçerlidir.
Komut satırı ile doğrulama: OpenSSL örnekleri
Komut satırı, zinciri ve revokasyon URI'lerini görmek için hızlı ve tekrarlanabilir bir yol sağlar. Örnek akış:
- Sunucu tarafından gönderilen sertifikaları görüntüleyin:
openssl s_client -connect example.com:443 -showcerts
- Sertifika dosyasını alıp detayları okuyun (PEM formatında saklanmışsa):
openssl x509 -in server_cert.pem -noout -text
- Sertifika parmak izini kontrol edin:
openssl x509 -in server_cert.pem -noout -fingerprint -sha256
- OCSP stapling olup olmadığını görün:
openssl s_client -connect example.com:443 -status -showcerts
Çıktıda "Authority Information Access" bölümünde OCSP URI'si, "CRL Distribution Points" bölümünde CRL URI'leri bulunabilir. Bu URI'leri daha sonra manuel revocation sorguları için kullanabilirsiniz.
OCSP ve CRL kontrolleri (kısa ve uygulanabilir)
Revocation (iptal) kontrolleri için iki yaygın yöntem vardır:
- CRL (Certificate Revocation List): CA tarafından yayımlanan iptal edilmiş seri numaralarının listesi. Genelde büyük olabilir ve periyodik olarak indirilir.
- OCSP (Online Certificate Status Protocol): CA tarafında anlık sorgulama yapmayı sağlar; daha hafif bir yöntemdir. Sunucu OCSP cevabını önceden "staple" edebilir (OCSP stapling), böylece tarayıcıya ek sorgu yaptırılmaz.
Manuel OCSP sorgusu (örnek):
openssl ocsp -issuer issuer.pem -cert server_cert.pem -url http://ocsp.example-ca.com -resp_text -noverify
CRL dosyasını analiz etmek için:
openssl crl -in crlfile.crl -noout -text
Bu araçlar teknik kullanıcılar içindir; sunucu yapılandırmasına veya CA belgelerine göre değişiklik gösterebilir.
Sertifika zinciri sorunları ve çözüm adımları
Sık görülen sorunlar ve kısa çözümler:
- Eksik ara sertifika: Sunucu tam zinciri sunmuyorsa tarayıcı güven deposundaki ara sertifikalara ulaşamayabilir. Çözüm: Sunucuya doğru ara sertifikaları ekleyin (hosting/SSL yapılandırması üzerinden).
- Sertifika süresi dolmuş: Cert süresi geçmişse yenileme gerekir; geçici çözüm yoktur, kullanıcılar uyarı alır.
- Alan adı uyuşmazlığı: Sertifikadaki SAN/CN alanı ziyaret edilen adla uyuşmuyorsa doğru sertifikayı yükleyin.
- Zaman/saati hatalı istemci: Cihaz saatinin yanlış olması, geçerli görünen sertifikaları geçersiz gösterebilir; cihaz saatini kontrol edin.
Site sahibiyseniz, sorun çözümü sırasında SSL sağlayıcınızın veya barındırma teknik desteğinin yönergelerini takip etmek genelde en hızlı yoldur.
Kullanıcılar ve site sahipleri için pratik kontrol listesi
- Kilidi kontrol edin: Adres çubuğunda kilit simgesi ve sertifika bilgileri.
- Sertifika tarihlerini doğrulayın: Not expired.
- Sertifika parmak izi (sha256) gerekiyorsa karşılaştırın.
- Sunucu sahibiyseniz zinciri tam gönderdiğinizden ve OCSP stapling etkin olduğundan emin olun.
- Güvenlik güncellemelerini, özellikle TLS kütüphanelerini düzenli olarak uygulayın.
Sınırlamalar ve ne zaman uzmana başvurmalı?
Bu rehber temel doğrulama adımlarını açıklar; ancak karmaşık sertifika zinciri sorunları, CA ile ilgili teknik konular veya sunucu yapılandırma detayları için sertifika sağlayıcınızın dokümantasyonuna veya deneyimli bir sistem yöneticisine danışmak uygundur. Sertifika doğrulaması tek başına bir sitenin tüm güvenlik durumunu açıklamaz; uygulama güvenliği, kimlik doğrulama ve altyapı yönetimi gibi diğer katmanlar da önemlidir.
Hızlı referans
- Tarayıcı: Kilit > Sertifika detayları.
- Komut satırı: openssl s_client / openssl x509 / openssl ocsp.
- Revocation kontrolü: OCSP ya da CRL URI'lerini kullanın.