Cara Setting SSL Gratis untuk Domain

Panduan ini hanya berlaku untuk server Ubuntu 14.04 yang menjalankan Apache sebagai web servernya. Jika Anda menggunakan server web di blogspot (custom domain blogger) sudah otomatis ada httpsnya. Untuk wordpress.com custom domain, juga sudah langsung aktif https. Untuk pemesanan website termurah sudah termasuk https ada di sini.

Tutorial ini akan memandu Anda cara untuk mengatur sertifikat TLS / SSL dari Let's Encrypt pada OS Ubuntu 14.04 server yang menjalankan Apache sebagai web server.

Artikel ini juga akan membahas bagaimana untuk melakukan otomatisasi proses perpanjangan sertifikat SSL menggunakan perintah cron job.

Sertifikat SSL digunakan dalam server web untuk mengenkripsi lalu lintas antara server dan client, memberikan keamanan ekstra bagi pengguna untuk mengakses website Anda.

Let's Encrypt menyediakan cara mudah untuk mendapatkan dan menginstal sertifikat terpercaya secara gratis.

Syarat Wajib

Dalam rangka untuk menyelesaikan panduan ini, Anda akan memerlukan:
  • Ubuntu 14.04 server dengan command-line sudo bagi pengguna non-root
  • Apache web server diinstal dengan satu atau lebih nama domain dikonfigurasi dengan benar
Ketika Anda siap untuk melanjutkan, login ke server Anda menggunakan akun sudo Anda. Kemudian, ikuti lang-langkah berikut ini :

Langkah 1 : Download Let’s Encrypt Client

Pertama, kita akan men-download certbot-auto Let’s Encrypt Client dari situs download EFF. Script  akan secara otomatis mengunduh update yang tersedia yang diperlukan setelah instalasi.

Kita akan download script command-line certbot-auto Let’s Encrypt client ke direktori /usr/local/sbin dengan perintah:
cd /usr/local/sbin
sudo wget https://dl.eff.org/certbot-auto
Anda akan mendapati file certbot-auto di direktori /usr/local/sbin.

Buat jadi executable dengan command:

sudo chmod a+x /usr/local/sbin/certbot-auto
Script certbot-auto client sudah bisa dan siap digunakan.

Langkah 2 : Setting Sertifikat SSL Gratis

Memasang Sertifikat SSL Gratis untuk Apache menggunakan script certbot-auto Let’s Encrypt client adalah sangat-sangat mudah.

Langkah ini akan secara otomatis untuk mendapatkan sertifikat dan menginstal sertifikat SSL baru yang berlaku untuk domain yang disediakan sesuai target parameter.

Untuk melaksanakan instalasi interaktif dan memperoleh sertifikat SSL untuk satu domain, jalankan perintah certbot-auto berikut ini:
certbot-auto --apache -d contoh.com
Jika Anda ingin menginstal satu sertifikat agar berlaku untuk beberapa domain atau subdomain, Anda dapat menempatkan parameter sebagai tambahan pada baris perintah. Nama domain pertama dalam daftar parameter akan menjadi domain utama yang digunakan oleh Let’s Encrypt untuk membuat sertifikat:
certbot-auto --apache -d contoh.com -d www.contoh.com
Setelah proses instalasi sertifikat, Anda akan disajikan dengan panduan langkah-demi-langkah untuk menyesuaikan opsi sertifikat Anda. Anda akan diminta untuk memberikan alamat email untuk pemulihan kunci sertifikat jika hilang dan pemberitahuan masa expirednya, dan Anda akan dapat memilih untuk mengaktifkan http dan https akses atau memaksa semua permintaan untuk redirect ke https.

Ketika instalasi selesai, Anda pastikan untuk dapat menemukan file sertifikat yang dihasilkan di direktori /etc/ letsencrypt/live. Anda dapat memverifikasi status sertifikat SSL Anda dengan link berikut (jangan lupa untuk mengganti contoh.com dengan domain utama Anda):

https://www.ssllabs.com/ssltest/analyze.html?d=contoh.com&latest

Setelah itu, Anda seharusnya sudah dapat mengakses website Anda menggunakan awalan https.

Langkah 3 : Setting Perpanjangan Sertifikat Otomatis

Sertifikat https dari Let’s Encrypt berlaku selama 90 hari, tapi disarankan agar Anda memperbarui sertifikat setiap 60 hari untuk menghindari kealpaan (lupa update) atau error saat web diakses.

Command linux certbot-auto Let’s Encrypt memiliki parameter perintah untuk memperbaharui secara otomatis, memeriksa sertifikat yang saat ini diinstal dan mencoba untuk memperbaharui https jika masa expirednya kurang dari 30 hari dari tanggal kadaluarsa.

Untuk memicu proses pembaharuan htpps untuk semua domain terinstal, anda harus menjalankan:
certbot-auto renew
Karena dari tutorial ini system baru saja menginstal sertifikat, perintah di atas hanya akan memeriksa tanggal kadaluwarsa dan mencetak pesan yang menginformasikan bahwa sertifikat tersebut belum waktunya melakukan pembaharuan. Output hasil pemeriksaan akan terlihat seperti ini:

Checking for new version...
Requesting root privileges to run letsencrypt...
   /home/cahjogja/.local/share/letsencrypt/bin/letsencrypt renew
Processing /etc/letsencrypt/renewal/example.com.conf

The following certs are not due for renewal yet:
  /etc/letsencrypt/live/example.com/fullchain.pem (skipped)
No renewals were attempted.

Perhatian : Jika Anda membuat sertifikat yang dibundel dengan beberapa domain, hanya domain utama yang akan ditampilkan dalam output, tetapi pembaharuan akan berlaku untuk semua domain yang termasuk dalam sertifikat ini.

Cara praktis untuk memastikan sertifikat Anda tidak akan mengalami peringatan masa expired adalah dengan memasang sebuah cron-job di server tersebut yang secara berkala akan menjalankan perintah perpanjangan otomatis untuk Anda.

Set saja cronjob dari sejak pemeriksaan pertama perpanjangan untuk tanggal kadaluarsa dan hanya menjalankan cron pembaharuan sertifikat tersebut kurang dari 30 hari dari berakhirnya, dan ini aman untuk membuat sebuah tugas cron yang berjalan setiap minggu atau bahkan setiap hari, misalnya.

Berikut cara edit crontab untuk membuat pekerjaan baru yang akan menjalankan perintah perpanjangan setiap minggu. Untuk mengedit crontab untuk user root, jalankan perintah ini:
sudo crontab -e
Sertakan cron berikut, semua dalam satu baris:
crontab

30 2 * * 1 /usr/local/sbin/certbot-auto renew >> /var/log/le-renew.log
Save dan exit. Ini akan membuat tugas cron baru yang akan mengeksekusi perintah certbot-auto renew setiap hari Senin di jam 2:30. Output yang dihasilkan oleh perintah akan disalurkan ke file log yang terletak di /var/log/le-renewal.log.

Dalam tutorial ini, kami memandu cara menginstal sertifikat SSL gratis dari Let’s Encrypt dalam rangka untuk mengamankan situs web host dengan software server Apache. Kami menyarankan Anda memeriksa blog resmi Let’s Encrypt untuk membaca informasi update yang penting. Atau kunjungi forumnya jika menemui kesulitan atau kendala error.

Semoga bermanfaat.