Panduan Linux

Setup Basic Authentication di NGINX

Halo, teman-teman! Kali ini kita bakal bahas gimana caranya nge-setup basic authentication di NGINX. Basic authentication ini tuh kayak gembok buat website kita, jadi cuma orang-orang tertentu aja yang bisa akses. Nggak sembarang orang bisa masuk, harus punya username dan password dulu. Keren, kan?

Apa Itu Basic Authentication?

Basic authentication itu metode autentikasi yang simpel banget. Ketika kamu coba akses website yang diproteksi, bakal muncul pop-up minta username dan password. Kalau nggak punya, ya nggak bisa masuk. Gampang, kan?

Kenapa Pake NGINX?

NGINX tuh web server yang kenceng banget dan banyak dipake buat nge-host website. Selain itu, NGINX juga punya fitur keamanan yang oke, termasuk basic authentication. Jadi, nggak ada salahnya kita coba setup basic authentication di NGINX.

Langkah-Langkah Setup Basic Authentication di NGINX

  1. Install apache2-utils

    Pertama, kita butuh tools buat bikin file password. Di sini kita pake htpasswd yang ada di package apache2-utils. Buat yang pake Ubuntu atau Debian, tinggal ketik:

    sudo apt-get update
    sudo apt-get install apache2-utils
    

    Buat yang pake CentOS atau Fedora, pake perintah:

    sudo yum install httpd-tools
    
  2. Bikin File Password

    Sekarang, kita bikin file password pake htpasswd. Misalnya, kita mau bikin username admin:

    sudo htpasswd -c /etc/nginx/.htpasswd admin
    

    Nanti kamu bakal diminta masukin password buat user admin. File .htpasswd bakal disimpen di /etc/nginx.

    Kalau mau nambah user lagi, tinggal pake perintah yang sama tanpa -c:

    sudo htpasswd /etc/nginx/.htpasswd user2
    

    Jangan lupa, -c cuma dipake waktu bikin file password pertama kali.

  3. Konfigurasi NGINX

    Sekarang, buka file konfigurasi NGINX kamu. Biasanya ada di /etc/nginx/sites-available/default atau /etc/nginx/nginx.conf. Cari bagian server atau location yang mau kamu proteksi.

    Tambahkan konfigurasi ini di dalam server atau location:

    auth_basic "Restricted Area";
    auth_basic_user_file /etc/nginx/.htpasswd;
    

    Contoh lengkapnya:

    server {
        listen 80;
        server_name example.com;
    
        location / {
            auth_basic "Restricted Area";
            auth_basic_user_file /etc/nginx/.htpasswd;
            # ... konfigurasi lainnya ...
        }
    }
    

    Simpan file konfigurasi dan keluar.

  4. Test Konfigurasi dan Restart NGINX

    Sebelum restart NGINX, pastiin dulu konfigurasinya bener pake perintah:

    sudo nginx -t
    

    Kalau keluar pesan syntax is okay dan test is successful, berarti konfigurasinya bener. Terus, restart NGINX:

    sudo systemctl restart nginx
    

    Atau pake perintah:

    sudo service nginx restart
    
  5. Coba Akses Website

    Buka browser dan akses website kamu. Harusnya muncul pop-up minta username dan password. Masukin username dan password yang udah kamu bikin tadi. Kalau berhasil, kamu bakal bisa akses website. Kalau gagal, coba cek lagi konfigurasinya.

Tips Tambahan

Nah, gampang banget, kan? Dengan basic authentication, website kamu jadi lebih aman dari orang-orang yang nggak diundang. Selamat mencoba!

#Nginx #Tutorial