Ana içeriğe geç

ACME - Otomatik Sertifika Yönetimi

SecTrail CM, ACME (Automatic Certificate Management Environment - Otomatik Sertifika Yönetim Ortamı) protokolünü destekleyen tüm Sertifika Otoritesi sistemleri ile entegrasyon sağlayarak SSL/TLS sertifikalarının otomatik olarak sipariş edilmesini, yenilenmesini ve yönetilmesini sağlar.

Desteklenen ACME Sağlayıcılar

SecTrail CM, ACME protokolünü destekleyen aşağıdaki Sertifika Otoriteleri ile uyumludur:

  • Let's Encrypt - Ücretsiz DV sertifikalar için en popüler ACME sağlayıcı
  • Let's Encrypt Staging - Test ve geliştirme ortamı için test sunucusu
  • ZeroSSL - Ücretsiz SSL sertifikalar sağlayan ACME servisi
  • Buypass - Norveç merkezli ücretsiz Sertifika Otoritesi
  • Buypass Staging - Buypass test ortamı
  • SSL.com RSA - RSA algoritması ile SSL.com ticari sertifikaları
  • SSL.com ECC - ECC (Elliptic Curve) algoritması ile SSL.com sertifikaları
  • Google Trust Services - Google'ın kurumsal ACME servisi
  • Google Trust Services Staging - Google test ortamı
  • DigiCert - DigiCert ACME servisi (kurumsal)
ACME Protokolü

ACME protokolü, sertifika yaşam döngüsünün otomasyonunu sağlayan açık bir standarttır (RFC 8555). Bu dokümantasyonda Let's Encrypt örneği üzerinden entegrasyon adımları anlatılacaktır.

Bağlantı Gereksinimleri

GereksinimDetayAçıklama
ProtokolACME v2 (HTTPS)RFC 8555 standardı
Kimlik DoğrulamaEmailACME account registration
Doğrulama YöntemleriDNS-01, HTTP-01Domain ownership doğrulama
DNS-01 Port53 (DNS)Domain Delegasyonu için gerekli (opsiyonel)
HTTP-01 Port80 (HTTP)HTTP doğrulama için gerekli (opsiyonel)
DNS IntegrationPowerDNS, AkamaiDNS-01 otomasyonu için önerilen

Otomatik İşlemler

SecTrail CM, ACME protokolü üzerinden aşağıdaki işlemleri otomatik gerçekleştirir:

  1. ACME Hesap Kaydı: Sertifika siparişi için ACME hesabı oluşturma
  2. Sertifika Siparişi: Yeni SSL/TLS sertifikası talebi oluşturma
  3. Domain Doğrulama: DNS-01 veya HTTP-01 challenge ile domain doğrulama
  4. Otomatik DNS Kayıt Yönetimi: DNS doğrulama kayıtlarının otomatik oluşturulması ve silinmesi
  5. Sertifika Düzenleme: Sertifikanın otomatik olarak alınması
  6. Sertifika Yenileme: Süresi dolmak üzere olan sertifikaların otomatik yenilenmesi
  7. Sertifika Dağıtımı: Düzenlenmiş sertifikaların sisteme otomatik eklenmesi

Yapılandırma Adımları

1. ACME Account Oluşturma

Integrations > ACME > Accounts bölümüne gidin ve Register butonuna tıklayın:

ACME Hesap Kaydı

Aşağıdaki bilgileri girin:

  • E-mail: ACME account için e-posta adresi
  • Vendor: ACME sağlayıcı seçimi
    • Let's Encrypt
    • Let's Encrypt Staging
    • ZeroSSL
    • Buypass
    • Buypass Staging
    • SSL.com RSA
    • SSL.com ECC
    • Google Trust Services
    • Google Trust Services Staging
    • DigiCert
  • Use External Account Binding: Bazı sağlayıcılar için gerekli (varsayılan: Disable)

Submit butonuna tıklayarak ACME account'u oluşturun.

Hesap Kaydı

ACME account oluşturulurken otomatik olarak bir anahtar çifti oluşturulur ve kayıt işlemi gerçekleştirilir. Account bilgileri güvenli şekilde saklanır.

2. ACME Hesaplarını Görüntüleme

Account eklendikten sonra Integrations > ACME > Accounts listesinde görüntülenecektir:

ACME Accounts List

Liste ekranında aşağıdaki bilgiler gösterilir:

  • E-mail: ACME account e-posta adresi
  • Vendor: Kullanılan ACME sağlayıcı
  • Status: Account durumu (valid/invalid)
  • Endpoint: ACME directory endpoint URL
  • Created At: Account oluşturulma tarihi

Hesap İşlemleri

Her account için aşağıdaki işlemler yapılabilir:

  • Delete: Account'u sil
Account Silme

ACME account silindiğinde bu account ile oluşturulmuş tüm siparişler görüntülenemez hale gelir. Ancak düzenlenmiş sertifikalar sistemde kalır.

3. Doğrulama Yöntemleri (Doğrulama Yöntemleri)

ACME protokolü ile sertifika imzalarken iki farklı doğrulama yöntemi kullanılır:

DNS-01 Doğrulama (DNS Doğrulama)

Wildcard sertifika imzalamak için DNS doğrulama yöntemini kullanmanız gerekmektedir.

DNS doğrulama için iki farklı yöntem bulunmaktadır:

Yöntem 1: Domain Delegasyonu (Önerilen)

Gereksinimler:

  • SecTrail CM uygulamasının 53 (DNS) portundan internete erişime açık olması
  • Sertifika imzalanacak domainin _acme-challenge subdomaininin SecTrail CM sunucusuna delege edilmesi

Yapılandırma:

Domain DNS kaydınızda aşağıdaki NS kaydını oluşturun:

_acme-challenge.domainadi    NS    3600    sectrailcm.sunucu.adresi

Avantajlar:

  • Tamamen otomatik süreç
  • Manuel müdahale gerektirmez
  • Sürekli sertifika yenileme için idealdir
Yöntem 2: Manuel TXT Kaydı

Yapılandırma:

Her sertifika talebi için domain DNS kaydınızda manuel olarak TXT kaydı oluşturmanız gerekir:

_acme-challenge.domainadi    TXT    3600    TOKEN_DEGERI

Dezavantajlar:

  • Her sertifika talebi için manuel müdahale gerektirir
  • Token değeri her sipariş için değişir
  • Otomatik yenileme için uygun değildir
Manuel TXT Kaydı

Bu yöntem manuel müdahale gerektirdiği için tavsiye edilmemektedir. Otomatik sertifika yenileme süreçleri için Domain Delegasyonu veya External DNS entegrasyonu kullanılmalıdır.

Yöntem 3: External DNS Entegrasyonu (Önerilen)

Desteklenen DNS Sağlayıcılar:

Integrations > External DNS bölümünden aşağıdaki DNS sağlayıcılardan birini yapılandırabilirsiniz:

  • PowerDNS - Açık kaynak DNS sunucusu
  • Akamai - Kurumsal DNS yönetimi

Yapılandırma:

  1. Integrations > External DNS bölümüne gidin
  2. DNS sağlayıcınızı seçin
  3. API credentials bilgilerini girin
  4. Test edin ve kaydedin

Avantajlar:

  • Tamamen otomatik DNS kayıt yönetimi
  • TXT kayıtları otomatik oluşturulur ve silinir
  • Wildcard ve çoklu domain sertifikalar için ideal
  • Sertifika yenileme tam otomasyonu
DNS Entegrasyonu

PowerDNS ve Akamai entegrasyonları ile DNS doğrulama kayıtları tamamen otomatik yönetilir. Manuel müdahale gerekmez ve sertifika yenileme süreçleri kesintisiz çalışır.

HTTP-01 Doğrulama (HTTP Doğrulama)

Kullanım Alanı: Sadece tek domain (tek domain) sertifikalar için kullanılabilir. Wildcard sertifikalar için desteklenmez.

Gereksinimler:

  1. Port 80 Erişimi: İmzalanacak domain 80 portundan HTTP isteğine cevap verebilmeli
  2. Public IP: Domain'in public IP adresi istekleri alabilmeli
  3. Web Sunucu: Domain için web sunucusu yapılandırması olmalı

F5 Yük Dengeleyici Kullanıyorsanız:

  • Domain'in public IP'si istekleri F5'e geliyor olmalı
  • Hangi virtual server'a indiğini biliyor olmalınız
  • Port 80 üzerinden /.well-known/acme-challenge/ path'ine erişim sağlanmalı

ACME Challenge Süreci:

  1. ACME server, http://domainadi/.well-known/acme-challenge/TOKEN adresine HTTP GET isteği gönderir
  2. Web sunucunuz bu isteğe doğrulama token'ı ile cevap vermelidir
  3. Token doğrulandığında sertifika düzenlenir
HTTP-01 Kısıtlamaları
  • Wildcard sertifikalar için kullanılamaz
  • Port 80 üzerinden erişilebilir olmalı (HTTPS değil)
  • Her domain için ayrı doğrulama gerekir
  • Load balancer veya firewall yapılandırması gerektirebilir
Doğrulama Yöntemi Seçimi
  • Wildcard Sertifikalar için: DNS-01 doğrulama kullanılmalıdır (zorunlu)
  • Tek Domain için: HTTP-01 veya DNS-01 kullanılabilir
  • Otomatik Yenileme için: DNS-01 with External DNS önerilir
  • Manuel Süreç için: HTTP-01 kullanılabilir

4. DNS Entegrasyonu Yapılandırması

DNS-01 doğrulama kullanmak için External DNS entegrasyonu yapılandırılmalıdır.

DNS Challenge Kayıtları

ACME sertifika siparişi oluşturulduğunda, DNS doğrulama için otomatik olarak TXT kayıtları oluşturulur:

Integrations > ACME > Acme DNS Domains bölümünde challenge kayıtlarını görüntüleyebilirsiniz:

ACME DNS Domains

DNS Kayıt Bilgileri

  • Domain: Challenge kaydının oluşturulacağı domain (_acme-challenge.example.com)
  • Type: DNS kayıt tipi (PowerDNS, Akamai, vb.)
  • TTL: Time to Live değeri (saniye)
  • Value: ACME challenge token değeri
  • Status: Kayıt durumu (Not Ready, Ready, Valid)
Otomatik DNS Yönetimi

DNS doğrulama kayıtları sertifika siparişi oluşturulduğunda otomatik olarak eklenir ve doğrulama tamamlandıktan sonra otomatik olarak silinir. Manuel müdahale gerekmez.

DNS Kayıt Durumları

  • Not Ready: DNS kaydı oluşturuldu, propagation bekleniyor
  • Ready: DNS kaydı propagate oldu, doğrulama başlatılabilir
  • Valid: Doğrulama başarılı, sertifika düzenlendi

Sertifika Sipariş Oluşturma

ACME üzerinden yeni sertifika siparişi oluşturmak için:

Integrations > ACME > Orders bölümüne gidin ve Create ACME Order butonuna tıklayın:

ACME Create Order

Sipariş Bilgileri

Aşağıdaki bilgileri girin:

  • Vendor: Kullanılacak ACME account seçimi (email --- vendor formatında)
  • Doğrulama Type: Doğrulama yöntemi seçimi
    • dns-01: DNS doğrulama (wildcard sertifikalar için zorunlu, tek domain için önerilen)
    • http-01: HTTP challenge (sadece tek domain sertifikalar için)
  • CSR: Certificate Signing Request seçimi
    • Önceden oluşturulmuş CSR'lerden seçim yapın
    • CSR'ler Integration bölümünden oluşturulabilir
  • Domain Name: Sertifika için domain adları
  • External DNS: DNS doğrulama için kullanılacak DNS provider seçimi (sadece dns-01 için)
    • PowerDNS, Akamai, Cloudflare, Route53, vb.

Submit butonuna tıklayarak sipariş oluşturun.

CSR (Certificate Signing Request)

Sipariş oluşturmadan önce Certificates > CSR bölümünden CSR oluşturmanız gerekir. CSR, sertifika için gerekli domain adlarını, organization bilgilerini ve public key'i içerir.

Sertifika Siparişlerini Görüntüleme

ACME sertifika siparişlerinizi görüntülemek için:

Integrations > ACME > Orders bölümüne gidin:

ACME Orders

Sipariş Bilgileri

  • Order Id: SecTrail sipariş ID'si
  • External DNS: Kullanılan DNS provider
  • Domain Name: Sertifika domain adları
  • Vendor: ACME sağlayıcı
  • Account Email: ACME account e-posta
  • Doğrulama Type: Doğrulama yöntemi (dns-01 veya http-01)
  • Order Status: Sipariş durumu (valid, processing, invalid)
  • Order Doğrulama Record: ACME challenge token değerleri
  • Created At: Sipariş oluşturulma tarihi

Sipariş İşlemleri

Her sipariş için aşağıdaki işlemler yapılabilir:

  • Refresh Order: Sipariş durumunu güncelle
  • Finalize Order: Doğrulama tamamlandığında sertifikayı al
  • Download Certificate: Düzenlenmiş sertifikayı indir
  • Delete Order: Siparişi sil

Sipariş Durumları

  • pending: Sipariş oluşturuldu, doğrulama bekleniyor
  • ready: Doğrulama başarılı, finalize edilmeye hazır
  • processing: Sertifika düzenleniyor
  • valid: Sertifika başarıyla düzenlendi
  • invalid: Doğrulama başarısız

Sertifika Yaşam Döngüsü

1. Sipariş Oluşturma (Order Creation)

  1. CSR oluşturun (Certificates > CSR)
  2. ACME account seçin
  3. Doğrulama type ve External DNS seçin
  4. Sipariş oluşturun

2. DNS Challenge (Doğrulama)

Sipariş oluşturulduktan sonra otomatik olarak:

  1. DNS doğrulama kayıtları oluşturulur (_acme-challenge.example.com)
  2. DNS propagation beklenir (genellikle 30-60 saniye)
  3. ACME server domain ownership'i doğrular
  4. Doğrulama başarılı olduğunda sipariş durumu "ready" olur

3. Sertifika Alma (Finalization)

Doğrulama başarılı olduktan sonra:

  1. Finalize Order butonuna tıklayın
  2. Sertifika otomatik olarak düzenlenir
  3. Sipariş durumu "valid" olur
  4. DNS doğrulama kayıtları otomatik olarak silinir

4. Sertifika İndirme (Download)

  1. Download Certificate butonuna tıklayın
  2. Sertifika otomatik olarak sisteme eklenir
  3. Certificates bölümünden görüntülenebilir
Otomatik İşlemler

DNS doğrulama kayıtlarının oluşturulması, doğrulama ve sertifika alma işlemleri tamamen otomatiktir. Manuel müdahale gerektirmez.

Sertifika Yenileme

ACME sertifikaları otomatik olarak yenilenebilir:

  1. Certificates bölümünden süresi dolacak sertifikayı seçin
  2. Renew butonuna tıklayın
  3. Yeni ACME siparişi otomatik olarak oluşturulur
  4. Doğrulama ve finalization otomatik gerçekleşir
Let's Encrypt Süreleri

Let's Encrypt sertifikaları 90 gün geçerlidir.