Cara Mudah Membatasi IP Address Dengan Nginx

Membatasi IP dengan Nginx

Pada tulisan kali ini, penulis mencoba memberikan sedikit tips dan trik bagaimana membatasi IP dengan Nginx di GNU / Linux.

Salah satu upaya untuk penanganan masalah keamanan server adalah dengan membatasi IP tertentu mana saja yang boleh diakses dan IP mana saja yang tidak boleh.

Sebagai contoh misalnya kita mau membatasi siapa saja yang boleh mengakses phpMyadmin atau halaman administrasi dari suatu web yang terlah kita bangun.

Persiapan

Asumsi tulisan ini adalah Anda sudah memasang Nginx dan sudah menerapkannya pada server Anda. Jika belum, bisa mencari artikel terkait pemasangan Nginx di blog ini.

Membatasi IP Dengan Nginx

Untuk menggunakannya kita hanya perlu merubah konfigurasi Nginx. Adapun untuk berkas konfigurasi Nginx, umumnya terletak pada :

/etc/nginx/nginx.conf

Atau jika Anda menggunakan server block pada GNU / Linux distribusi Debian, Ubuntu serta derivatifnya, ia terletak pada :

/etc/nginx/sites-availables/default

Di sini kita menggunakan dua metode yakni Blacklist dan Whitelist.

Perbedaan antara keduanya adalah blacklist hanya memblokir IP terdaftar, sedangkan whitelist membuka dari IP terdaftar.

Dengan kata lain blok semua kecuali yang terdaftar.

Kedua metode tersebut bebas mau gunakan mana yang menurut Anda terbaik, yang jelas dalam tulisan ini penulis hanya memberikan sedikit contoh sederhana.

Baca juga : Menyembunyikan Versi Nginx

Metode Blacklist

server {
    ...
   location /admin {
      allow all;
      deny 10.0.0.0/8;
      deny 192.168.0.1;
      ...
   }
   ...
}

Metode Whitelist

server {
    ...
   location /admin {
      allow 10.0.0.0/8;
      allow 123.168.0.1;
      deny all;
      ...
   }
   ...
}

Langkah terakhir yakni kita restart Nginx nya dengan cara berikut :

$ sudo service nginx restart

Atau bagi Anda pengguna Systemd :

$ sudo systemctl restart nginx

Semoga panduan singkat ini bermanfat untuk Anda 🙂

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *