Dalam tutorial ini ditunjukkan cara mengamankan server web Apache dengan Ubuntu 18.04 melalui pemasangan sertifikat Secure Sockets Layer (SSL). Saat ini, mengaktifkan koneksi terenkripsi ke server web sangat penting karena memungkinkan Anda menggunakan protokol HTTPS yang aman untuk situs web Anda.
Untuk melakukannya, Let's Encrypt, Otoritas Sertifikasi yang menerbitkan sertifikat gratis yang sepenuhnya sesuai dengan standar keamanan yang diperlukan, akan digunakan. Let's Encrypt menyederhanakan proses pemasangan sertifikat keamanan untuk membantu pengguna yang kurang berpengalaman sekalipun mengamankan situs web melalui penggunaan klien Certbot.
Pertama sambungkan ke server Anda melalui koneksi SSH. Jika Anda belum melakukannya, ikuti panduan kami disarankan untuk terhubung secara aman dengan protokol SSH. Untuk server lokal, lanjutkan ke langkah berikutnya dan buka terminal server Anda.
Menginstal CertBot
Tambahkan repositori Certbot.
$ sudo add-apt-repository ppa:certbot/certbot
Pada titik ini instal Certbot menggunakan apt:
$ sudo apt install python-certbot-apache
Setelah menyelesaikan instalasi, Anda dapat melanjutkan dengan konfigurasi firewall.
Konfigurasi firewall
Jika ada firewall di sistem Anda, setel untuk mengaktifkan lalu lintas HTTP dan lalu lintas HTTPS ke komputer Anda.
Saat menggunakan firewall UFW, profil pra-instal akan tersedia untuk Apache. Jadi mari kita lihat cara mengaktifkannya.
Untuk memeriksa profil yang tersedia yang terpasang di firewall UFW, jalankan perintah ini:
$ sudo ufw app list
Daftar yang mirip dengan berikut ini akan ditampilkan di layar:
Available applications:
Apache
Apache Full
Apache Secure
OpenSSH
Untuk mengizinkan lalu lintas HTTP (Port 80) dan HTTPS (Port 443), gunakan profil "Apache Full".
Periksa informasi profil Anda sebagai berikut:
$ sudo ufw app info "Apache Full"
Deskripsi profil di layar akan muncul:
Profile: Apache Full
Title: Web Server (HTTP,HTTPS)
Description: Apache v2 is the next generation of the omnipresent Apache web
server.
Ports:
80,443/tcp
Setelah memeriksa profil, itu dapat diaktifkan:
$ sudo ufw allow in "Apache Full"
Membuat Sertifikat SSL
Pada titik ini, mintalah sertifikat domain yang ingin Anda lindungi menggunakan Certbot yang diinstal sebelumnya.
Ganti TUODOMINIO.IT dengan nama domain yang ingin Anda lindungi:
$ sudo certbot --apache -d TUODOMINIO.IT -d www.TUODOMINIO.IT
N.B. kata --apache menentukan Certbot untuk menggunakan plugin Apache, sedangkan kata - d menunjukkan nama domain yang akan digunakan sertifikat.
Pada titik ini, tentukan alamat email Anda, terima persyaratan layanan dan tunjukkan apakah Anda ingin mengalihkan koneksi ke situs web Anda ke koneksi HTTPS.
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
-------------------------------------------------------------------------------
1: No redirect - No further changes to the webserver configuration.
2: Redirect - To redirect all requests to secure HTTPS access. Choose this option fornew websites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
-------------------------------------------------------------------------------
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):
N.B. Jika sudah ada CMS atau skrip di situs Anda, sebaiknya ikuti panduan kami untuk memeriksa apakah kompatibel dengan koneksi HTTPS sebelum mengarahkan lalu lintas.
Masukkan nomor yang sesuai dengan pilihan Anda dan, jika prosedur berhasil. pesan konfirmasi akan ditampilkan di layar.
Memverifikasi pembaruan Sertifikat
Sertifikat SSL Let's Encrypt berlaku selama 90 hari setelah itu harus diperbarui. Certbot juga menangani pembaruan otomatis sertifikat tetapi untuk memastikan bahwa prosedur berfungsi dengan benar, mengikuti panduan kami disarankan untuk mencoba memperbarui sertifikat secara manual dengan cara ini:
$ sudo certbot renew --dry-run
Jika tidak ada kesalahan yang ditampilkan, maka pembaruan berhasil. Jika tidak, email akan dikirim ke alamat yang dimasukkan selama pembuatan sertifikat, saat masa berlakunya sudah dekat.