Tutorial cara install SSL wildcard menggunakan acme.sh dan DNS API Namecheap.
Kenapa wildcard SSL?
Jika kita mempunyai banyak aplikasi dibagi menjadi beberapa subdomain, maka kita tidak perlu lagi generate SSL untuk setiap subdomain tersebut. Satu sertifikat SSL (wildcard) dapat meng-cover satu domain utama (domain.com) dan semua sub domain (*.domain.com).
Tutorial di bawah ini untuk server Linux.
Mengaktifkan API Namecheap
Login ke dashboard (klien area) namecheap.com
Pilih Profile > Tools > Scroll ke bawah, pada bagian “Business & Dev Tools” pilih Namecheap API Access > Manage
- Set menjadi ON
- Whitelisted IPs > Edit dan masukkan IP servernya
Install acme.sh
Akses SSH ke server dengan akun root dan jalankan perintah ini
curl https://get.acme.sh | sh -s [email protected]
acme.sh akan terinstall di /root/.acme.sh
Mengatur API Namecheap
Tambahkan baris berikut dan atur sesuai user dan API KEY dari Namecheap ke dalam config file acme.sh lokasinya di /root/acme.sh/account.conf
NAMECHEAP_USERNAME="idnetter"
NAMECHEAP_API_KEY="4fe5ae7973ab4f1eba1504c0jnjkdya"
NAMECHEAP_SOURCEIP="192.0.0.1"
NAMECHEAP_SOURCEIP
ini adalah IP publik server kita.
Install sertifikat SSL domain
Selanjutnya install sertifikat SSL untuk nama domain
Masuk ke direktori acme terinstall
cd /root/.acme.sh
Atur default Certificate Authorities (CA) menggunakan letsencrypt
./acme.sh --set-default-ca --server letsencrypt
Install SSL wildcard dengan perintah berikut:
./acme.sh --issue --dns dns_namecheap -d idnetter.com -d *.idnetter.com
Setelah berhasil akan menampilkan lokasi sertifikat SSL beserta keynya
Your cert is in: /root/.acme.sh/idnetter.com_ecc/idnetter.com.cer
our cert key is in: /root/.acme.sh/idnetter.com_ecc/idnetter.com.key
The intermediate CA cert is in: /root/.acme.sh/idnetter.com_ecc/ca.cer
And the full chain certs is there: /root/.acme.sh/idnetter.com_ecc/fullchain.cer
Selesai semoga bermanfaat.
Referensi:
- https://github.com/acmesh-official/acme.sh
- https://github.com/acmesh-official/acme.sh/wiki/dnsapi#dns_namecheap