HTTPS üzerinden sertifika doğrulamasını şifreleyelim


16

Certbot webroot eklentisinin belgelerinden

Webroot eklentisi, istenen alan adlarının her biri için geçici bir dosya oluşturarak çalışır ${webroot-path}/.well-known/acme-challenge. Ardından, Şifreleyelim doğrulama sunucusu, istenen her etki alanı için DNS'nin certbot çalıştıran sunucuya çözümlendiğini doğrulamak için HTTP istekleri yapar .

Özel olarak kullanılan bir ev sunucusunda, 80 numaralı bağlantı noktasını devre dışı bıraktım, yani yönlendiricide bağlantı noktası yönlendirme etkin değil. O limanı açmak gibi bir niyetim yok.

Certbot'a, etki alanının sahipliğini doğrulamak için doğrulama sunucusunun bir HTTP isteği değil, bir HTTPS (bağlantı noktası 443) isteği yapması gerektiğini nasıl söyleyebilirim?

Doğrulama sunucusunun, varsayılan olarak zaten HTTP kullandığı için, ev sunucusunun sertifikasını doğrulama ihtiyacı bile olmamalıdır. Kendinden imzalı bir sertifikam veya yenilenmeye hazır olan bir sertifikam olabilir, ancak bu önemli olmamalı.

Şu anda sertifika oluşturmak / yenilemek için bağlantı noktası 80 iletme yanı sıra üzerinde bir sunucu etkinleştirmek gerekiyor durumda. Bu sertifikayı yenilemek için bir cronjob kullanmama izin vermiyor. Yeterince çalışacaktı, ama 443'te dinleyen bir sunucum var, bu da işi yapabilirdi.

Yanıtlar:


8

De bildirildiği gibi https://community.letsencrypt.org/t/shouldnt-verification-via-dns-record-be-a-priority/604/47 letsencrypt.sh DNS üzerinden destekler doğrulama güncelleyici. Birkaç güncelleyici komut dosyası bunu uygulamıştır. Bununla birlikte, HTTP yöntemi ilk yapılandırma için uygulanması en basit yöntemdir.

Sahip olduğunuz komut dosyası, yenileme için TNS SNI veya Önceki Anahtarın Elde Edildiğine dair Kanıt kullanabilir. Spesifikasyon https://tools.ietf.org/html/draft-ietf-acme-acme-01#section-7.5 adresinde bulunabilir . Bu durumda, HTTP'yi etkinleştirmeniz gerekmez.


Teşekkürler, DNS tabanlı doğrulamayı unuttum. Dokümanlar zar zor bahsettiğinden, üzerinde herhangi bir bilgi bulmak nispeten zordu. Namecheap için kanca yok, bu yüzden şimdi bir tane uygulamaya çalışacağım ve nasıl çalıştığını kontrol edeceğim. Beklendiği gibi çalışırsa cevabı kabul edeceğim, ancak şu anda yenileme için alan olmadığından biraz zaman alabilir. Yoksa sunucu cronjobed olabilir bir sarıcı olarak hareket böylece sunucuya --webroot komutunu pişirmek zorunda kalacağım.
Daniel F

Az önce kontrol edildi, Namecheap'in API'sı oldukça kötü (bir tane eklemek veya değiştirmek için TÜM kayıtların üzerine yaz), bu durumda DNS seçenek değildir. Ayrıca şey daha karmaşık hale getirir (API anahtar yönetimi) diğer kayıt şirketleri kullanıyorum. Namecheap'in API anahtarı size yeni etki alanlarını kaydetme veya etki alanlarını aktarma imkanı verir, bu FK olarak güvenli değildir.
Daniel F

@DanielF Yenileme için ne DNS ne de HTTP doğrulamasının kullanılmasını beklemiyorum. Sunucularınız varolan sertifika için TLS SNI'yi geçmesi gerektiğinden ve istek varolan sertifika ile imzalanabileceğinden ikisi de gerekli değildir. Her ikisi de yeterli olmalıdır. DNS ve HTTP, kaydolmak için makul yöntemlerdir. İlk sertifikanız yenilenmeye hazır olduğunda sorunları çözmek için 30 gününüz olmalıdır.
BillThor
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.