Bu kılavuz, harici bir ana bilgisayar ve EAB (Harici Hesap Bağlama) kullanarak TrueNAS’a ACME SSL Sertifikasının nasıl yükleneceğini gösterir. Hem TrueNAS CORE hem de TrueNAS SCALE ile uyumludur.

TrueNAS’ın yerel ACME desteği vardır, ancak yalnızca yerleşik DNS-01 entegrasyonu aracılığıyla Let’s Encrypt için. ACME + EAB ile ticari bir ACME sağlayıcısı (Sectigo, DigiCert, vb.) kullanmak istiyorsanız, acme.sh gibi bir ACME istemcisi kullanarak sertifikanızı harici olarak oluşturmalı ve yenilemeli, ardından TrueNAS’a dağıtmalısınız.
Başlamadan Önce
İşte ihtiyacınız olanlar:
- TrueNAS genel IP’nize işaret eden bir alan adı (örn. nas.example.com)
- TrueNAS CORE 13.x veya TrueNAS SCALE 23.x+
- Harici bir Linux/BSD makinesi, VPS veya ev sunucusu (acme.sh çalıştırmak için)
- Ticari CA’nızdan ACME Dizin URL’si, EAB Anahtar Kimliği ve EAB HMAC
- Senkronizasyonu otomatikleştirmeyi planlıyorsanız TrueNAS’a SSH erişimi
Not: TrueNAS, kullanıcı arayüzünde rastgele ACME sağlayıcılarını desteklemez. Tüm ticari ACME otomasyonu TrueNAS dışında gerçekleşmelidir.
Adım 1: acme.sh’yi Harici Ana Bilgisayarınıza Kurun
Bu makine ACME hesap kayıt, düzenleme ve yenileme işlemlerini gerçekleştirecektir.
Koş:
curl https://get.acme.sh | sh
source ~/.bashrc
acme.sh --version
Sürüm doğru şekilde yazdırılıyorsa, sorun yok demektir.
Adım 2: ACME Hesabınızı Ticari CA’nıza Kaydedin (ACME + EAB)
CA kontrol paneliniz şunları sağlayacaktır:
- EAB Anahtar Kimliği
- EAB HMAC Anahtarı
- ACME Dizin URL’si
ACME hesabınızı kaydedin:
acme.sh --register-account \
--server https://acme.yourca.com/v2/acme \
--eab-kid YOUR_EAB_KID \
--eab-hmac-key YOUR_EAB_HMAC_KEY \
--accountemail [email protected]
Değerleri kendi değerlerinizle değiştirin. Bunu yalnızca bir kez çalıştırırsınız.
Adım 3: Sertifikayı Yayınlayın (DNS-01 Doğrulaması Gereklidir)
TrueNAS neredeyse her zaman NAT’ın arkasındadır, bu nedenle DNS doğrulaması en güvenli yöntemdir.
İşte bir manaul DNS örneği:
acme.sh --issue \
-d nas.example.com \
--dns dns_manual \
--server https://acme.yourca.com/v2/acme
acme.sh size bir TXT kaydı oluşturmanızı söyleyecektir:
_acme-challenge.nas.example.com TXT <token>
DNS yöneticinizde TXT kaydını oluşturun ve yayılmasını bekleyin.
Yayılımı kontrol edin:
dig TXT _acme-challenge.nas.example.com +short
Belirteç göründüğünde, aynı komutu yeniden çalıştırın ve acme.sh sertifikayı vermeyi bitirecektir. Dosyalarınız ~/.acme.sh/nas.example.com/ adresine kaydedilecektir.
İçinde bulacaksın:
- fullchain.cer: sunucu sertifikası + ara ürün
- nas.example.com.key: özel anahtar
- ca.cer: CA zinciri (ayrıca sağlanmışsa)
Adım 4: Sertifikayı TrueNAS’a Aktarın
- Şu adrese gidin: TrueNAS UI > Sistem > Sertifikalar
- Ekle’ ye tıklayın ve Sertifika Al’ı seçin
- Sertifika dosyalarınızı yükleyin ve Kaydet‘e tıklayın
Sertifikayı hizmetlerinize atayın:
- Web Kullanıcı Arayüzü
- SMB / NFS hizmetleri (varsa)
- Orta Yazılım API’leri
- HTTPS kullanan ters proxy’ler veya uygulamalar (TrueNAS SCALE)
Adım 5: Yenileme ve Dağıtımı Otomatikleştirin
TrueNAS sertifikaları otomatik olarak çekmez. Yenilenmiş sertifikaları TrueNAS ‘ a itmeniz gerekir.
1. Bir dağıtım komut dosyası oluşturun
Harici ACME ana bilgisayarınızda /usr/local/bin/truenas-deploy.sh dosyasını oluşturun:
Not: Bu komut dosyası yalnızca TrueNAS, midclt çalıştırmasına izin verilen bir kullanıcı ile SSH erişimine izin veriyorsa çalışır. Yeni anahtar + sertifikayı /tmp/ adresine yükler ve TrueNAS API aracılığıyla etkin sertifikayı değiştirir. Yollarınızın ve etki alanınızın acme.sh kurulumunuzla eşleştiğinden emin olun.
#!/bin/bash
DOMAIN="nas.example.com"
NAS_USER="root"
NAS_HOST="truenas.local"
CERT_PATH="$HOME/.acme.sh/$DOMAIN"
KEY="$CERT_PATH/$DOMAIN.key"
CERT="$CERT_PATH/fullchain.cer"
scp "$KEY" "$NAS_USER@$NAS_HOST:/tmp/key.key"
scp "$CERT" "$NAS_USER@$NAS_HOST:/tmp/cert.cer"
ssh "$NAS_USER@$NAS_HOST" <<EOF
midclt call certificate.update '{"certificate": "custom", "csr": null, "privatekey": "$(cat /tmp/key.key)", "certificate": "$(cat /tmp/cert.cer)"}'
EOF
Çalıştırılabilir hale getirin:
chmod +x /usr/local/bin/truenas-deploy.sh
2. Bir yenileme kancası ekleyin
acme.sh dosyasına bir dağıtım kancası ekleyin:
acme.sh --deploy-hook truenas-deploy \
-d nas.example.com
Ya da bunu ~/.acme.sh/deploy/truenas-deploy.sh dosyasının içine ekleyin.
3. Bırakın acme.sh her şeyi halletsin
İşte acme.sh’nin otomatik olarak yaptığı şey:
- Yenilemeler için günlük kontroller
- Sertifikayı yeniler
- Dağıtım betiğinizi tetikler
- Güncellenmiş sertifikaları TrueNAS’a aktarır
- Değişiklikleri sessizce uygular
Yapılandırıldıktan sonra, sertifika yenilemeleri için TrueNAS’a tekrar dokunmanız gerekmez.
Sık Sorulan Sorular
TrueNAS’ta ACME otomasyonunu ilk kez kuruyorsanız, bu hızlı yanıtlar kullanıcıların en sık karşılaştığı sorunları kapsar.
Hem TrueNAS GUI hem de diğer hizmetler (SMB, NFS, iSCSI portalları) için tek bir sertifika kullanabilir miyim?
Evet. Sertifikayı
NAS’ım CGNAT veya çift NAT arkasında. Hala ACME kullanabilir miyim?
Evet, ancak DNS-01 doğrulamasını kullanmalısınız. HTTP-01 çalışmaz çünkü ACME sunucusu 80 numaralı bağlantı noktası üzerinden NAS’ınıza ulaşamaz. DNS-01 ile CA yalnızca _acme-challenge.yourdomain.com adresindeki TXT kaydınızı kontrol eder, bu nedenle NAS’ın gerçekte nerede bulunduğu önemli değildir.
acme.sh sertifikayı yeniler ancak TrueNAS’a yeniden aktarmayı unutursam ne olur?
TrueNAS en son içe aktardığınız eski sertifikayı kullanmaya devam edecektir. Yenilenen dosyalar, siz onları tekrar yükleyene kadar (veya komut dosyanız/API’niz bunu halledene kadar) harici ana bilgisayarınızda durur.
Siteniz çalışmaya devam edecektir, ancak tarayıcılar eninde sonunda süresi dolmuş bir sertifika hakkında uyarı vermeye başlayacaktır. Bu nedenle, yeniden içe aktarma işlemini komut dosyası haline getirmeye ya da son kullanma tarihine yakın bir zamanda bir hatırlatma koymaya değer.
TrueNAS ile joker karakter sertifikası (*.example.com gibi) kullanabilir miyim
Evet. Özel anahtar ve sertifika eşleştiği sürece, TrueNAS bunun bir joker karakter veya tek ana bilgisayar sertifikası olup olmadığını önemsemez. Yine de joker karakteri acme.sh dosyasında DNS-01 aracılığıyla yayınlamanız ve ardından fullchain.cer + *.example.com.key dosyasını TrueNAS’a aktarmanız gerekir. Sadece bu anahtarı nerede tekrar kullandığınıza dikkat edin. Joker sertifika, kapsadığı tüm alt alanlar üzerinde tam kontrol sağlar.
Son Sözler
Bu iş akışı, sistemle savaşmadan TrueNAS’a bir ACME sertifikası yüklemek için istikrarlı ve güvenilir bir yol sunar. Harici ana bilgisayarınız sertifika verme, yenileme ve yönetme işlemlerini gerçekleştirirken TrueNAS, dosyalar güncellendiğinde temiz içe aktarımları alır.
Süreç devreye girdiğinde, her şey arka planda sessizce çalışır ve siz yalnızca komut dosyalarını ayarlamak veya kimlik bilgilerini döndürmek istediğinizde devreye girersiniz.
Bugün SSL Dragon’dan sipariş vererek SSL Sertifikalarında %10 indirimden yararlanın!
Hızlı düzenleme, güçlü şifreleme, %99,99 tarayıcı güvenilirliği, özel destek ve 25 günlük para iade garantisi. Kupon kodu: SAVE10

