Sertifikat SSL (Secure Sockets Layer) seringkali digunakan untuk mengamankan koneksi pada website sehingga data yang diminta dan dikirimkan tidak terinterupsi oleh pihak manapun. Salah satu sertifikat SSL yang sering digunakan adalah Let’s Encrypt. Di artikel ini, kamu akan mempelajari cara install SSL Let’s Encrypt pada Apache di CentOS 7.
Let’s Encrypt
Let’s Encrypt adalah organisasi non-profit dari Linux Foundation yang menyediakan SSL gratis dengan enkripsi standar untuk seluruh pemilik website. SSL ini memiliki validasi waktu 90 hari dan menggunakan protokol ACME (Automatic Certificate Management Environment) yang dapat melakukan pembaruan otomatis setiap 90 hari menggunakan cron job.
Cara Install SSL Let’s Encrypt pada Apache di CentOS 7
Ada beberapa persiapan yang perlu kamu lakukan untuk meng-install SSL Let’s Encrypt di Apache di CentOS 7.
Instalasi SSL Let’s Encrypt ada dilakukan dengan langkah utama berikut:
- Update Server
- Install Firewall
- Install Certbot
- Install Sertifikat SSL
- Setting Virtual Configuration Apache
- Tes SSL
Simak penjelasan cara install SSL Let’s Encrypt di bawah ini.
Update Server
Login sebagai root dan perbarui package yang ada pada server agar up-to-date.
$ yum update -y $ reboot
Install beberapa packages yang dibutuhkan.
$ yum install nano perl wget -y
Install Firewall
Sebelum memulai instalasi SSL Let’s Encrypt, kamu perlu meng-install firewall agar lebih aman. Firewall yang digunakan kali ini adalah CSF (ConfigServer Security & Firewall). Instalasinya dilakukan dengan perintah di bawah ini:
$ cd /usr/src $ wget https://download.configserver.com/csf.tgz $ tar -xzf csf.tgz $ cd csf/ $ sh install.sh
Pada konfigurasi CSF, ubah “make TESTING=’1’ menjadi 0”.
$ nano /etc/csf/csf.conf
Kemudian restart CSF agar dapat me-reload hasil konfigurasi yang sudah diperbarui.
$ csf -r
Install Certbot
Agar bisa mendapatkan SSL Sertifikat, kamu perlu meng-install Let’s Encrypt Client bernama Certbot terlebih dulu di Apache pada CentOS 7. Sebab, Certbot package tidak tersedia secara default di YUM package manager, kamu perlu tambahkan EPEL Repository.
$ yum install epel-release -y
Install Certbot dengan perintah:
$ yum install certbot python2-certbot-apache mod_ssl -y
Baca Juga: Panduan Lengkap Terbaru Sertifikat SSL (SSL Certificate)
Install Sertifikat SSL
Buat sertifikat menggunakan nama domainmu, di artikel ini kami menggunakan domain vps201.dewiweb.net. Gunakan perintah berikut untuk mengambil sertifikat SSL Let’s Encrypt.
$ certbot --apache
Kemudian akan ada beberapa form yang perlu kamu jawab untuk mendapatkan sertifikat SSL Let’s Encrypt.
Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): (masukkan alamat email kamu). - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server. Do you agree? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Would you be willing, once your first certificate is successfully issued, to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: N
Kami memilih N (No) karena tidak ingin berlangganan email campaign, tapi jika kamu ingin mendapatkan email rutin mengenai news, campaign, dan hal lainnya yang berhubungan dengan Certbot, kamu bisa pilih Y (Yes).
Account registered. Which names would you like to activate HTTPS for? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: vps201.dewiweb.net 2: www.vps201.dewiweb.net - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate numbers separated by commas and/or spaces, or leave input blank to select all options shown (Enter 'c' to cancel): 1
Secara default, Certbot akan mengidentifikasi nama domain kamu berdasarkan pengaturan ServerName yang kamu deklarasikan di virtual host Apache. Jika kamu belum memiliki pengaturan di virtual host Apache, maka kamu perlu memasukkan nama domainnya secara manual. Kelebihan dari hasil pengaturan yang sudah terdeteksi adalah Certbot akan langsung melakukan instalasi dan konfigurasi secara otomatis.
Setelah instalasinya berhasil, akan keluar output di bawah ini.
Requesting a certificate for vps201.dewiweb.net Performing the following challenges: http-01 challenge for vps201.dewiweb.net Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/httpd/conf.d/vps201.dewiweb-le-ssl.conf Deploying Certificate to VirtualHost /etc/httpd/conf.d/vps201.dewiweb-le-ssl.conf Redirecting vhost in /etc/httpd/conf.d/vps201.dewiweb.conf to ssl vhost in /etc/httpd/conf.d/vps201.dewiweb-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://vps201.dewiweb.net - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Path file sertifikat berada di:
/etc/letsencrypt/live/vps201.dewiweb.net/fullchain.pem
Path file Private Key berada di:
/etc/letsencrypt/live/vps201.dewiweb.net/privkey.pem
Setting Virtual Configuration Apache
Certbot memang dapat melakukan instalasi secara otomatis, namun pengaturannya belum up-to-date. Oleh karena itu, kamu perlu melakukan update agar mendapatkan rating grade SSL A+. Caranya, ubah pengaturan SSLProtocol dan SSLCipherSuite SSL pada:
$ nano /etc/letsencrypt/options-ssl-apache.conf
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1 SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256
Kemudian simpan dan keluar. Setelah itu, tambahkan script berikut untuk mengaktifkan HSTS pada Apache kamu. Tambahkan sebelum tag </VirtualHost>.
$ nano /etc/httpd/conf.d/vps201.dewiweb-le-ssl.conf ### code ### Header always set Strict-Transport-Security "max-age=31536000; includeSubdomains;" ### code ###
Simpan lalu keluar. Tambahan informasi, ### code ### adalah script yang sudah ada pada konfigurasi virtual kamu sebelumnya. Jika sudah selesai, verifikasi perubahan konfigurasi kamu dengan perintah di bawah ini.
$ apachectl configtest Syntax OK
Restart layanan Apache dengam:
$ systemctl restart httpd
Tes SSL
Cara install sertifikat SSL dengan Apache di CentOS 7 hampir selesai. Langkah terakhir yang perlu kamu lakukan adalah melakukan tes SSL, apakah sudah terpasang dengan baik atau belum. Kunjungi website-mu, lalu klik ikon gembok di sebelah kiri URL di bar browser kamu dan selanjutnya melakukan tes SSL di SSL Labs untuk mengetahui grade SSL kamu. Gambar berikut adalah tampilan setelah kamu mengklik ikon gembok di sebelah kiri URL.
Setelah memasukkan nama domain, SSL Labs akan mulai mengecek sertifikat SSL yang digunakan. Setelah menunggu beberapa menit, berikut ini adalah tampilan Overall Rating Grade SSL Certificate yang sudah ter-install dan sudah dimodifikasi sesuai cara install di atas.
Baca Juga: Cara Install WordPress dengan LEMP Stack di CentOS 7
Simpulan
Setelah mengikuti cara install sertifikat SSL dengan web server Apache di CentOS 7, seharusnya saat ini website-mu sudah memiliki koneksi yang aman dengan grade A+. Selain meningkatkan kepercayaan pengunjung, keberadaan sertifikat SSL juga bisa mempermudah website-mu untuk menaikkan peringkat di Google, yang nantinya akan berdampak pula pada peningkatan traffic website.
Tapi, ada beberapa faktor lain yang bisa memengaruhi peringkat website-mu di mesin pencari, misalnya optimasi website dan hosting yang digunakan. Pastikan kamu menggunakan server VPS atau cloud hosting terbaik, kemudian pelajari apa saja tools yang bisa kamu gunakan untuk mengoptimasi website-mu dari artikel “Tools SEO untuk Optimasi Website“.
Demikian tutorial cara install sertifikat SSL dengan web server Apache di CentOS 7 ini, jangan sungkan untuk meninggalkan ide-ide topik yang ingin kamu baca di blog Dewaweb, ya. Semoga artikel ini membantu, salam sukses online!