Siapkan pemblokiran berbasis GeoIP menggunakan Apache di Ubuntu atau Debian. Modul GeoIP memungkinkan admin untuk memblokir atau mengalihkan lalu lintas berdasarkan lokasi.
Dalam panduan ini Anda akan mempelajari cara menginstal modul GeoIP dan mengkonfigurasinya untuk memblokir negara tertentu.
Prasyarat
Apache diinstal dan dikonfigurasi. Anda dapat memeriksa panduan ini tentang cara menginstal dan mengkonfigurasi Apache2.
Instal Modul GeoIP
Instal modul GeoIP untuk Apache menggunakan perintah berikut.
sudo apt install libapache2-mod-geoip
Perintah ini akan menginstal modul yang diperlukan untuk Apache.
Aktifkan GeoIP
Ada 2 metode untuk mengaktifkan GeoIP. Jika Anda ingin mengaktifkan GeoIP server wide, Anda dapat mengikuti metode 1. Metode ini akan memiliki beberapa masalah kinerja.
Anda juga dapat mengaktifkan GeoIP dari konfigurasi host virtual Anda.
Metode 1 – Konfigurasi Luas Server
Setelah modul terinstal, edit konfigurasi modul dan buat perubahan seperti yang tercantum di bawah ini.
Edit file konfigurasi modul file.
sudo nano /etc/apache2/mods-available/geoip.conf
- Setel baris GeoIPEnable dari Nonaktif ke Aktif .
- Batalkan komentar pada GeoIPDBFile baris.
File akhir Anda akan terlihat seperti di bawah ini.
<IfModule mod_geoip.c> GeoIPEnable On GeoIPDBFile /usr/share/GeoIP/GeoIP.dat </IfModule>
Simpan dan keluar dari file.
Aktifkan modul.
sudo a2enmod geoip
Metode 2 – Konfigurasi Host Virtual
Karena Anda telah menginstal modul, Anda harus menginstal database GeoIP. Jadi Anda cukup mengedit konfigurasi host virtual Anda dan membuat perubahan berikut.
Edit konfigurasi host virtual Anda.
sudo nano /etc/apache2/sites-available/virtualhost.conf
Tambahkan yang berikut di bawah ServerAlias arahan.
GeoIPEnable On GeoIPDBFile /usr/share/GeoIP/GeoIP.dat GeoIPScanProxyHeaders On
Simpan dan keluar dari file.
Mulai ulang Apache
Periksa apakah konfigurasi sudah benar dan mulai ulang Apache.
sudo apachectl configtest sudo service apache2 restart
Sekarang Anda telah mengaktifkan GeoIP.
Kelola Batasan
Blokir Negara Tertentu
Buat atau buka file .htaccess yang ada di dalam direktori root web Anda dan tambahkan cuplikan berikut untuk memblokir negara.
SetEnvIf GEOIP_COUNTRY_CODE UA BlockCountry SetEnvIf GEOIP_COUNTRY_CODE VN BlockCountry Deny from env=BlockCountry
Konfigurasi di atas akan memblokir permintaan dari 2 negara di atas. Anda dapat memasukkan sesuai keinginan Anda.
Izinkan Negara Tertentu
Buat atau buka file .htaccess yang ada di dalam direktori root web Anda dan tambahkan cuplikan berikut untuk mengizinkan negara.
SetEnvIf GEOIP_COUNTRY_CODE US AllowCountry SetEnvIf GEOIP_COUNTRY_CODE CA AllowCountry Deny from all Allow from env=AllowCountry
Konfigurasi di atas akan mengizinkan permintaan hanya dari 2 negara di atas. Anda dapat memasukkan sesuai keinginan Anda.
Anda dapat menemukan daftar Kode negara dari database maxmind resmi.
Kesimpulan
Sekarang Anda telah mempelajari cara mengonfigurasi pembatasan berbasis GeoIP dengan Apache di server Ubuntu atau Debian Anda.
Terima kasih atas waktunya. Jika Anda menghadapi masalah atau umpan balik, silakan tinggalkan komentar di bawah.