Membangun Server Website dengan Ubuntu, Nginx, dan SSL

Server website yang aman dan andal membutuhkan kombinasi sistem operasi stabil, server web efisien, dan sertifikat SSL otomatis. Dalam panduan ini, kita akan menggunakan Ubuntu LTS sebagai OS, Nginx sebagai web server, dan Certbot untuk memasang sertifikat SSL gratis dari Let’s Encrypt. Ubuntu LTS dipilih karena stabilitasnya, Nginx untuk performa tinggi, dan Certbot untuk memperbarui SSL otomatis setiap 90 hari.

Mengapa Menggunakan Ubuntu LTS?

  • Stabil dan Teruji: Long Term Support (LTS) menyediakan pembaruan keamanan hingga lima tahun.
  • Kompatibilitas Luas: Didukung oleh banyak perangkat lunak dan layanan cloud.
  • Community Support: Dokumentasi dan komunitas besar untuk pemecahan masalah cepat.

Mengapa Menggunakan Let’s Encrypt?

  • Gratis dan Terpercaya: Memberikan sertifikat SSL gratis yang diakui oleh semua browser modern.
  • Aman dan Terotomatisasi: Memastikan enkripsi data dan memperbarui sertifikat setiap 90 hari.
  • Mudah Diintegrasikan: Dukungan untuk berbagai web server seperti Nginx dan Apache.
 

Mengapa Menggunakan Certbot?

  • Otomatisasi Penuh: Certbot menangani instalasi dan pembaruan SSL tanpa intervensi manual.
  • Dukungan Luas: Mendukung banyak sistem operasi dan server web.
  • Open Source: Gratis dengan komunitas aktif untuk pembaruan dan dukungan.

Mengapa Menggunakan Nginx?

  • Performa Tinggi: Nginx dapat menangani ribuan koneksi simultan dengan efisien.
  • Reverse Proxy dan Load Balancing: Mendukung konfigurasi canggih untuk skala besar.
  • Konsumsi Memori Rendah: Cocok untuk server dengan sumber daya terbatas.

 

Langkah-Langkah Instalasi dan Setup

1. Persiapan Awal: Update Server

 Pastikan server Anda mutakhir dengan paket terbaru.

				
					sudo apt update && sudo apt upgrade -y
				
			

2. Install Nginx

Instal Nginx dari repository resmi Ubuntu dan enabled nginx agar service nginx tetap running baik setelah mesin reboot. Lalu periksa apakah nginx sudah running.

				
					sudo apt install nginx -y
sudo systemctl enable nginx --now
sudo systemctl status nginx
				
			

3. Buka Port Firewall

Pastikan port HTTP dan HTTPS terbuka agar website dapat diakses.

				
					sudo ufw allow 'Nginx Full'
sudo ufw enable
				
			

4. Install Certbot dan Plugin Nginx

Certbot akan menangani penerbitan dan pembaruan SSL.

				
					sudo apt install certbot python3-certbot-nginx -y
				
			

5. Konfigurasi Nginx untuk Domain

Buat atau edit file konfigurasi Nginx untuk domain Anda:

				
					sudo nano /etc/nginx/sites-available/yourdomain.com
				
			

Isi dengan konfigurasi berikut:

				
					server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;
    
    location / {
        root /var/www/yourdomain.com;
        index index.html index.htm;
    }
}
				
			

Aktifkan konfigurasi:

				
					sudo ln -s /etc/nginx/sites-available/yourdomain.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
				
			

6. Generate Sertifikat SSL dengan Certbot

Jalankan perintah berikut untuk mendapatkan sertifikat SSL:

				
					sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
				
			

Ikuti instruksi di layar dan pilih opsi redirect agar semua trafik HTTP dialihkan ke HTTPS.

7. Verifikasi dan Uji SSL

Pastikan sertifikat sudah diterapkan dan bekerja dengan benar:

				
					sudo systemctl reload nginx
				
			

8. Otomatisasi Pembaruan SSL

Certbot secara otomatis menambahkan cron job untuk memperbarui sertifikat setiap 90 hari. Anda bisa memverifikasinya dengan:

				
					sudo certbot renew --dry-run
				
			

Dengan setup ini, Anda mendapatkan server web yang aman dan andal menggunakan Ubuntu LTS, Nginx, dan SSL dari Let’s Encrypt. Certbot akan memastikan sertifikat diperbarui otomatis, sehingga Anda tidak perlu khawatir tentang sertifikat kadaluarsa.

share artikel ini