Otomatik SSL nedir?
Otomatik SSL, bir alan adı için TLS sertifikasının insan müdahalesi olmadan alınması ve yenilenmesidir. Yazılım, sertifika otoritesine (CA) alan adının sahibi olduğunu kanıtlar, sertifikayı alır, sunucuya yükler ve süresi dolmadan tekrar eder. Bu işi yapan standart ACME'dir (RFC 8555).
Adı SSL olarak kalsa da bugün kullanılan protokol TLS'tir. Sertifika, tarayıcıya iki şeyi söyler: bu alan adı için konuşan sunucu gerçekten odur ve bağlantı şifrelidir. Sertifika süresi dolarsa tarayıcı tam sayfa uyarı gösterir ve ziyaretçilerin çoğu geri döner.
ACME adım adım nasıl çalışır?
ACME istemcisi önce CA'da bir hesap anahtarı oluşturur. Sonra sertifika istediği alan adlarını bildirir ve CA bir challenge verir. İstemci challenge'ı çözer (dosya yayınlar veya TXT kaydı yazar), CA doğrular, istemci de bir sertifika imzalama isteği (CSR) gönderir. CA imzalı sertifikayı geri verir.
Bu doğrulama yalnızca alan adı denetimini kanıtlar (DV sertifikası). Şirketinizin kim olduğunu kanıtlamaz. Kullanıcıya gösterilen kilit simgesi bu yüzden "bu site güvenilir" demez; "bağlantı şifreli ve alan adı doğru" der.
Sertifika neden bu kadar kısa ömürlü?
Let's Encrypt sertifikaları bugün 90 gün geçerlidir. Proje bunun gerekçesini yayımladığı notta açıklar: sızan veya hatalı verilmiş bir sertifikanın etki süresi kısalır ve otomasyon teşvik edilir. Ayrıntılar SSS sayfasında durur.
Kısa ömrün pratik sonucu şudur: yılda bir kez takvime not alarak yenileme yapamazsınız. Yenileme, siz hatırlamadan çalışan bir işe dönüşmelidir. Sertifika sayısı arttıkça elle yönetimin hata payı da artar.
İzleme de otomasyonun parçasıdır. Yenileme sessizce başarısız olabilir; bitişe 20-30 gün kala sertifika süresini kontrol eden bir uyarı kurmak, kesintiyi hafta sonuna denk gelmeden yakalar. Çoklu alt alan adı kullanıyorsanız her birinin ayrı bir sertifika veya ayrı bir yenileme işi olabileceğini unutmayın.
HTTP-01 ile DNS-01 arasındaki fark
CA, sertifikayı vermeden önce bir "challenge" ister. İki yaygın yöntem vardır.
| Yöntem | Nasıl kanıtlanır | Wildcard | Gereksinim |
|---|---|---|---|
| HTTP-01 | http://alanadi/.well-known/acme-challenge/<token> adresinde CA'nın verdiği içerik yayınlanır | Hayır | 80 numaralı porta internetten erişim |
| DNS-01 | _acme-challenge adlı bir TXT kaydı eklenir | Evet | DNS sağlayıcısına yazma erişimi (çoğunlukla API) |
*.example.com gibi wildcard sertifika yalnızca DNS-01 ile alınır. DNS-01 sunucunuzun internete açık olmasını gerektirmez, ama DNS API anahtarınızın otomasyonda durması anlamına gelir. Bu anahtar ele geçirilirse saldırgan sertifika da alabilir. İki yöntemin ödünleşimi budur.
Yenilemeyi ne bozar?
Sertifika alımı çoğu zaman ilk seferde çalışır, üç ay sonra kırılır. Sık nedenler:
- DNS artık yönlenmiyor. Alan adı başka bir sağlayıcıya taşındı veya kayıt değişti. HTTP-01, CA'nın alan adını sizin sunucunuza çözmesini bekler.
- 80 numaralı port kapalı. Güvenlik duvarı kuralı, HTTP-01 isteğinin sunucuya ulaşmasını engeller. "Sadece HTTPS açık olsun" düşüncesi bu yüzden yenilemeyi öldürür.
- CAA kaydı. Alan adınızda CAA kaydı varsa ve Let's Encrypt listede yoksa CA sertifika vermez (RFC 8659).
- Yönlendirme döngüsü. HTTP'den HTTPS'ye, oradan yine HTTP'ye dönen bir kural, token dosyasına hiç ulaşmaz.
- Hız sınırları. Aynı alan adı için çok sayıda başarısız deneme, CA tarafında kısıtlamaya yol açar. Sınırlar resmi sayfada listelenir; hata ayıklarken denemeyi sürekli tekrarlamak durumu kötüleştirir.
CAA kaydı örneği
CAA, hangi CA'ların alan adınız için sertifika verebileceğini belirtir. Yalnızca Let's Encrypt'e izin veren kayıt şöyledir:
example.com. IN CAA 0 issue "letsencrypt.org"
CAA kaydınız yoksa her CA sertifika verebilir. Varsa, kullandığınız CA'yı listeye eklemeyi unutmayın.
HSTS ve origin sertifikası
HSTS (RFC 6797), Strict-Transport-Security başlığıyla tarayıcıya "bu alan adına belirtilen süre boyunca yalnızca HTTPS ile bağlan" der. Güvenlik kazancı gerçektir, ama geri dönüşü zordur: sertifikanız bozulursa tarayıcı, kullanıcıya uyarıyı geçme seçeneği bile vermez. Kısa bir max-age ile başlayın, yenilemenin sorunsuz çalıştığını gördükten sonra artırın.
Ters proxy kullanıyorsanız iki ayrı bağlantı vardır: ziyaretçi ile proxy arası ve proxy ile origin arası. İkincisinde de geçerli bir sertifika kullanmak ve proxy'nin bunu doğrulaması (bazı sağlayıcılarda "full strict" denir), ortadaki adamın araya girmesini engeller. Origin'de kendi imzalı sertifika bırakıp doğrulamayı kapatmak, şifreli ama kimliği sorgulanmayan bir hat bırakır. Origin tarafını kapatma konusu için origin IP gizleme ve origin lock rehberine bakın. Bu mimarinin kendisi ters proxy nedir yazısında anlatılır.
Nexren Shield bunu nasıl ele alır
Aşağıdakiler ürünün bugünkü davranışıdır:
- Panelde alan adını ve origin IP'sini eklersiniz, DNS kaydını (CNAME veya A) panelde gösterilen adrese yönlendirirsiniz. Kayıt yayıldıktan sonra sertifika otomatik alınır.
- Sertifika Let's Encrypt'ten, ACME v2 ve yalnızca HTTP-01 ile alınır. Wildcard desteklenmez; her alan adı kendi sertifikasını alır.
- Yenileme, sertifika bitmeden 15 gün önce başlar. DNS artık Nexren Shield'e yönlenmiyorsa yenileme atlanır; bu yüzden DNS kaydını bozmayın.
- Yeni sertifika, TLS ön katmanında yeniden başlatma olmadan yüklenir. Ön katman sertifikaları 15 saniyede bir yeniler.
- Ön katman HTTP/2 konuşur.
Sınırlar da açık: wildcard gerekiyorsa veya kendi CA'nızı kullanıyorsanız bu akış sizin için uygun olmayabilir. Hesaplar ekibimiz tarafından açılır; kurulum sorularınız için yardım sayfasına ya da iletişim kanalına bakabilirsiniz. Ürünün genel yapısı için Nexren Shield nedir yazısını okuyun.
DNS değişikliğinde sertifika sürprizi
Alan adını başka bir sağlayıcıya taşırken sırayı iyi planlayın. Önce yeni sağlayıcıda sertifikanın alınabilir olduğundan emin olun, sonra DNS kaydını çevirin ve eski kaydın TTL süresi dolana kadar bekleyin. Kaydı çevirmeden önce eski sistemi kapatırsanız ziyaretçiler bir süre hiçbir sertifikaya ulaşamaz. Geri dönüş için eski kaydın değerini not edin.
Kontrol listesi
- Alan adının DNS kaydı Nexren Shield adresine çözülüyor mu?
dig +short example.comile bakın. - CAA kaydınız varsa Let's Encrypt izinli mi?
- Origin'deki yönlendirme kuralları HTTP-01 yolunu bozmuyor mu?
- HSTS'yi kısa
max-ageile başlattınız mı? - Origin'de geçerli bir sertifika var mı ve proxy bunu doğruluyor mu?
Kaynaklar
- RFC 8555: ACME
- RFC 8659: DNS CAA
- RFC 6797: HSTS
- Let's Encrypt SSS
- Neden 90 gün?
- Let's Encrypt hız sınırları
İlgili ürün sayfaları:Yardım merkezi
Sık sorulan sorular
Let's Encrypt sertifikası ne kadar geçerlidir?
Bugün 90 gündür. Kısa ömür, sızan bir anahtarın zararını sınırlar ve otomasyonu zorunlu kılar.
Wildcard sertifika alabilir miyim?
ACME standardında wildcard yalnızca DNS-01 ile alınır. Nexren Shield yalnızca HTTP-01 kullanır, bu yüzden wildcard sertifika desteklemez; her alan adı için ayrı sertifika alınır.
Sertifikayı yenilerken siteyi yeniden başlatmam gerekir mi?
Nexren Shield'de gerekmez. Yeni sertifika, ön katmanın 15 saniyelik yenileme döngüsüyle yeniden başlatma olmadan yüklenir.
Sertifika neden hiç verilmiyor?
En sık neden, alan adının henüz Nexren Shield'e yönlenmemesidir. 80 numaralı portun kapalı olması ve CAA kaydının Let's Encrypt'i yasaklaması da aynı sonucu verir.
HSTS'yi hemen açmalı mıyım?
Hayır. HSTS, tarayıcıya belirli bir süre yalnızca HTTPS kullanmasını söyler. Sertifikanızın sorunsuz yenilendiğinden emin olmadan uzun süre vermeyin.
İlgili rehberler
Ters proxy nedir? Reverse proxy mantığı, TLS ve güvenlik
Ters proxy, istemcilerin bağlandığı ve istekleri arkadaki sunucuya ileten ara katmandır.
Origin IP Gizleme ve Origin Lock: Sızıntı Yolları ve Çözüm
Origin IP, ters proxy arkasındaki gerçek sunucunuzun adresidir.
Nexren Shield nedir? Ters proxy tabanlı web güvenlik servisi
Nexren Shield, web uygulamalarınızın önüne oturan bir ters proxy güvenlik servisidir.