• 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

  • Cara Mengganti Port Screen Sharing macOS
  • Cara Menonaktifkan Pager di macOS
  • Cara Mengupdate Nama Apple silicon-as-a-Service Scaleway
  • Cara Force Delete Namespace di Kubernetes
  • Install PHP MariaDB di Mac Monterey

Komentar

  • mazda on Tutorial Lengkap Install Mail Server Postfix Dovecot MariaDB di CentOS 7
  • adi on Menggunakan Mikrotik Sebagai SSH Client
  • aris u on Solusi Simple Queue Mikrotik Tidak Berjalan
  • Bowo on Cara Mematikan SSID Molecool Balifiber
  • aris on Solusi Simple Queue Mikrotik Tidak Berjalan

Tulisan Populer

  • Password Router Huawei HG8245H5 Indihome 1.1m views
  • Password Terbaru ZTE F609 Indihome 784.5k views
  • Password Superadmin Huawei HG8245A 318.1k views
  • Cara Setting Manual Modem GPON ZTE F609 Indihome 273k views
  • Cara Setting Wireless ZTE F609 Indihome 257.1k views
  • Mengaktifkan Port LAN di Huawei HG8245 Indihome 169.8k views
  • Akses UseeTV Indihome via Wireless ZTE F609 156.8k views
  • Kemana Menghilangnya Saldo BCA 50 ribu 153.1k views
  • Cara Reset Password ZTE F609 Indihome 147.5k views
  • Cara Setting DHCP Server Modem/Router ZTE F609 113.5k views

Kategori

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

Sponsor

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