class

KemalWAF::LetsEncryptManager

Inherits Reference / Object

Let's Encrypt (ACME) sertifika yönetimi HTTP-01 challenge kullanarak sertifika üretir ve yeniler

Constants

LETSENCRYPT_PRODUCTION_URL = "https://acme-v02.api.letsencrypt.org/directory"
LETSENCRYPT_STAGING_URL = "https://acme-staging-v02.api.letsencrypt.org/directory"

Let's Encrypt ACME endpoints

Log = ::Log.for("letsencrypt")

Constructors

new(cert_dir : String = "config/certs/letsencrypt", use_staging : Bool = false)
Source

Instance methods

cert_dir

Sertifika dizini

Source
certbot_available?

Certbot mevcut mu?

Source
challenge_store
Source
create_certificate(domain : String, email : String | Nil) : Bool

Sertifika oluştur (ACME protokolü veya Certbot fallback)

Source
delete_challenge_file(token : String)

ACME challenge dosyası sil

Source
get_cert_path(domain : String) : String

Sertifika dosya yolları

Source
get_chain_path(domain : String) : String
Source
get_fullchain_path(domain : String) : String
Source
get_key_path(domain : String) : String
Source
get_or_create_certificate(domain : String, email : String | Nil) : Tuple(String | Nil, String | Nil)

Domain için sertifika al veya oluştur

Source
needs_renewal?(domain : String, days_before : Int32 = 30) : Bool

Sertifika yenileme gerekiyor mu?

Source
read_challenge_file(token : String) : String | Nil

ACME challenge dosyası oku

Source
renew_all_certificates(domains : Array(String), email : String | Nil) : Int32

Yenileme gereken tüm sertifikaları yenile

Source
renew_certificate(domain : String, email : String | Nil) : Bool

Sertifika yenile

Source
staging?

Staging modunda mı?

Source
webroot_path

ACME webroot dizini

Source
write_challenge_file(token : String, content : String)

ACME challenge dosyası yaz (HTTP-01 için)

Source