Otomatik Sertifika Yönetim Ortamı (ACME), RFC 8555’te tanımlandığı üzere, ücretsiz SSL sunucu sertifikaları sağlamak için genel Let’s Encrypt sertifika yetkilisi tarafından kullanılmaktadır. FortiGate cihazınızı, Let’s Encrypt’in yönettiği sertifikaları ve yine aynı şekilde ACME protokolünü kullanan diğer sertifika yönetim hizmetlerini kullanacak şekilde konfigüre edebilirsiniz. Sunucu sertifikaları, FortiGate’de güvenli yönetici oturumu açmak için server sertifikaları kullanılabilir.
- FortiGate’in genel bir IP adresi ve DNS’de (FQDN) genel IP adresine çözümlenen bir hostname (ana pc adı) olmalıdır.
- FortiGate’in ACME güncelleme isteklerini dinleyebilmesi için,konfigüre edilmiş ACME arayüzünün herkese açık olmalıdır. 80 (HTTP) veya 443 (HTTPS) portlarında VIP’leri veya port yönlendirmesi olmamalıdır.
- Konu Alternatif Adı (SAN) alanı, FortiGate DNS host adıyla otomatik olarak doldurulur. Düzenlenemez, wildcards kullanılamaz ve birden çok SAN eklenemez.
Bu örnek, Let’s Encrypt’ten bir ACME sertifikasının nasıl içe aktarılacağını ve FortiGate’e güvenli uzaktan yönetici erişimi için nasıl kullanılacağını gösterir.
- GUI’de sertifikaları konfigüre etmek için System > Feature Visibility‘ne gidin ve Certificates etkinleştirin.
GUI’de bir ACME sertifikasını içe aktarmak için:
- System > Certificates‘e gidin ve Import > Local Certificate‘e gidin.
- Type yani türü Automated olarak ayarlayın .
- Certificate name sertifikaya uygun bir ad ayarlayın.
- Domain’i FortiGate’in genel FQDN’sine ayarlayın.
- Email’i geçerli bir e-posta adresine ayarlayın. E-posta kayıt işlemi sırasında kullanılmaz.
- ACME hizmeti Let’s Encrypt olarak ayarlanmalıdır.
- Kalan ayarlar gerektiği gibi konfigüre edilir. Ok’i tıklayın.
- FortiGate cihazınızda Let’s Encrypt ile ilk kez bir server sertifikası kaydediliyorsa, Set ACME Interface bölmesi açılır. FortiGate’in Let’s Encrypt ile bağlantı kurduğu arayüzü seçtikten sonra Ok’e tıklayın .
- ACME arayüzünü System > Settings‘de daha sonra değiştirebilirsiniz.
- Yeni sunucu sertifikası Local Certificate listesine eklenir.
- FortiGate’in FQDN’sinin sertifikanın Subject: Common Name (CN) içinde olduğunu doğrulayabilmeniz için View Details‘e tıklayarak ayrıntıları görüntüleyin.
- Digital Signature Trust Company’den genel CA ISRG Root X1 tarafından verilen Let’s Encrypt intermediate CA’sı Remote CA Certificate listesi içerisinde yer alır.
GUI’deki yeni genel Let’s Encrypt server sertifikası ile default FortiGate yönetim server sertifikasını değiştirmek için:
- System > Settings‘e gidin .
- Yeni sertifikaya HTTPS server certificate ‘i ayarlayın.
- Uygulamak için Apply’i tıklayın.
- Herhangi bir internet tarayıcısını kullanarak yönetici hesabı ile FortiGate’de oturum başlatın. Güvenilmeyen sertifikalarla ilgili herhangi bir uyarı olmamalı ve sertifika yolu geçerli olmalıdır.
Bir ACME sertifikasını CLI’ye aktarmak için:
- FortiGate’in Let’s Encrypt ile iletişim kuracağı arayüz konfigürasyonu:
config system acme
set interface "port1"
end
- FortiGate’in Let’s Encrypt kayıt sunucusuyla bağlantı kurabildiğinden emin olmalısınız:
# execute ping acme-v02.api.letsencrypt.org
PING ca80a1adb12a4fbdac5ffcbc944e9a61.pacloudflare.com (172.65.32.248): 56 data bytes
64 bytes from 172.65.32.248: icmp_seq=0 ttl=60 time=2.0 ms
64 bytes from 172.65.32.248: icmp_seq=1 ttl=60 time=1.7 ms
64 bytes from 172.65.32.248: icmp_seq=2 ttl=60 time=1.7 ms
64 bytes from 172.65.32.248: icmp_seq=3 ttl=60 time=2.1 ms
64 bytes from 172.65.32.248: icmp_seq=4 ttl=60 time=2.0 ms
--- ca80a1adb12a4fbdac5ffcbc944e9a61.pacloudflare.com ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 1.7/1.9/2.1 ms
- Local Certificate isteğinin konfigürasyonu:
config vpn certificate local
edit "acme-test"
set enroll-protocol acme2
set acme-domain "test.ftntlab.de"
set acme-email "[email protected]"
next
By enabling this feature you declare that you agree to the Terms of Service at https://acme-v02.api.letsencrypt.org/directory
Do you want to continue? (y/n)y
end
- Kaydın başarılı olduğunu doğrulayın:
# get vpn certificate local details acme-test
path=vpn.certificate, objname=local, tablename=(null), size=2632
== [ acme-test ]
Name: acme-test
Subject: CN = test.ftntlab.de
Issuer: C = US, O = Let's Encrypt, CN = R3
Valid from: 2021-03-11 17:43:04 GMT
Valid to: 2021-06-09 17:43:04 GMT
Fingerprint: 9A:03:0F:41:29:D7:01:45:04:F3:16:C0:BD:63:A2:DB
Serial Num: 03:d3:55:80:d2:e9:01:b4:ca:80:3f:2e:fc:24:65:ad:7c:0c
ACME details:
Status: The certificate for the managed domain has been renewed successfully and can be used (valid since Thu, 11 Mar 2021 17:43:04 GMT).
Staging status: Nothing in staging
- CN domain’i için ACME istemcisi full statü logunu kontrol edin:
# diagnose sys acme status-full test.ftntlab.de
{
"name": "test.ftntlab.de",
"finished": true,
"notified": false,
"last-run": "Thu, 11 Mar 2021 18:43:02 GMT",
"valid-from": "Thu, 11 Mar 2021 17:43:04 GMT",
"errors": 0,
"last": {
"status": 0,
"detail": "The certificate for the managed domain has been renewed successfully and can be used (valid since Thu, 11 Mar 2021 17:43:04 GMT). A graceful server restart now is recommended.",
"valid-from": "Thu, 11 Mar 2021 17:43:04 GMT"
},
"log": {
"entries": [
{
"when": "Thu, 11 Mar 2021 18:43:05 GMT",
"type": "message-renewed"
},
...
{
"when": "Thu, 11 Mar 2021 18:43:02 GMT",
"type": "starting"
}
]
}
}
Default FortiGate yönetim server sertifikasını CLI’deki yeni genel Let’s Encrypt server sertifikasıyla değiştirmek için:
Sistem genelini konfigüre etmek için:
config system global set admin-server-cert "acme-test" end
FortiGate’e yönetici hesabı kullanarak giriş yaptığınızda, güvenilmeyen sertifikalarla ilgili hiçbir uyarı olmamalı ve sertifika yolu geçerli olmalıdır.