Cara Mengamankan Apache dengan Gratis Mari Enkripsi Sertifikat SSL di Ubuntu dan Debian


Anda memiliki nama domain yang baru terdaftar dan server web Anda beroperasi dengan Sertifikat SSL yang Ditandatangani Sendiri yang dikeluarkan oleh Anda sehingga menyebabkan sakit kepala bagi klien Anda saat mereka mengunjungi domain karena kesalahan yang dihasilkan sertifikat? Anda memiliki anggaran terbatas dan tidak mampu membeli sertifikat yang dikeluarkan oleh CA tepercaya? Inilah saatnya perangkat lunak Let's Encrypt muncul dan menyelamatkan situasi.

Jika Anda ingin menginstal Let's Encrypt untuk Apache atau Nginx di RHEL, CentOS, Fedora atau Ubuntu dan Debian, ikuti panduan berikut:

Siapkan Mari Enkripsi untuk Mengamankan Apache di RHEL dan CentOS 7/6

Setup Mari Enkripsi untuk Mengamankan Nginx di Ubuntu dan Debian

Let's Encrypt adalah Certificate Authority (CA) yang memfasilitasi Anda dalam memperoleh sertifikat SSL/TLS gratis yang diperlukan untuk Anda server agar berjalan dengan aman, menjadikan pengalaman penelusuran lancar bagi pengguna Anda, tanpa kesalahan apa pun.

Menguji Lingkungan Sampel

Semua langkah yang diperlukan untuk menghasilkan sertifikat, sebagian besar, dilakukan secara otomatis untuk server web Apache. Namun, terlepas dari perangkat lunak server web Anda, beberapa langkah harus dilakukan secara manual dan sertifikat harus diinstal secara manual, terutama jika konten situs web Anda dilayani oleh daemon Nginx.

Tutorial ini akan memandu Anda tentang cara menginstal perangkat lunak Let's Encrypt di Ubuntu atau Debian, membuat dan memperoleh sertifikat gratis untuk domain Anda, dan caranya Anda dapat menginstal sertifikat secara manual di server web Apache dan Nginx.

Persyaratan

  1. Nama domain terdaftar publik dengan catatan A yang valid untuk mengarah kembali ke Alamat IP eksternal server Anda. Jika server Anda berada di belakang firewall, ambil tindakan yang diperlukan untuk memastikan bahwa server Anda dapat diakses secara luas dari internet dengan menambahkan aturan port forward di sisi router.
  2. Server web Apache diinstal dengan modul SSL diaktifkan dan hosting virtual diaktifkan, jika Anda menghosting beberapa domain atau subdomain.

Langkah 1: Instal Apache dan Aktifkan Modul SSL

1. Jika Anda belum menginstal server web Apache di mesin Anda, jalankan perintah berikut untuk menginstal daemon Apache.

sudo apt-get install apache2

2. Aktivasi modul SSL untuk server web Apache di Ubuntu atau Debian cukup mudah. Aktifkan modul SSL dan aktifkan host virtual SSL default Apache dengan mengeluarkan perintah di bawah ini:

sudo a2enmod ssl
sudo a2ensite default-ssl.conf
sudo service apache2 restart
or
sudo systemctl restart apache2.service

Pengunjung kini dapat mengakses nama domain Anda melalui protokol HTTPS. Namun, karena sertifikat yang ditandatangani sendiri oleh server Anda tidak dikeluarkan oleh otoritas sertifikat tepercaya, peringatan kesalahan akan ditampilkan di browser mereka seperti yang diilustrasikan pada gambar di bawah.

https://yourdomain.com

Langkah 2: Instal Klien Mari Enkripsi Gratis

3. Untuk menginstal perangkat lunak Let's Encrypt di server Anda, Anda harus menginstal paket git di sistem Anda. Keluarkan perintah berikut untuk menginstal perangkat lunak git:

sudo apt-get -y install git

4. Selanjutnya, pilih direktori dari hierarki sistem tempat Anda ingin mengkloning repositori git Let's Encrypt. Dalam tutorial ini kita akan menggunakan direktori /usr/local/ sebagai jalur instalasi untuk Let's Encrypt.

Beralih ke direktori /usr/local dan instal klien letsencrypt dengan mengeluarkan perintah berikut:

cd /usr/local
sudo git clone https://github.com/letsencrypt/letsencrypt

Langkah 4: Hasilkan Sertifikat SSL untuk Apache

5. Proses mendapatkan Sertifikat SSL untuk Apache diotomatisasi berkat plugin Apache. Hasilkan sertifikat dengan mengeluarkan perintah berikut terhadap nama domain Anda. Berikan nama domain Anda sebagai parameter pada tanda -d.

cd /usr/local/letsencrypt
sudo ./letsencrypt-auto --apache -d your_domain.tld

Misalnya, jika Anda memerlukan sertifikat untuk beroperasi pada beberapa domain atau subdomain, tambahkan semuanya menggunakan tanda -d untuk setiap data DNS tambahan yang valid setelah nama domain dasar.

sudo ./letsencrypt-auto --apache -d your_domain.tld  -d www. your_domain.tld 

6. Setujui lisensinya, masukkan alamat email untuk pemulihan dan pilih apakah klien dapat menjelajahi domain Anda menggunakan kedua protokol HTTP (aman dan tidak aman) atau mengalihkan semua permintaan tidak aman ke HTTPS.

7. Setelah proses instalasi selesai dengan sukses, pesan ucapan selamat ditampilkan di konsol Anda yang memberi tahu Anda tentang tanggal kedaluwarsa dan bagaimana Anda dapat menguji konfigurasi seperti yang diilustrasikan pada tangkapan layar di bawah.

Sekarang Anda seharusnya dapat menemukan file sertifikat Anda di direktori /etc/letsencrypt/live dengan daftar direktori sederhana.

sudo ls /etc/letsencrypt/live

8. Terakhir, untuk memverifikasi status Sertifikat SSL Anda, kunjungi tautan berikut. Ganti nama domain yang sesuai.

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

Selain itu, pengunjung kini dapat mengakses nama domain Anda menggunakan protokol HTTPS tanpa kesalahan apa pun yang muncul di browser web mereka.

Langkah 4: Perpanjangan Otomatis Memungkinkan Enkripsi Sertifikat

9. Secara default, sertifikat yang diterbitkan oleh otoritas Let's Encrypt berlaku selama 90 hari. Untuk memperbarui sertifikat sebelum tanggal kedaluwarsa, Anda harus menjalankan kembali klien secara manual menggunakan tanda dan parameter yang sama seperti sebelumnya.

sudo ./letsencrypt-auto --apache -d your_domain.tld

Atau jika ada beberapa subdomain:

sudo ./letsencrypt-auto --apache -d your_domain.tld  -d www. your_domain.tld

10. Proses perpanjangan sertifikat dapat diotomatisasi agar berjalan dalam waktu kurang dari 30 hari sebelum tanggal kedaluwarsa dengan menggunakan daemon cron jadwal Linux.

sudo crontab -e

Tambahkan perintah berikut di akhir file crontab hanya dengan menggunakan satu baris:

0 1 1 */2 * cd /usr/local/letsencrypt && ./letsencrypt-auto certonly --apache --renew-by-default --apache -d domain.tld >> /var/log/domain.tld-renew.log 2>&1

11. Detail tentang file konfigurasi domain perpanjangan Anda untuk perangkat lunak Let's Encrypt dapat ditemukan di direktori /etc/letsencrypt/renewal/.

cat /etc/letsencrypt/renewal/caeszar.tk.conf

Anda juga harus memeriksa file /etc/letsencrypt/options-ssl-apache.conf untuk melihat file konfigurasi SSL baru untuk server web Apache.

12. Selain itu, plugin Let's encrypt apache akan memodifikasi beberapa file di konfigurasi server web Anda. Untuk memeriksa file apa yang telah dimodifikasi, daftarkan konten direktori /etc/apache2/sites-enabled.

ls /etc/apache2/sites-enabled/
sudo cat /etc/apache2/sites-enabled/000-default-le-ssl.conf

Itu saja untuk saat ini! Pada seri tutorial berikutnya akan membahas bagaimana Anda dapat memperoleh dan menginstal sertifikat Let's Encrypt untuk server web Nginx di Ubuntu dan Debian< dan juga di CentOS.