localhost CN için kendinden imzalı bir SSL sertifikası oluşturdum. Firefox başlangıçta şikayet ettikten sonra beklendiği gibi bu sertifikayı kabul etti. Ancak Chrome ve IE, sertifikayı Güvenilir Kökler altındaki sistem sertifika deposuna ekledikten sonra bile kabul etmeyi reddediyor. Chrome'un HTTPS açılır penceresinde "Sertifika bilgilerini görüntüle" seçeneğine tıkladığımda sertifika doğru şekilde yüklenmiş olarak listelenmesine rağmen, sertifikaya güvenilemeyeceği konusunda ısrar ediyor.
Chrome'un sertifikayı kabul etmesi ve bu konuda şikayet etmeyi bırakması için ne yapmam gerekiyor?
Mac'te, kendinden imzalı sertifikayı Sistem anahtar zincirine eklemek için Anahtar Zinciri Erişimi yardımcı programını kullanabilirsiniz; Chrome daha sonra bunu kabul edecektir. Adım adım talimatları burada buldum:
Google Chrome, Mac OS X ve Kendinden İmzalı SSL Sertifikaları
Temel olarak:
Eğer Linux kullanıyorsanız, bu resmi wiki sayfalarını da takip edebilirsiniz:
Temel olarak:
Şimdi, aşağıdaki komut sertifikayı ekleyecektir (burada YOUR_FILE dışa aktarılan dosyanızdır):
certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n YOUR_FILE -i YOUR_FILE
Tüm sertifikalarınızı listelemek için aşağıdaki komutu çalıştırın:
certutil -d sql:$HOME/.pki/nssdb -L
Eğer hala çalışmıyorsa, bu hatadan etkilenmiş olabilirsiniz: Sorun 55050: Ubuntu SSL hatası 8179
Not: Lütfen yukarıdaki komutları kullanmadan önce libnss3-tools
'a sahip olduğunuzdan emin olun.
Eğer sahip değilseniz, lütfen yükleyin:
sudo apt-get install libnss3-tools # on Ubuntu
sudo yum install nss-tools # on Fedora, Red Hat, etc.
Bonus olarak, aşağıdaki kullanışlı komut dosyalarını kullanabilirsiniz:
$ cat add_cert.sh
certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n $1 -i $1
$ cat list_cert.sh
certutil -d sql:$HOME/.pki/nssdb -L # add '-h all' to see all built-in certs
$ cat download_cert.sh
echo QUIT | openssl s_client -connect $1:443 | sed -ne '/BEGIN CERT/,/END CERT/p'
Kullanım:
add_cert.sh [FILE]
list_cert.sh
download_cert.sh [DOMAIN]
Chrome'u --auto-ssl-client-auth
parametresiyle çalıştırın
google-chrome --auto-ssl-client-auth
Sitenin sunulduğu adresin sertifika ile aynı olduğundan emin misiniz? Chrome ve kendinden imzalı bir sertifika ile aynı sorunları yaşadım, ancak sonunda sertifikadaki alan adının doğrulanması konusunda inanılmaz derecede seçici olduğunu fark ettim (olması gerektiği gibi).
Chrome'un kendi sertifika deposu yoktur ve Window'unkini kullanır. Ancak Chrome, sertifikaları depoya aktarmanın bir yolunu sunmaz, bu nedenle bunları IE aracılığıyla eklemelisiniz.
Google Chrome'da Sertifika Yükleme
Internet Explorer'da Sertifika Yükleme
Ayrıca kendinden imzalı sertifikalar oluşturmak için birkaç farklı yaklaşım için şuna bir göz atın (bahsetmediğiniz için IIS kullandığınızı varsayıyorum).