Apache Sunucumda Yüklü Sectigo Wildcard SSL Sertifikası Bazı Mobil Tarayıcılarda ve Eski Cihazlarda Neden Güvenli Değil Uyarısı Veriyor, Ara Sertifika Zinciri Eksikliği mi Var?

0

Yeni kurduğum e-ticaret sitemiz için geçen hafta Sectigo Wildcard ssl sertifikası aldım ve Apache sunucuma kurdum. Kurulumu yaparken her adımı dikkatlice takip ettim, hatta SSL Labs testinde A+ puan aldım. Masaüstü Chrome, Firefox gibi tarayıcılarda hiçbir sorun yok, yeşil kilit simgesi pırıl pırıl yanıyor. Ancak iş mobil tarafa gelince çıldıracak gibi oluyorum. Özellikle eski android telefonlarda veya bazı iPhone modellerinde Safari tarayıcısında sitem Güvenli Değil uyarısı veriyor. Müşterilerimizden sürekli şikayet alıyoruz, bu durum satışlarımızı olumsuz etkiliyor ve siteye olan güveni zedeliyor. Sanki sertifika hiç yüklü değilmiş gibi davranıyor. Araştırdığım kadarıyla bu durum genellikle ara sertifika zincirinin tam olarak yüklenmemesinden veya tarayıcıların kök sertifika depolarının eski olmasından kaynaklanabiliyormuş. Apache yapılandırmamda bir hata mı yaptım acaba? Yoksa Sectigo’dan gelen sertifika dosyalarında mı bir eksiklik var? Bu acil sorunu nasıl çözebilirim, lütfen yardım edin!

Cevaplar (1)

2

Anlattığın durum tam da beklediğimiz bir senaryo. ssl Labs’ten A+ almanız, sunucunun sertifikayı ve zinciri genel olarak doğru sunduğunu gösterir, ancak bu testler her zaman en eski veya en özel istemci konfigürasyonlarını simüle etmeyebilir. Özellikle eski android ve bazı iPhone modellerinde yaşanan ‘Güvenli Değil’ uyarısı, neredeyse kesinlikle Ara sertifika zincirinin eksik veya yanlış sırada yapılandırılmasından kaynaklanır.

Eski cihazlar ve tarayıcılar, güven zincirini oluşturmak için sunucudan gelen her ara sertifikaya ihtiyaç duyar. Kendi kök sertifika depoları güncel olmadığı için, sunucunun onlara tüm yolu göstermesi gerekir. Sectigo gibi sertifika otoriteleri, sana genellikle alan adına özel sertifikanın yanı sıra bir de Ca-bundle.crt veya benzeri bir isimle ara sertifikaları içeren bir dosya gönderir. Bu dosyanın içinde birden fazla BEGIN CERTIFICATE ve END CERTIFICATE bloğu bulunur ve bunlar genellikle doğru sırada (senin sertifikana en yakın olandan köke doğru) sıralanmıştır.

Apache yapılandırmanda bu paketi doğru bir şekilde belirtmen gerekiyor. Httpd.conf veya sitenin sanal host (VirtualHost) yapılandırma dosyasında (genellikle /etc/httpd/conf.d/ssl.conf ya da sitenin kendi .conf dosyası) aşağıdaki yönergeleri kontrol etmelisin:

SSLEngine on
SSLCertificateFile '/path/to/your_domain.crt'
SSLCertificateKeyFile '/path/to/your_private.key'
SSLCertificateChainFile '/path/to/your_ca_bundle.crt'

Burada en kritik nokta SSLCertificateChainFile yönergesidir. Bu yönergenin Sectigo'dan aldığın tüm ara sertifikaları içeren dosyayı (örneğin Ca-bundle.crt) işaret ettiğinden emin olmalısın. Bazı eski Apache sürümlerinde SSLCACertificateFile kullanılsa da, güncel ve zincir paketleri için SSLCertificateChainFile tercih edilir. Dosya yolunun doğru olduğundan ve Apache kullanıcısının bu dosyayı okuma iznine sahip olduğundan emin ol.

Bu dosyayı güncelledikten sonra Apache sunucunu yeniden başlatman şart. Komut genellikle şöyle olur:

Sudo systemctl restart httpd

Veya

Sudo service httpd restart

Yeniden başlattıktan sonra, sorunu yaşadığın mobil cihazlardan tekrar kontrol et. Ayrıca, üçüncü taraf bir SSL denetleyici aracı (örneğin, SSL Shopper's SSL Checker veya DigiCert SSL Installation Diagnostics Tool) kullanarak sertifika zincirinin tüm tarayıcılar için doğru şekilde sunulup sunulmadığını detaylıca kontrol edebilirsin. Bu araçlar genellikle eksik ara sertifikaları tespit etmede daha başarılıdır.

Kalıcı Çözüm İçin:

Bu tür sorunların tekrar etmemesi adına, SSL sertifikası kurulum ve yenileme süreçlerinde her zaman CA tarafından sağlanan Tüm ara sertifika paketini tek bir dosyada kullanarak SSLCertificateChainFile yönergesini doğru bir şekilde yapılandırdığından emin ol. Ayrıca, sunucu işletim sistemini ve Apache gibi web sunucusu yazılımlarını güncel tutarak, bilinen zafiyetleri ve uyumluluk sorunlarını önceden gidermiş olursun. Bu, özellikle eski cihazlarla uyumluluk konusunda kritik öneme sahiptir.

Kullanıcılar