Kendinden imzalı SSL sertifikası yenilenebilir mi? Nasıl?


18

SSL sertifikaları için oldukça yeniyim ve HTTPS için kullandığım kendinden imzalı bir sertifikanın, sitenin tüm müşterileri sahip oldukları "istisnaya izin ver" sürecinden geçmek zorunda kalmadan son kullanma tarihini uzatmak için yenilenip yenilenemeyeceğini bilmek istiyorum siteyi ilk kez ziyaret ettiklerinde veya sıfırdan oluşturulmuş yeni kendinden imzalı sertifika düzenlerken olduğu gibi.

Ben buldum aşağıdaki öğretici nasıl kullanarak kendinden imzalı sertifika yenilemek gösteren opensslama kullanmak mümkün değildi böyle tarayıcım sessizce o "Güvenilmeyen Sitesi" gösteren ekran uyarı olmadan kabul ettiğini:

  # cd /etc/apache2/ssl
  # openssl genrsa -out togaware.com.key 1024
  # chmod 600 togaware.com.key
  # openssl req -new -key togaware.com.key -out togaware.com.csr
    AU
    ACT
    Canberra
    Togaware
    Data Mining
    Kayon Toga
    Kayon.Toga@togaware.com
    (no challenge password)
  # openssl x509 -req -days 365 -in togaware.com.csr \
            -signkey togaware.com.key -out togaware.com.crt
  # mv apache.pem apache.pem.old
  # cp togaware.com.key apache.pem 
  # cat togaware.com.crt >> apache.pem 
  # chmod 600 apache.pem
  # wajig restart apache2

Benim kurulum hemen hemen bu cevap açıklandığı gibi ve ben bir PEM dosyası yerine CRT ve KEY dosyaları ( bu öğretici ) kullanıyorum, bu yüzden belki de benim durumumda uygulamaya çalışırken bir şey berbat.

Daha sonra, kendinden imzalı bir sertifikayı yenilemenin tamamen imkansız olduğunu gösteren birçok forum girişi buldum ve sıfırdan yeni bir tane oluşturmak zorundayım.

Herhangi bir yardım mutluluk duyacaktır ... veya bu soru /server// veya /superuser// için daha uygun olur mu?


7
Bu soruyu küçümsemek yerine, lütfen bu konuda ne geliştirmeniz gerektiği konusunda özel tavsiyeler verin.
FriendFX

Yanıtlar:


23

Tanımı gereği, otomatik olarak imzalanan bir sertifikaya yalnızca doğrudan güven , yani Firefox gibi Web tarayıcılarının "istisnaya izin ver" işlemi olarak gösterdikleri gibi güvenilebilir . Son bitene kadar çok özel bir sertifika "güvenilir" olarak bildirilir. Bu modelden ve özellikle de sertifikada yer alan verilerin bir parçası olan son kullanma tarihinden çıkmadan bir sertifikada hiçbir şey değiştirilemez.

Yenilemeyi bir tür aile işi olarak hayal edebilirsiniz: bir sertifika "yenilendiğinde", yerine daha genç bir kardeş gelir. İstemciler yeni sertifikayı sessizce kabul eder, çünkü önceki sertifika ile aynı soyları paylaşır. Kendinden imzalı sertifikalar gerçek yetimlerdir: ataları yoktur. Bu nedenle, kardeş ve otomatik şanzıman yok.

(Bunun dışında soy şeyden, yenileme olan yeni sertifikanın oluşturulması. Sertifikalar olan değişmez . "Yenileme" eski ve yeni sertifika arasındaki ilişki hakkında bir düşünce yoludur.)

Sessiz yenilemeler yapabilmek istiyorsanız, kendinden imzalı bir CA sertifikasına ihtiyacınız vardır . Sunucularınız için bu CA'dan sertifika yayarsınız ve müşterilerinizden bu CA'ya güvenmesini istersiniz. Tabii ki bu çok soruyor: güvendiğiniz bir CA, tüm İnternet'i gözünüzde taklit edebilen bir CA. Temel olarak, bu çözüm bir sorumluluk ve bazı işler olan kendi CA'nızı oluşturmak ve korumakla ilgilidir.


Bir dahaki sefere kendinden imzalı sertifika ürettiğinizde, sertifikayı uzun ömürlü hale getirin. Sertifikaların süresi çoğunlukla iptal işleminin yapılması için sona erer (sertifika geçerliliğinin sona ermesi CRL'nin süresiz büyümesini önler). Kendinden imzalı bir sertifika için iptal olmaz, bu nedenle sertifikayı 20 yıl boyunca geçerli kılabilirsiniz. Ya da 2000 yıldır, bu konuda ( İstemci yazılımına bağlı olarak Yıl 2038 Sorunu bir noktada ortaya çıkabilir).


Kapsamlı cevap için teşekkürler! Bununla bağlantılı olduğum öğreticiyle ilgili ne anlama geldiğini merak ediyorum . Bu yalnızca kendinden imzalı CA sertifikaları için mi? Sanırım ben sadece (ve öğretici okuduktan sonra düşündüm) eski olandan özel anahtar okumak ve yeni bir "uyumlu" bir oluşturmak için bir yol vardı ... yerine bir "çocuk" gibi görünüyor "yetim". Bu arada güzel benzetme!
FriendFX

@FriendFX - İstediğiniz mümkün değil. Tom, yeni bir sertifika oluşturduğu için haklı.
Ramhound

@Ramhound - Anlıyorum. Tek açık soru şudur: O zaman bu öğreticinin amacı nedir?
FriendFX

@FriendFX - İnternette rastgele bir adam tarafından yazıldı, çünkü bir blogları olduğu için ne yazdıklarını anladıkları anlamına gelmiyor. Yazar sadece öğreticinin yeni bir sertifika ile sonuçlanacağını
açıklamıyor

3
@FriendFX Evet, bu eğitim yalnızca kendinden imzalı CA sertifikaları için çalışacaktır. Aynı anahtar çiftini ve konuyu kullanırsanız, her biri verilen sertifikalar için geçerli bir yayıncı olarak tatmin edecek birden çok CA sertifikası oluşturabilirsiniz; bu sertifikalar, "çapraz zincirleme" olarak adlandırılan farklı ana CA'lar tarafından bile verilebilir.
Calrion

3

Kısa cevap: Hayır.

Kendinden imzalı bir sertifikaya güvenmek, bu pasaportu veren ülke yerine tek bir pasaporta güvenmek gibidir. Yeni bir pasaport alırsanız, özellikle farklı özelliklere sahip (pasaport numarası, tarihler vb.) Farklı bir şey olduğu için eskisine güvenen biri tarafından otomatik olarak güvenilmez; eski pasaportun yenisine güvenilebileceğini bilmek için açıkça güvenen birinin temeli yoktur.


0

Kendinden imzalı sertifikalar kullanıyorsanız (pencerelerde xca kullanmanızı öneririz) son kullanma tarihini 7999-12-31 (UTC için maksimum zaman) ve başlangıç ​​tarihini 1970-01-01 olarak ayarlayabilirsiniz. PC'lerde yanlış yapılandırılmış saat / tarih ile uyumluluk)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.