• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Jaranguda

Belajar Mengajar

  • Home
  • Sponsor/Jasa
  • Tentang

Proteksi Nginx dengan Password

Last Updated on 2 April 2020 By tommy Leave a Comment

Contoh kasus yang banyak adalah banyak aplikasi yang tidak mendukung penggunaan password contoh aplikasi monitoring netdata, atau agar web development anda tidak di index google atau diakses sembarang orang. Daripada me whitelist hanya beberapa IP yang diperbolehkan mengaksesnya ada baiknya menggunakan password atau nama benarnya HTTP Basic Auth.

Konsepnya sederhana, seperti namanya Basic Auth. File password yang dibuat disimpan didalam sebuah file, untuk menambah user tinggal ditambah dibaris baru saja. Contoh saya memiliki situs untuk development nuxtjs, block server nginx yang saya gunakan

server {
    listen       80;
    server_name  nuxtjs.jaranguda.com;
    return 301 https://nuxtjs.jaranguda.com$request_uri;
}
 
server {
    listen       443 ssl http2;
    server_name  nuxtjs.jaranguda.com;
 
    ssl_certificate /root/.acme.sh/jaranguda.com/fullchain.cer;
    ssl_certificate_key /root/.acme.sh/jaranguda.com/jaranguda.com.key;
 
     location / {
            proxy_pass http://127.0.0.1:6000;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;
        }
}

Cara ini tidak terbatas hanya untuk subdomain/domain kita bisa memproteksi folder atau URL misalkan https://nuxtjs.jaranguda.com/ini-admin-lho. Bisa dikreasikan juga dengan limitasi IP

Tahap 1 : Install Nginx

Ini udah pasti ya, kalo ngga ngapain dicari tutorial caranya ;).

apt install nginx -y

Tahap 2 : Install htpasswd

Fitur basic ini membutuhkan htpasswd untuk menggenerate password, htpasswd sendiri berada di package apache2-utils, install dengan

apt install apache2-utils -y

Buat user untuk mengakses website yang nantinya akan diproteksi

htpasswd -c /etc/nginx/.password superadmin
# nanti diminta memasukkan password.
New password: 
Re-type new password: 
Adding password for user superadmin

keterangan:
superadmin : user yang akan digunakan untuk login.
/etc/nginx/.password : tempat menyimpan user dan password yang dibuat

Bila penasaran dengan passwordnya, bisa dilihat dengan

cat /etc/nginx/.password
# output
superadmin:$apr1$M26TQztz$0Z/TQG/DMw0h0EeCaORrL0

Tahap 3 : Update Konfigurasi Nginx

Update konfigurasi nginx yang tadi sudah kita miliki menjadi

server {
    listen       80;
    server_name  nuxtjs.jaranguda.com;
    return 301 https://nuxtjs.jaranguda.com$request_uri;
}
 
server {
    listen       443 ssl http2;
    server_name  nuxtjs.jaranguda.com;
 
    ssl_certificate /root/.acme.sh/jaranguda.com/fullchain.cer;
    ssl_certificate_key /root/.acme.sh/jaranguda.com/jaranguda.com.key;
    auth_basic "Rahasia";
    auth_basic_user_file /etc/nginx/.password;
 
     location / {
            proxy_pass http://127.0.0.1:6000;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;
        }
}

Restart nginx

nginx -t
# kalo oke restart
systemctl restart nginx

Tahap 4 : Tes

Buka situs anda tersebut, nanti akan muncul window untuk memasukkan username dan password
diproteksi dengan password

Tulisan menarik lainnya

  • NGINX Rewrite URL dengan sub_filter

    Contoh untuk merubah URL di nginx dengan bantuan modul sub_filter, sebagai contoh saya menggunakan aplikasi…

  • Membuat Password Generator dengan PHP

    Untuk membuat kombinasi password yang aman disarankan menggunakan huruf kecil, huruf besar, angka, dan karakter…

  • Mengatasi Gagal Login Dengan Password WebHostManager

    Bila anda mengalami gagal login WebHost Manager (WHM) walaupun password anda sudah benar, coba cek…

  • Sharing File dengan Samba Tanpa Password

    Contoh disini kita akan sharing file dari Fedora 20 ke Windows 7, jadi file yang…

Filed Under: Linux

Reader Interactions

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Primary Sidebar

Pencarian

Tanya Jawab tentang DevOps SRE CPE, gabung di https://t.me/devopsindonesia

Terbaru

  • Solusi AWS CLI SSL VALIDATION failed
  • Monitoring Kubernetes Cluster dengan Prometheus
  • Solusi Playwright Firefox version `GLIBCXX_3.4.30′ not found (required by /lib64/libicuuc.so.69)
  • Cara Upgrade Fedora 35 ke Fedora 36
  • Ekstrak Gzip File dan Ambil Total dengan Python

Komentar

  • Xpud on Script PHP untuk Mengambil History Lagu Shoutcast v2.5
  • Jrenx on Membuat Bot Telegram Sederhana dengan PHP
  • Sella on Kemana Menghilangnya Saldo BCA 50 ribu
  • Rian on Mengganti Halaman Error Laravel
  • Suchie on Kemana Menghilangnya Saldo BCA 50 ribu

Tulisan Populer

  • Password Router Huawei HG8245H5 Indihome 1m views
  • Password Terbaru ZTE F609 Indihome 781.5k views
  • Password Superadmin Huawei HG8245A 294.4k views
  • Cara Setting Manual Modem GPON ZTE F609 Indihome 267.8k views
  • Cara Setting Wireless ZTE F609 Indihome 251k views
  • Mengaktifkan Port LAN di Huawei HG8245 Indihome 165.4k views
  • Akses UseeTV Indihome via Wireless ZTE F609 154.8k views
  • Cara Reset Password ZTE F609 Indihome 146k views
  • Kemana Menghilangnya Saldo BCA 50 ribu 135.3k views
  • Cara Setting DHCP Server Modem/Router ZTE F609 109k views

Kategori

  • Delphi
  • dll
  • Gambas
  • Internet
  • Java
  • Lazarus
  • Linux
  • PHP
  • Review
  • Teknologi

Sponsor

kadal.id
Untuk jadi sponsor, hubungi kita lewat halaman sponsor
© 2021. Jaranguda
  • Linux
  • PHP
  • Internet
  • Teknologi
  • Delphi
  • Gambas
  • Java