Web servisimizde istemci sertifikası doğrulama (mTLS) uygularken tarayıcı ve CRL/OCSP sorunları yaşıyorum, çözüm nedir?

0

Şirket içi kritik bir web servisimiz için geleneksel kullanıcı adı/şifre doğrulamasının ötesine geçerek daha güçlü bir güvenlik katmanı eklemek amacıyla mTLS (mutual TLS) yani istemci sertifikası doğrulama yöntemini devreye almaya çalışıyoruz. Gerekli CA sertifikalarını ve istemci sertifikalarını oluşturup sunucu tarafındaki nginx yapılandırmasını tamamladık. Ancak, bu yapılandırmayı devreye aldığımızda, farklı tarayıcılarda (özellikle Chrome ve Edge) istemci sertifikası seçimi ve sunucuya gönderimi aşamasında tutarsızlıklar yaşıyoruz. Bazı tarayıcılar sertifikayı hiç sormadan bağlantıyı reddederken, bazıları doğru sertifikayı seçmemize rağmen yine de bağlantı hatası veriyor. Özellikle CRL (Certificate Revocation List) ve OCSP (Online Certificate Status Protocol) kontrollerinde ciddi gecikmeler veya başarısızlıklar gözlemledik. Bu durum, istemci sertifikalarının geçerlilik denetiminin sunucu tarafında doğru yapılandırılmadığını mı gösteriyor, yoksa tarayıcıların istemci sertifikası yönetimi ve CRL/OCSP sorgulama mekanizmalarında standart dışı davranışlar mı var? Bu karmaşık mTLS yapısını sorunsuz bir şekilde nasıl hayata geçirebiliriz?

Cevaplar (1)

0

MTLS uygulamasında tarayıcı tutarsızlıkları ve CRL/OCSP denetimlerindeki gecikmeler, Istemci-sunucu sertifika doğrulama zinciri ve Geçerlilik denetim mekanizmalarındaki teknik yapılandırma eksiklikleridir.

Bu sorunlar, Nginx sunucu yapılandırmasının ve istemci tarafı sertifika yönetiminin doğru entegrasyonuyla kesinlikle giderilebilir. Sistem istikrarlı bir şekilde çalışacaktır.

Olası kaynaklar, Nginx'in CRL/OCSP sorgulama stratejileri, tarayıcıların işletim sistemi sertifika depolarına erişim farklılıkları ve istemci sertifika zincirinin eksik veya hatalı kurulumudur.

Adım Adım çözüm:

  1. Nginx Yapılandırması:
    • `ssl_verify_client` seviyesini doğru ayarlayın.
    • `ssl_client_certificate`, `ssl_crl` ve `ssl_trusted_certificate` ile tüm sertifika ve iptal listelerini doğru tanımlayın. `ssl_verify_depth` değerini zincir derinliğine göre ayarlayın.
  2. CRL/OCSP Optimizasyonu:
    • OCSP Stapling'i etkinleştirin: `ssl_stapling on; ssl_stapling_verify on;` yönergelerini ekleyin. OCSP sorguları için geçerli bir `resolver` (örn: '8.8.8.8 valid=300s;') tanımlayın. Sunucunuzun CRL/OCSP dağıtım noktalarına Ağ erişimi olduğundan emin olun.
  3. İstemci Tarafı Sertifika Yönetimi:
    • İstemci sertifikalarının ve CA zincirinin Işletim sistemi sertifika depolarına (windows CertMgr, macOS Keychain Access) doğru yüklendiğini kontrol edin. Tarayıcıların bu depolardan yararlandığını unutmayın.
  4. Detaylı hata Ayıklama:
    • Nginx'in `error.log` dosyasını ('info' veya 'debug' seviyesinde) inceleyin.
    • Tarayıcı geliştirici araçları ve Wireshark gibi araçlarla TLS el sıkışma sürecini analiz edin.

Bu adımların titizlikle uygulanması, mTLS sisteminizin istikrarlı ve güvenli çalışmasını sağlayacaktır. Başarılar dilerim.

Kullanıcılar