SSL Sertifika zinciri, aslında Türkçe karşılığı olan zincir kelimesinde olduğu gibi bir birine bağlı olan ve en alttan en üste doğru sertifikaların verilim sırasına göre dizilmesidir. Bir web servisi veya güvenlik amacı ile ulaştığınız bir sistemin kullanmış olduğu sertifikayı sizin aktif olarak kullanabilmeniz için öncelikle o sertifikayı veren Sertifika dağıtıcısına bilgisayarınızın veya kullandığınız aygıtın güvenmesi gereklidir. Aksi halde size bunu belirten bir uyarı çıkacağı gibi Outlook Anywhere örneğinde olduğu gibi sistem hiç çalışmayabilir.
Yukarıda çok güzel bir örnek var, paypal malum ödeme sistemleri web sitesi olup bu uyarı hiçte normal bir durum değildir. Tabiki bu uyarının temel 3 nedeni vardır;
1 – Sertifikanın tarihi doğru mu?
2 – Sertifikanın istek dosyasındaki URL adresi yani verildiği domain’ den farklı bir adres isteği mi yapılmış? Yani sertifika üzerindeki URL ile sizin girdiğiniz URL örtüşüyor mu?
3 – Bu blog yazımın konusu, bu sertifikayı veren dağıtıcıya sizin bilgisayarınız güveniyor mu?
Peki bu sertifika zinciri ne için kullanılır? Örneğin şirketinizin bir web sitesi var ve bunun için bir sertifika satın almak istiyorsunuz, sizin satın alım yaptığınız firma aslında bir kök sertifika dağıtıcı olmayabilir, veya böyle bir firma olmasına karşın kök dağıtıcı rolünü aktif olarak sertifika dağıtımı için kullanmaz ( güvenlik nedeni ile), bu durumda kök sertifika dağıtıcısının onayladığı bir intermediate dediğimiz bir alt merci veya onunda onayladığı bir alt merci daha vermiş olabilir. İşte bunun gibi bir Root tarafından onaylanan bir intermediate CA’ in veya onunda onayladığı bir alt intermediate CA’ den sertifika almış olabilirsiniz. Ancak bu bağlantı sertifika zinciri olarak gösterilir ve günün sonunda bilgisayarınız bu aradaki dağıtıcılara güvenmiyor olsa bile kök dağıtıcıya güvenmesi otomatik olarak onun güvendiği ve güvendiği dağıtıcının verdiği sertifikaya güvenmemizi sağlar.
Not: Bazı sistemler ne yazık ki bu doğrulamayı kendisi yapamadığı için mutlaka tüm zincir içerisindeki sertifikayı ister. Örneğin Firewall, Access Point gibi network aktif cihazları veya Linux sistemler için genelde bu zincirin tamamı sisteme import edilmek istenebilir.
Burada bir kaç kafa karıştıran soru bulunmakta olup onun cevaplarını vermek istiyorum. İlk olarak web serverımız için bir sertifika aldık, bunu veren intermediate üstündeki yani en üstteki root sertifikasını sunucuma yüklemem gerekiyor mu? HAYIR, çünkü buna güvenecek olan istemci makineler olup onlarda zaten olması gerekli, aksi halde merdiven altı bir kurumdan sertifika aldınız demektir, yani çok yaygın olmayan. Peki Intermediate SSL sertifikalarını ( arada kaç tane var ise) yüklemek zorunda mıyım? EVET, aksi halde zincir kırılır ve son kullanıcının root’ u bulamadığı durumlarda zincir de kırık olduğu için sertifikanız güvenilmeyen bir sertifika olarak isimlendirilir.
Umarım faydalı bir yazı olmuştur.