Pertama kali saya membangun blog menggunakan penyedia hosting
, setelah beberapa bulan baru merasakan biaya tagihan yang begitu besar, belum lagi hosting diblokir karna belum membayar tagihan, jadi yang tersisa hanya domain kodetr.com
yang saya beli pertahun jadi saya berfikir untuk berpaling menggunakan page gitlab
untuk membuat static blog saya menggunakan hugo.
Tidak hanya itu gitlab
juga mempunyai fitur custom domain
jadi saya bisa memasang sertifikat SSL/TSL
dari Let’s Encrypt di dalamnya, intinya memasang sertifikat SSL/TSL
supaya blog bisa diakses secara aman melalui protokol HTTPS
.
Ada tapinya, karna saya menggunakan cara manual jadi setiap tiga bulan sekali mesti memperbarui sertifxzxswikat SSL/TLS dari Let’s Encrypt, istilahnya ada masa berlakunya atau expire
.
Siapkan blog anda terlebih dahulu kemudian masuk ke
website gitlab
habis itulogin
, buatRepositorie
baru sesuaikan saja dengan nama blog anda kemudian Masukan semuafile
blog, langkah memasukanfile
akan diberikan setelah anda membuatRepositorie
.
Menambahkan Custom Domain ke Gitlab Page
Jika langkah diatas sudah dibagian pengaturan tambahkan domain dengan cara buka menu Setting
kemudian Page
dan klik new Domain
. isi kolom domain saja, untuk sertifikat tambahkan belakangan.
Setelah menambahkan domain akan tampil seperti gambar di bawah.
Pada gambar diatas salin DNS
dan Verification
status tersebut dari laman ini ke layanan tempat anda membeli domain, tujuannya untuk membuktikan bahwa domain tersebut benar-benar milik anda.
Gambar dibawah merupakan antarmuka pengaturan domain yang saya gunakan yaitu dari Rumah Web
untuk domain yang lain mungkin berbeda silahkan disesuaikan saja.
Gambar diatas adalah menambahkan DNS
record ke penyedia domain, jadi anda harus login terlebih dahulu ke penyedia domain anda habis itu buka pengaturan DNS
, Buat rekaman baru untuk DNS A
dan TXT
sesuai data yang anda dapat pada langkah sebelumnya.
Jika sudah seperti gambar diatas tunggu beberapa menit habis itu klik tombol verifikasi
untuk membuktikan bahwa domain yang anda isi benar-benar milik anda. Jika ternyata gagal melakukan verifikasi
anda dapat mencoba lain kali, karna DNS membutuhkan Perambatan (propagasi) DNS
bisa seketika atau memerlukan waktu 24 jam.
Mendapatkan sertifikat SSL/TSL dari Let`s Encrypt
Jika verifikasi berhasil, blog saya dari kodetr.gitlab.io kini bisa diakses melalui http://kodetr.com dan http://www.kodetr.com.
Selanjutnya menambahkan sertifikat supaya blog bisa diakses melalui HTTPS
, karna https
merupakan protokol yang paling aman dibandingkan dengan http
. Berikut langkah mendapatkan sertifika, anda bisa mengunjungi situs ini atau mengikuti cara dibawah ini untuk mendapatkan sertifikat SSL/TSL
.
Anda harus mendownload file dari Let’s Encrypt atau anda bisa melakukan clone dari terminal.
git clone https://github.com/letsencrypt/letsencrypt
Jika anda sudah melakukan clone
dari terminal, masuk dibagian folder letsencrypt
cd letsencrypt
Kemudian buat sertifikat, sesuaikan dengan domain anda misal kodetr.com
./letsencrypt-auto certonly -a manual -d kodetr.com
Setelah kita menyetujui bahwa IP kita akan dicatat, maka muncul pesan berikut.
Make sure your web server displays the following content at
http://kodetr.com/.well-known/acme-challenge/4TBu799fW0tQ5EOwZMdu1Gv3e9C33gxjV58hVtWTbDM
before continuing:
4TBu799fW0tQ5EOwZMdu1Gv3e9C33gxjV58hVtWTbDM.ewlbSYgvIxVOqiP1lD2zeDKWBGEZMRfO_4kJyLRP_4U
#
# aslinya banyak output dibagian sini
#
Press ENTER to continue
Jangan menekan ENTER biarkan terminal terbuka.
Masuk dibagian static blog anda dibagian public
, Kemudian buat berkas sebagaimana diminta pada langkah diatas. Pertama yang harus anda lakukan buat folder dengan berintah berikut
mkdir -p .well-known/acme-challenge
Kemudian masukan perintah dibawah ini ke terminal
echo 4TBu799fW0tQ5EOwZMdu1Gv3e9C33gxjV58hVtWTbDM.ewlbSYgvIxVOqiP1lD2zeDKWBGEZMRfO_4kJyLRP_4U > .well-known/acme-challenge/4TBu799fW0tQ5EOwZMdu1Gv3e9C33gxjV58hVtWTbDM
Habis itu publikasikan berkas anda.
git add .
git commit -m 'Add letsencrypt challenge file.'
git push
Tunggu beberapa saat sampai selesai melakukan proses rebuild
blog. Baiknya lihat langsung di gitlab bagian CI
untuk indikator laju build
atau dengan cara curling
.
curl http://kodetr.com/.well-known/acme-challenge/4TBu799fW0tQ5EOwZMdu1Gv3e9C33gxjV58hVtWTbDM
Setelah semua sudah selesai di rebuilded, kembali ke jendela terminal letsencrypt
tadi kemudian tekan ENTER. tunggu beberapa saat hingga muncul hasilnya.
IMPORTANT NOTES:
Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/kodetr.org/fullchain.pem. Your cert will
expire on 2019-06-01. To obtain a new version of the certificate in
the future, simply run Let's Encrypt again.
If you like Let's Encrypt, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
Memasukan sertifikat SSL/TSL ke Gitlab Page
Masuk kembali ke Gitlab
dan buka laman proyek Gitlab Pages
, buka kembali pengaturan domain di setting
kemudian klik Pages
, di kolom Domain, klik tombol detail
pada domain yang hendak diberi sertifikat
- Salin isi sertifikat
/etc/letsencrypt/archive/kodetr.com/fullchain.pem
dan tempelkan di kolomCertificate (PEM)
- Salin isi private key
/etc/letsencrypt/archive/kodetr.com/privkey.pem
dan tempelkan di kolomKey (PEM)
Kemudian tekan tombol Save Change
, Ulangi langkah-langkah tersebut untuk tiap domain.
Demikian yang dapat saya sampaikan dari artikel ini semoga bermanfaat, jika ada yang ditanyakan silahkan di kolom komentar dibawah, selamat mencoba.