TLS CERTIFICATEexample.comFREEvalid 90 daysauto-renews via ACMELet's Encrypt + ACME

Haydi Şifreleyelim

10 dk okumaWeb Teknolojisi

2015'ten önce her TLS sertifikası paraya (genellikle yılda yüzlerce dolara) mal oluyordu ve verilme süreci çok adımlı manuel bir çileydi. Let's Encrypt, 2015'in sonlarında tek bir teklifle beta sürümüne ulaştı: ücretsiz, otomatik, insan müdahalesi olmayan 90 günlük sertifikalar. On yıl sonra dört milyardan fazla sertifika yayınladı ve evrensel HTTPS'yi etkili bir şekilde mümkün kıldı.

Makalenin tam metni aşağıda İngilizce olarak verilmektedir.

Let'in Encrypt'i, Mozilla, EFF, Cisco, Akamai ve diğerleri gibi sponsorlar tarafından finanse edilen, ABD 501(c)(3) kar amacı gütmeyen bir kuruluş olan Internet Security Research Group (ISRG) tarafından işletilen bir Sertifika Yetkilisidir. Misyonu, İnternet trafiğini şifrelemeyi evrensel olarak kullanılabilir hale getirmektir ve makul ölçülerde başarılı olmuştur.

Sayılar

Llet'in Encrypt'in ölçeği şaşırtıcıdır:

  • Aktif sertifikalar: ~2025 sonu itibarıyla ~430 milyon
  • Korunan alan adları: ~325 milyon
  • Verilen sertifikaların kullanım ömrü: Lansmandan bu yana ~6 milyar
  • İşletme maliyeti: yılda 5 milyon doların altında
  • Çalışan sayısı: yaklaşık 25 çalışan

Bağlam açısından, Let's Encrypt diğer tüm CA'ların toplamından daha fazla sertifika yayınlıyor ve düzenleme hacmi bakımından en büyük CA olmuştur. yıl.

ACME protokolü

Let's Encrypt'i mümkün kılan teknik yenilik, tam otomatik sertifika düzenlemeye yönelik bir protokol olan ACME'tir (Otomatik Sertifika Yönetim Ortamı). 2019'da RFC 8555 olarak standartlaştırılan ACME, bir istemcinin nasıl sertifika istediğini, etki alanının kontrolünü nasıl kanıtladığını ve verilen sertifikayı nasıl indirdiğini tanımlar; bunların tümünü insan katılımı olmadan yapar.

Akış:

  1. Müşteri CA'da bir hesap oluşturur (tek seferlik, bir anahtar çiftine kayıtlı).
  2. Müşteri bir veya daha fazla sertifika ister domains.
  3. CA, challenges ile yanıt verir - istemcinin her etki alanının kontrolünü göstermek için tamamlaması gerektiğini kanıtlar.
  4. Client, zorlukları tamamlar ve CA'ya bilgi verir.
  5. CA, sertifikayı doğrular ve yayınlar.
  6. Client bunu indirir ve dağıtır. it.

Tüm süreç 10–60 saniye sürer.

Üç meydan okuma türü

  • HTTP-01: İstemci şu adrese belirli bir dosya koyar: http://example.com/.well-known/acme-challenge/. CA bunu alır ve içeriğini doğrular. 80.
  • DNS-01: bağlantı noktasındaki web sunucusunun kontrolünü gerektirir. İstemci, _acme-challenge.example.com adresinde belirli bir değere sahip bir TXT kaydı ekler. CA, DNS'yi sorgular ve doğrular. Joker karakter sertifikaları için gereklidir ve bağlantı noktası 80'e ulaşılamadığında kullanışlıdır.
  • TLS-ALPN-01: İstemci, acme-tls/1 ALPN protokolüyle 443 numaralı bağlantı noktasında TLS anlaşması sırasında belirli bir sertifika sunar. CA bir TLS bağlantısı başlatır ve doğrular. 80 numaralı bağlantı noktaları ve DNS kısıtlandığında kullanışlıdır.

Ortak istemci araçları

  • certbot — EFF'nin referans istemcisi, geniş eklenti ekosistemi, Python tabanlı, çoğu sunucu yöneticisi için varsayılan.
  • acme.sh — saf kabuk komut dosyası, minimum düzeyde bağımlılık, yönlendiriciler ve yerleşik sistemler üzerinde çalışır.
  • Caddy — yerleşik ACME'ye sahip web sunucusu; sertifika yönetimi gerekmez, yalnızca etki alanını yapılandırın.
  • Traefik, nginx-ingress, AWS ACM, Cloudflare — birçok platform ACME'yi yerel olarak entegre eder, böylece kullanıcılar sertifikaları hiçbir zaman görmez.

Neden 90 günlük sertifikalar

Let'in Şifrelemesi 90 günlük yayınlar Müşteriler genellikle 60 günlük süre sonunda yenilenen sertifikalara sahiptir. Kısa ömürler:

  • LGüvenliği aşılmış özel anahtarlardan kaynaklanan hasarı sınırlandırın
  • Yenileme otomasyonunu zorunlu kılın, bu da yenilemelerin gerçekten planlandığı gibi gerçekleşmesi anlamına gelir
  • İptalin önemini azaltın (güvenliği ihlal edilmiş bir sertifikanın süresi zaten yakında dolar)

Sektör genel olarak daha kısa kullanım ömrüne yöneldi; büyük tarayıcılar artık ticari sertifikalara sınırlama getiriyor 397 günde ve 90 günlük veya 47 günlük ticari sertifika önerileri tartışılıyor.

Let's Encrypt ne yapmaz

  • Genişletilmiş Doğrulama. Let's Encrypt yalnızca Etki Alanı Doğrulaması yapar. Kuruluşunuzun yasal adını taşıyan bir EV sertifikası istiyorsanız ticari bir CA.
  • Kod imzalama sertifikalarına ihtiyacınız vardır. Farklı güven depoları, farklı prosedürler.
  • S/MIME e-posta sertifikaları. Ayrıca farklı — Let's Encrypt yalnızca TLS yapar.
  • Phone support. Yalnızca self servis; yardım için topluluk forumları. Aksi takdirde ücretsiz ekonomi işe yaramazdı.

Etki

Let's Encrypt'ten önce, HTTPS'nin benimsenmesi sayfa yüklemelerinin %30'u civarındaydı. 2020 yılına gelindiğinde bu oran %80'i geçmişti. Bugün yüzde 95'in çok üzerinde. Tarayıcılar artık HTTP sitelerini Güvenli Değil olarak işaretliyor çünkü HTTPS'ye geçmenin maliyeti sıfıra düştü. Bugün HTTPS ile birlikte gelen yeni sitelerin, blogların, yan projelerin ve dahili araçların büyük çoğunluğu bunu Let's Encrypt'in en az dirençli yol haline getirmesi nedeniyle yapıyor.

Görev tam olarak tamamlanmadı - bazı eski hizmetler hala HTTP kullanıyor, bazı bölgeler ve İSS'ler gecikme yaşıyor - ancak İnternet ölçülebilir derecede daha güvenli bir yer çünkü kar amacı gütmeyen bir kuruluş sertifikaların ücretsiz olması gerektiğine karar verdi.

Sık sorulan sorular

Let's Encrypt gerçekten tamamen ücretsiz mi?
Evet, sertifikalar için. ISRG, operasyonları finanse etmek için bağışları ve kurumsal sponsorlukları kabul eder. Herhangi bir özellik için kademe yok, ek satış yok ve ücret yok. Maliyet, sponsorlar ve bağışçılar tarafından karşılanır, böylece daha geniş İnternet, HTTPS'yi hiçbir marjinal maliyet olmadan alır.
Let's Encrypt sertifikaları ücretli olanlar kadar güvenli mi?
Şifreleme aynıdır; genel kök programdaki her CA aynı TLS standartlarını kullanır. Let's Encrypt'in sertifikaları her modern tarayıcı tarafından kabul edilir. Farklılıklar, güvenlik gücünde değil, doğrulama düzeyinde (yalnızca DV) ve operasyonel destektedir.
Ne sıklıkla yenilemem gerekiyor?
Uygulamada her 60 günde bir — müşteriler, sertifikanın 30 günlük geçerlilik süresi kaldığında yenilenir. ACME'nin asıl amacı bunun otomatik olmasıdır, dolayısıyla yenileme siz fark etmeden gerçekleşir. İstemciniz bozulursa, Let's Encrypt'ten sorunu düzeltmek için 20 gün sürenin dolduğuna dair e-postalar alırsınız.
Bir web sitesi Let's Encrypt ile güvende olduğu konusunda yalan söyleyebilir mi?
Bir kimlik avı sitesi, kendi etki alanı için mutlaka bir Let's Encrypt sertifikası alabilir; her CA, etki alanı kontrolünü kanıtlayabilen herkese verir. Sertifika, sitenin güvenilir olduğunu değil, URL'sinin söylediği gibi olduğunu kanıtlar. Alan Adı Doğrulaması her zaman bu anlama geliyordu ve Let's Encrypt'in uygun fiyatlı olması bunu değiştirmedi.
Let's Encrypt'in CA anahtarının güvenliği ihlal edilirse ne olur?
Planlanan bir yanıt, çevrimdışı olarak yeni kökler oluşturmayı (ISRG'nin birden fazla kökü ve aracısı vardır), yeni zincir altında sertifikaları yeniden yayınlamayı ve yeni kökler eklemek ve eskilerine güvenmemek için tarayıcılarla koordinasyonu içerir. ISRG bu senaryonun deneme çalışmalarını gerçekleştirdi. Gerçek bir olay yine de büyük ölçüde yıkıcı olabilir ancak yıllar değil, haftalar içinde kurtarılabilir.
Haydi Şifreleyelim Açıklandı: Ücretsiz Otomatik TLS Sertifikaları Web'i Nasıl Ele Geçirdi?