letsencrypt dengan domain sendiri (tanpa qnap cloud)

Saya punya domain sendiri dan ingin mendapatkan sertifikat dari Letsencrypt tanpa adanya myqnapcloud di tengah-tengah.

Awalnya saya mencoba menaruh reverse proxy di depan NAS, tapi itu ternyata menyebabkan masalah dengan qulog jadi saya menghapusnya.

Selanjutnya, saya mencoba menginstall acme.sh secara langsung dan ini tampaknya berhasil. Berikut langkah-langkahnya:

# dapatkan API key untuk penyedia DNS kamu: agar tidak perlu membuka webserver untuk menaruh token verifikasi
# login via ssh sebagai admin, turun ke shell
cd /tmp
curl -L \
  https://github.com/acmesh-official/acme.sh/archive/master.tar.gz \
  -o acme.sh.tar.gz
tar -xvf acme.sh.tar.gz
cd acme.sh-master/
# homedirs tetap ada setelah reboot / upgrade, tapi share apa saja bisa dipakai
mkdir /share/CACHEDEV1_DATA/homes/admin/acme.sh
./acme.sh --install \
  --home /share/CACHEDEV1_DATA/homes/admin/acme.sh \
  -m "youremail@example.org"
# script instalasi acme akan mengubah crontab RAM, perlu dipersistkan agar tidak hilang
crontab -l | grep acme.sh >> /etc/config/crontab
# sesuaikan dengan server DNS kamu, di sini saya pakai zona default OVH
export OVH_END_POINT="ovh-eu"
cd /share/CACHEDEV1_DATA/homes/admin/acme.sh/
./acme.sh --issue \
        --dns dns_ovh -d "yournas.yourdomain.com" \
        --reloadcmd "cat
/share/CACHEDEV1_DATA/homes/admin/acme.sh/yournas.yourdomain.com_ecc/yournas.yourdomain.com.key
/share/CACHEDEV1_DATA/homes/admin/acme.sh/yournas.yourdomain.com_ecc/fullchain.cer
> /etc/config/stunnel/stunnel.pem && /etc/init.d/stunnel.sh restart"

Peringatan dan catatan:

  • Kalau kamu lebih suka myqnapcloud dan nggak mau repot utak-atik sistem kaya saya, silakan pilih itu: cara ini cocok buat saya tapi kalau rusak, kamu yang menangani sendiri :wink:
  • Saya TIDAK pakai validasi HTTP, tapi DNS: cek API dari penyedia domainmu sendiri untuk tahu cara mendapatkan API key agar bisa dipakai dengan DNSAPI
  • NAS saya TIDAK dibuka ke internet dan saya sudah mengatur instalasi unbound lokal untuk membuat entri palsu untuk yournas.yourdomain.com supaya baik acme.sh maupun klien lokal saya sama-sama senang
  • sudah dites: tetap berjalan setelah reboot, siklus suspend/standby harian, dan upgrade

Aku bingung. Kalau NAS-mu tidak terkoneksi ke internet, apa tujuan sertifikatnya? Kecuali kamu memakai NAS-mu di lingkungan “korporat” dengan banyak pengguna yang membutuhkan tingkat keamanan tertentu, sebenarnya tidak perlu ada sertifikat lokal.

Apa alasanmu memakainya?

Salah satunya adalah menghilangkan kebiasaan menerima sertifikat self-signed.

Belajar hal baru, seperti yang sudah disebutkan di thread lain, juga termasuk… ditambah, mungkin saja orang lain membutuhkannya di konteks yang bukan sekadar nice-to-have dan bisa mendapatkan manfaat dari panduan singkat ini.

Terima kasih atas sharing-nya!!!

Akan lebih baik kalau fitur Lets Encrypt itu berupa aplikasi kecil di QNAP App Store. Dengan begitu prosesnya bisa otomatis. Saya juga tidak pakai myqnapcloud, jadi kalau ada aplikasi Letsencrypt tanpa myqnapcloud pasti sangat berguna.