GeoIP - modul pro blokování přístupů
Na nových webhostingových serverech s OS Linux (PHP 5.6 a PHP 7) jsme nasadili užitečné zabezpečení CMS Wordpress a Joomla. Umožňuje blokaci přistupů a tedy účinnou obranu proti útokům ze zahraničí s výjimkou přístupů z ČR a SK.
CMS Wordpress
Do souboru .htaccess stačí vložit tento kód: <IfModule mod_geoip.c>
<FilesMatch "wp-login.php|xmlrpc.php">
RewriteEngine on
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^(CZ|SK)$
RewriteCond %{ENV:GEOIP_COUNTRY_CODE_V6} !^(CZ|SK)$
RewriteRule ^(.*)$ - [F,L]
</FilesMatch>
</IfModule>
Toto nastavení blokuje požadavky směřující na soubor wp-login.php a xmlrpc.php (nejčastější zdroje útoků).
Kódy států jsou definovány dle standardu ISO 3166-1 (alpha-2).
Takto bude vypadat zápis výjimky pouze pro Českou Republiku:RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^(CZ)$
RewriteCond %{ENV:GEOIP_COUNTRY_CODE_V6} !^(CZ)$
A takto kombinace výjimek pro CZ, SK, DE:RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^(CZ|SK|DE)$
RewriteCond %{ENV:GEOIP_COUNTRY_CODE_V6} !^(CZ|SK|DE)$
CMS Joomla
Do adresáře /administrator stačí vložit soubor .htaccess s následujícím kódem:<IfModule mod_geoip.c>
RewriteEngine on
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^(CZ|SK)$
RewriteCond %{ENV:GEOIP_COUNTRY_CODE_V6} !^(CZ|SK)$
RewriteRule ^(.*)$ - [F,L]
</IfModule>
Oficiální dokumentace modulu GeoIP je k dispozici na webových stránkách MaxMind: http://dev.maxmind.com/geoip/legacy/mod_geoip2/