# SSL - Let's Encrypt HAProxy RockyLinux

Berikut adalah tutorial lengkap untuk menginstal Let's Encrypt di Ubuntu dengan HAProxy:

1\. Persiapan Awal  
  
Pastikan Rocky Linux server Anda sudah siap dan terhubung dengan internet. Anda juga perlu memastikan bahwa HAProxy sudah diinstal dan dikonfigurasi dengan benar.

  
2\. Instal Certbot  
Certbot adalah perangkat lunak yang digunakan untuk meminta dan mengelola sertifikat SSL dari Let's Encrypt.

Tambahkan Repositori Certbot :

```
sudo dnf install epel-release
```

Install Certbot :

```
sudo dnf install certbot -y
```

3\. Request Sertifikat SSL  
Sekarang, mari kita minta sertifikat SSL dari Let's Encrypt untuk domain Anda.

Jalankan Certbot:

Untuk mendapatkan sertifikat SSL, Anda dapat menjalankan perintah berikut :

```
sudo certbot certonly --standalone -d ilusidigital.com -d www.ilusidigital.com
```

Gantilah `ilusdigital.com dan www.ilusidigital.com` dengan domain Anda akan gunakan. Certbot akan mencoba untuk menghubungi server Let's Encrypt, memverifikasi kepemilikan domain, dan mengunduh sertifikat SSL.

Simpan Lokasi Sertifikat:

Certbot akan memberi tahu Anda di mana sertifikat dan kunci berada setelah berhasil. Biasanya, disimpan di `/etc/letsencrypt/live/ilusidigital.com/`.

4\. Konfigurasi HAProxy  
  
Sekarang kita akan mengkonfigurasi HAProxy untuk menggunakan sertifikat SSL yang baru saja kita dapatkan.

Buka File Konfigurasi HAProxy :

```
sudo nano /etc/haproxy/haproxy.cfg
```

5\. Tambahkan Konfigurasi SSL di Frontend HAProxy:

Temukan bagian frontend di haproxy.cfg yang sesuai dengan konfigurasi situs web Anda dan tambahkan baris berikut untuk mengarahkan HAProxy menggunakan sertifikat SSL :

```
frontend http_front
    bind *:443 ssl crt /etc/letsencrypt/live/ilusidigital.com/fullchain.pem
    mode http
    option forwardfor
    option http-server-close
    ...
```

`bind *:443 ssl crt /etc/letsencrypt/live/ilusidigital.com/fullchain.pem`: Mengikat HAProxy ke port 443 dengan menggunakan sertifikat SSL dari Let's Encrypt.

Simpan dan Tutup File Konfigurasi:

Setelah mengedit `haproxy.cfg`, simpan dan tutup editor teks.

6\. Restart HAProxy  
  
Terakhir, restart HAProxy untuk menerapkan perubahan konfigurasi.

```
sudo systemctl restart haproxy
```

7\. Otomatisasi Pembaruan Sertifikat  
  
Agar sertifikat Let's Encrypt tetap terbarui secara otomatis, Anda dapat menambahkan tugas cron untuk menjalankan perintah pembaruan Certbot secara berkala.

Buka crontab untuk pengguna root :

```
sudo crontab -e
```

Tambahkan baris berikut untuk memperbarui sertifikat setiap minggu :

```
0 0 * * 0 certbot renew --quiet
```

Simpan dan tutup editor crontab.

8\. Dengan langkah-langkah ini, Anda seharusnya berhasil menginstal dan mengkonfigurasi Let's Encrypt di HAProxy di server Ubuntu Anda. Pastikan untuk mengganti domainanda.com dengan domain yang sesuai dengan kebutuhan Anda.