برای بستن IP های یک کشور یا شهر خاص در سرور میتوانید از ماژول geoip برای وب سرور خود استفاده کنید. در این آموزش نحوه نصب mod_geoip روی آپاچی در cpanel را آموزش میدهیم.
ابتدا epel را نصب کنید.
1 |
yum install epel-release |
سپس ماژول های زیر را نصب کنید.
1 |
yum install GeoIP GeoIP-devel GeoIP-data zlib-devel |
در مسیر
1 |
/usr/share/GeoIP |
پکیج های زیر را دانلود و extract کنید.
1 2 3 4 |
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP2.dat.gz gunzip GeoIP.dat.gz wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity2.dat.gz gunzip GeoLiteCity.dat.gz |
اکنون موارد زیر را نصب کنید.
1 |
yum install httpd-devel apr-devel ea-apache24-devel.x86_64 ea-apache24-tools.x86_64 |
اکنون باید ماژول mod_geoip برای Apache کامپایل شود.
1 2 3 4 5 6 |
cd /usr/share/GeoIP wget https://github.com/maxmind/geoip-api-mod_geoip2/archive/1.2.10.tar.gz tar xvzf 1.2.10.tar.gz cd geoip-api-mod_geoip2-1.2.10/ sed s/remote_ip/client_ip/g -i mod_geoip.c apxs -i -a -L/usr/lib64 -I/usr/include -lGeoIP -c mod_geoip.c |
اکنون فایل mod_geoip.conf باز کنید.
1 |
nano /etc/apache2/conf.modules.d/mod_geoip.conf |
مقادیر زیر را در آن قرار دهید.
1 2 3 4 5 6 |
LoadModule geoip_module /usr/lib64/apache2/modules/mod_geoip.so <IfModule mod_geoip.c> GeoIPEnable On GeoIPDBFile /usr/share/GeoIP/GeoIP.dat Standard GeoIPDBFile /usr/share/GeoIP/GeoLiteCity.dat Standard </IfModule> |
در نهایت سرویس apache را restart کنید.
1 |
service httpd restart |
برای اطمینان از نصب دستور زیر را وارد کنید..
1 |
httpd -M | grep geoip |