GNU/Linux >> Znalost Linux >  >> Linux

Jak nastavit GeoIP Block pomocí Apache

Nastavte blokování založené na GeoIP pomocí Apache na Ubuntu nebo Debianu. Modul GeoIP umožňuje správci blokovat nebo přesměrovat provoz na základě polohy.

V této příručce se dozvíte, jak nainstalovat modul GeoIP a nakonfigurovat jej tak, aby blokoval konkrétní země.

Předpoklady

Apache nainstalován a nakonfigurovaný. Můžete se podívat na tuto příručku, jak nainstalovat a nakonfigurovat Apache2.

Instalovat modul GeoIP

Nainstalujte modul GeoIP pro Apache pomocí následujícího příkazu.

sudo apt install libapache2-mod-geoip

Tento příkaz nainstaluje požadovaný modul pro Apache.

Povolit GeoIP

Existují 2 způsoby, jak povolit GeoIP. Pokud chcete povolit GeoIP server široký, můžete postupovat podle metody 1. Tato metoda bude mít určité problémy s výkonem.

GeoIP můžete také povolit z konfigurace virtuálního hostitele.

Metoda 1 – Konfigurace celého serveru

Jakmile je modul nainstalován, upravte konfiguraci modulu a proveďte změny, jak je uvedeno níže.

Upravte konfigurační soubor souborového modulu.

sudo nano /etc/apache2/mods-available/geoip.conf
  • Nastavte řádek GeoIPEnable z Vypnuto na Zapnuto .
  • Odkomentujte Soubor GeoIPDB řádek.

Váš konečný soubor by měl vypadat takto.

<IfModule mod_geoip.c>
  GeoIPEnable On
  GeoIPDBFile /usr/share/GeoIP/GeoIP.dat
</IfModule>

Uložte a ukončete soubor.

Povolit modul.

sudo a2enmod geoip

Metoda 2 – Konfigurace virtuálního hostitele

Po instalaci modulu byste měli mít nainstalovanou databázi GeoIP. Stačí tedy upravit konfiguraci virtuálního hostitele a provést následující změny.

Upravte konfiguraci virtuálního hostitele.

sudo nano /etc/apache2/sites-available/virtualhost.conf

Přidejte následující pod ServerAlias směrnice.

GeoIPEnable On
GeoIPDBFile /usr/share/GeoIP/GeoIP.dat
GeoIPScanProxyHeaders On

Uložte a ukončete soubor.

Restartujte Apache

Zkontrolujte, zda je konfigurace správná a restartujte Apache.

sudo apachectl configtest
sudo service apache2 restart

Nyní máte povoleno GeoIP.

Spravovat omezení

Blokovat určité země

Vytvořte nebo otevřete soubor .htaccess, který je v kořenovém adresáři vašeho webu, a přidejte následující úryvek pro blokování zemí.

SetEnvIf GEOIP_COUNTRY_CODE UA BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE VN BlockCountry
Deny from env=BlockCountry

Výše uvedená konfigurace zablokuje požadavky z výše uvedených 2 zemí. Můžete zahrnout podle svého přání.

Povolit určité země

Vytvořte nebo otevřete soubor .htaccess, který je v kořenovém adresáři vašeho webu, a přidejte následující fragment, abyste povolili země.

SetEnvIf GEOIP_COUNTRY_CODE US AllowCountry
SetEnvIf GEOIP_COUNTRY_CODE CA AllowCountry
Deny from all

Allow from env=AllowCountry

Výše uvedená konfigurace umožní požadavky pouze z výše uvedených 2 zemí. Můžete zahrnout podle svého přání.

Najdete zde seznam kódů zemí z oficiální databáze maxmind.

Závěr

Nyní jste se naučili, jak nakonfigurovat omezení založená na GeoIP pomocí Apache na vašich serverech Ubuntu nebo Debian.

Díky za váš čas. Pokud narazíte na jakýkoli problém nebo zpětnou vazbu, zanechte prosím komentář níže.


Linux
  1. Jak povolit mod_rewrite na Apache na CentOS

  2. Jak nastavit server centralizovaného protokolování pomocí Rsyslog

  3. Jak nastavit modul CWP pro WHMCS

  1. Jak nastavit základní ověřování v Apache pomocí .htaccess

  2. Jak nainstalovat phpMyAdmin v Linuxu pomocí zdrojového kódu

  3. Jak znovu zkompilovat Apache pomocí EasyApache z WHM?

  1. Jak nastavit streamovací mediální server pomocí Jellyfin v Linuxu

  2. Jak nastavit základní souborový server pomocí simpleHTTPserver

  3. Jak nastavit Firewall pomocí FirewallD na CentOS 8