á¡áá»áá¯á·áá±á¬ááá¯ááºáá¶áá»á¬ážá០áá¬ááºááŒá±á¬ááááºááá¯á·ááŸá¯áá»á¬ážááᯠáá¬ážáá®ážááŒááºážáá¯ááºáááºážááẠááá¯ážááŸááºážáá¯á¶áá±á«áºáá±á¬áºáááºáž áááá¡áááºá¡ááŒááºáá»á¬ážááᯠááŸáá·áºá
á¬ážááá¯ááºáááºá áá®áá±á· áá®áá¬ááᯠáááºááá¯á¡áá±á¬ááºá¡ááẠáá±á¬áºááá¯ááºáá²ááá¯áᬠááŒá±á¬ááŒáá±ážáá«áááºá
á á±á¬ááá¯áá»ážáá¬á
á€á¡ááŒá±á¬ááºážá¡áá¬á¡ááœáẠGoogle ááŸá¬ááœá±ááŸá¯áááááºáá»á¬ážááẠá
áááºáá»ááºá
áá¬áá±á¬ááºážáááº- ááŒá±ááŸááºážáá»ááºá¡áá»á¬ážá
á¯ááẠâáá¯ááºâ áá±áááºááŸá¬ ááŒá¬áá²á·ááŒá®ááŒá
áºááŒá®áž áá
áºáá«áá
áºáá¶ááœáẠá€á¡ááŒá±á¬ááºážá¡áá¬ááᯠáááºáá¬ážááŒá®áž áá¬áááá±á·áá»á±á¬á·ááœá¬ážáá¯á¶ááááºá áá»áœááºá¯ááºááá¯á·ááẠááŸááºáááºážáá±á¬ááºážáá»á¬ážá
áœá¬ááᯠááŒááºáááºážáá²á·ááŒá®áž ááœáŸááºááŒá¬ážáá»ááºá áá±ááºáá®áá¬ážááŸááºážááᯠáá»áŸáá±ááẠá¡ááá·áºááŒá
áºáá±áá«ááŒá®á
á€á¡áááá·áºáá»á¬ážááᯠááá¯ááºáá±á¬ááºáá® áá±á¬ááºážáá«ážáá áºáá¯áá¯á¶ážááᯠáááºááẠá¡ááŒá¶ááŒá¯á¡ááºáá«áááºá
áááºáááºááŸá¯á áá áºááŒááºáááºááŒááºážá
utility ááᯠá¡áá¯á¶ážááŒá¯á á
á
áºáá¯ááºááŒááºážááᯠá
á®á
ááºáá±ážáá«áááºá iptablesGeoIP áá±áá¬ááŸáá·áº á¡áá¯ááºáá¯ááºááẠááá¯ážáá»á²á·ááŸá¯áá
áºáᯠááá¯á¡ááºáááºá ဠextension ááᯠááœááºááœá±á·ááá¯ááºáááºá
á á¬áá±ážáá±á ááºááœáẠxtables-addons á áááºááŸááá¬ážááŸááºážááŸá¬ 3.9 ááŒá áºáááºá ááá¯á·áá±á¬áºá áá¯á¶ááŸáẠUbuntu 20.04 LTS repositories ááŸáá·áº Ubuntu 3.8 repositories áá»á¬ážááœáẠ18.04 ááá¯áᬠááœá±á·ááá¯ááºáááºá á¡á±á¬ááºáá« command ááŒáá·áº package manager á០extension ááᯠinstall áá¯ááºááá¯ááºáááºá
apt install xtables-addons-common libtext-csv-xs-perl
áá¬ážááŸááºáž 3.9 ááŸáá·áº ááá±á¬áá»ááºá áááºááŸáá¡ááŒá±á¡áá±ááŒá¬ážááœáẠáá±ážáááºáá±á¬áºáááºáž á¡áá±ážááŒá®ážáá±á¬ ááœá¬ááŒá¬ážáá»ááºáá»á¬ážááŸáááŒá±á¬ááºáž áááááŒá¯áá«á áááºážááᯠáá±á¬ááºá០ááœá±ážááœá±ážáá«áááºá á¡áááºážá¡ááŒá áºáá¯ááºá០áááºáá±á¬ááºáááºá¡ááœáẠááá¯á¡ááºáá±á¬ áááºáá±á·áá»áºáá»á¬ážá¡á¬ážáá¯á¶ážááᯠááá·áºááœááºážáá«-
apt install git build-essential autoconf make libtool iptables-dev libxtables-dev pkg-config libnet-cidr-lite-perl libtext-csv-xs-perl
ááá¯ááŸá±á¬ááºáááºážááᯠááœá¬ážáá«-
git clone https://git.code.sf.net/p/xtables-addons/xtables-addons xtables-addons-xtables-addons
cd xtables-addons-xtables-addons
xtables-addons ááœáẠextension á¡áá»á¬ážá¡ááŒá¬ážáá«ááŸááááºá ááá¯á·áá±á¬áºáá»áœááºá¯ááºááá¯á·áá¬á áááºáááºá á¬ážáá«áááºá xt_geoip. áááá¯á¡ááºáá±á¬ extension áá»á¬ážááᯠá áá áºáá²ááá¯á· áááœá²áá°ááá¯áá«áá áááºážááá¯á·ááᯠáááºáá±á¬ááºááŸá¯á០áááºáá¯ááºááá¯ááºáááºá áá®ááá¯áá¯ááºááá¯á·áááºááá¯ááºááá¯áááºážááŒááºááá¯á·ááá¯á¡ááºáá«áááºá mconfig. ááá¯áá»ááºáá±á¬ module áá»á¬ážá¡á¬ážáá¯á¶ážá¡ááœááºá install áá¯ááºáá«á yá áááá¯á¡ááºáá¬ááœá±á¡á¬ážáá¯á¶ážááᯠá¡ááŸááºá¡áá¬ážáá¯ááºáá«á n. áá»áœááºá¯ááºááá¯á·á á¯áá±á¬ááºážáááº-
./autogen.sh
./configure
make
á á°áá«á¡áá¯á¶ážááŒá¯áá°á¡ááœáá·áºá¡áá±ážáá»á¬ážááŒáá·áº ááá·áºááœááºážáá«-
make install
kernel modules áá»á¬áž áááºáááºá ááºááœááºá á¡á±á¬ááºáá«áá²á·ááá¯á· ááŸá¬ážááœááºážááŸá¯áá áºáᯠááŒá áºáá±á«áºááá¯ááºáááº-
INSTALL /root/xtables-addons-xtables-addons/extensions/xt_geoip.ko
At main.c:160:
- SSL error:02001002:system library:fopen:No such file or directory: ../crypto/bio/bss_file.c:72
- SSL error:2006D080:BIO routines:BIO_new_file:no such file: ../crypto/bio/bss_file.c:79
sign-file: certs/signing_key.pem: No such file or directory
á¡áááºááŒá±á¬áá·áºááá¯áá±á¬áº Kernel modules áá»á¬ážááᯠáááºááŸááºááá¯ážááẠáááŒá áºááá¯ááºáá±á¬ááŒá±á¬áá·áº á€á¡ááŒá±á¡áá± ááŒá áºáá±á«áºáá¬áá«áááºá áááºááŸááºááá¯ážá áᬠáá¬ááŸáááŸáá áááºááẠá€ááŒá¿áá¬ááᯠcommand ááŸá áºáá¯ááŒáá·áº ááŒá±ááŸááºážááá¯ááºáááº-
cd /lib/modules/(uname -r)/build/certs
cat <<EOF > x509.genkey
[ req ]
default_bits = 4096
distinguished_name = req_distinguished_name
prompt = no
string_mask = utf8only
x509_extensions = myexts
[ req_distinguished_name ]
CN = Modules
[ myexts ]
basicConstraints=critical,CA:FALSE
keyUsage=digitalSignature
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid
EOF
openssl req -new -nodes -utf8 -sha512 -days 36500 -batch -x509 -config x509.genkey -outform DER -out signing_key.x509 -keyout signing_key.pem
á á¯á ááºážáá¬ážáá±á¬ kernel module ááᯠááá·áºááœááºážáá¬ážáá±á¬áºáááºáž á áá áºá áááºážááᯠáááœá±á·áá«á áá±á¬áºáá»á°ážá¡áá áºááᯠááá·áºááœááºážá ááºážá á¬ážááŒá®áž ááŸá®ááá¯ááŒá±áá¯á¶áááºáá®ážááẠá áá áºá¡á¬áž áá±á¬ááºážááá¯ááŒáá«á áá¯á·á
depmod -a
modprobe xt_geoip
xt_geoip ááᯠá áá áºáá²ááá¯á· ááá·áºááœááºážááŒá±á¬ááºáž áá±áá»á¬á á±ááŒáá«á áá¯á·á
# lsmod | grep xt_geoip
xt_geoip 16384 0
x_tables 40960 2 xt_geoip,ip_tables
ááá¯á·á¡ááŒááºá extension ááᯠiptables áá»á¬ážááœáẠáááºáá¬ážááŒá±á¬ááºáž áá±áá»á¬áá«á á±á
# cat /proc/net/ip_tables_matches
geoip
icmp
áá»áœááºá¯ááºááá¯á·ááẠá¡áá¬á¡á¬ážáá¯á¶ážá¡ááœáẠáá»á±á¬áºááœáŸááºáá±ááŒá®áž áá»ááºá¡áá¬á¡á¬ážáá¯á¶ážááŸá¬ module name ááá¯ááá·áºáááºááŒá áºáááºá / etc / module ááœá±áá«á០OS ááᯠreboot áá¯ááºááŒá®ážáá±á¬áẠmodule áá¡áá¯ááºáá¯ááºáá«áááºá ááá¯á¡áá»áááºááŸá á iptables áá»á¬ážááẠgeoip command áá»á¬ážááᯠáá¬ážáááºáá±á¬áºáááºáž áááºážááœáẠá¡áá¯ááºáá¯ááºááẠáá¯á¶áá±á¬ááºáá±á¬áá±áá¬áááŸááá«á Geoip áá±áá¬áá±á·á áºááᯠá ááœáá·áºááŒáá«á áá¯á·á
GeoIP áá±áá¬áá±á·á áºááá°ááŒááºážá
iptables extension á០áá¬ážáááºááá¯ááºáá±á¬ á¡áá»ááºá¡áááºáá»á¬ážááᯠááááºážáááºážááá·áº áááºážááœáŸááºáá áºáá¯á¡á¬áž áá»áœááºá¯ááºááá¯á· áááºáá®ážáááº-
mkdir /usr/share/xt_geoip
áá±á¬ááºážáá«ážá¡á ááœááºá á¡áááºážá¡ááŒá áºáá¯ááºááŸáá¬ážááŸááºážááŸáá·áº áááºáá±á·áá»áºáááºáá±áá»á¬á០áá¬ážááŸááºážá¡ááŒá¬áž ááœá²ááŒá¬ážááŸá¯áá»á¬ážááŸáááŒá±á¬ááºáž áá»áœááºá¯ááºááá¯á·áá±á¬áºááŒáá²á·áááºá áááá¬áááºááŸá¬ážáá±á¬ ááœá¬ááŒá¬ážáá»ááºááŸá¬ áá±áá¬áá±á·á áºáá±á¬ááºážáá»áá°ááŸáá·áº script á¡ááŒá±á¬ááºážá¡áá²ááŒá áºáááºá xt_geoip_dláá±á¬ááºáá¯á¶ážáá±áá¬ááᯠáá±á«ááºážáá¯ááºáá¯ááºáááºá
Package Manager áá¬ážááŸááºáž
script ááẠ/usr/lib/xtables-addons áááºážááŒá±á¬ááºážááœáẠáááºááŸááá±á¬áºáááºáž áááºážááᯠrun áááºááŒáá¯ážá á¬ážáá±á¬á¡áá«ááœáẠá¡ááœááºááááŸáááá¯ááºáá±á¬ á¡ááŸá¬ážá¡ááœááºážááᯠááœá±á·ááááá·áºáááº-
# ./xt_geoip_dl
unzip: cannot find or open GeoLite2-Country-CSV.zip, GeoLite2-Country-CSV.zip.zip or GeoLite2-Country-CSV.zip.ZIP.
ááááºáá GeoLite áá¯ááºáá¯ááºááᯠááᯠGeoLite Legacy áá¯áá°áááá»á¬ážááŒá®áž ááá¯ááºá
ááºá¡á±á¬ááºááœáẠááŒáá·áºáá±áá¬ážáá±á¬ áá±áá¬áá±á·á
áºá¡ááŒá
Ạá¡áá¯á¶ážááŒá¯áá²á·áááºá
áááá áááºááá«áá® áááá
áá¯áááá¡áá»ááºááŸá¬ 2019 áá¯ááŸá
Ạáá®áááºáá¬áááááºážá MaxMind
áá»áœááºá¯ááºááá¯á·ááẠáááºážááá¯á·ááá¯ááºáá¯ááºááᯠá¡áá¯á¶ážááŒá¯ááá¯áá±á¬ááŒá±á¬áá·áº á€á á¬áá»ááºááŸá¬ááœáẠá á¬áááºážááœááºážáá«áááºá
ááá¯á·áá±á¬áẠá
áá¬ážááŸááºáááºááŸááºááẠáá±á¬ááºážááá¯áá±á¬ á¡á®ážáá±ážááºáá
áºá
á±á¬ááºááᯠáááºáá¶áááŸááááºááŒá
áºáááºá ááá¯áá»áœááºá¯ááºááá¯á·ááẠá¡áá±á¬áá·áºáá
áºáá¯áááºáá®ážááŒá®ážááŒá
áºá ááá¯ááºá
ááºáá®ážáá
áºáá¯áááºáá®ážááẠááá¯á¡ááºáá«áááºá ááá·áºááá¯ááºáá±ážááá¯ááºáá¬á¡áá±á¬áá·áºááœáẠáá»áœááºá¯ááºááá¯á·ááẠá€á¡áá¬ááá¯ááœá±á·áááºá áá»áœááºá¯ááºáááá¯ááºá
ááºáá®ážáá»á¬ážááá¯á·áá±á¬áẠááá¯ááºááá¯ááŸáááºáá«á ááá¯ááºá
ááºáá®ážá¡áá
áºááᯠáááºáá®ážáá«á.
áá±á¬á·ááá¯áááºáá®ážáá±á¬á¡áá«á áá»áœááºá¯ááºááá¯á·ááẠáá±ážááœááºážáá áºáá¯áá¬áá±ážáá«áááº- GeoIP á¡ááºááááºáááá¯ááááºááœáẠá€áá±á¬á·ááᯠá¡áá¯á¶ážááŒá¯áááºáá¬ážá áá»áœááºá¯ááºááá¯á·ááẠá¡ááá¯ážááŒááºá áœá¬ááŒá±ááá¯ááŒá®áž ááá¯ááºááᯠááŸáááºáá«á á¡áááºááŒá¯. áá±á¬á·ááᯠáá±á«á·ááºá¡ááºáááºážááá¯ážááœáẠááŒááá«áááºá áá±á«á·ááºá¡ááºáááºážááá¯ážááᯠááááºááá¯ááºáááºááŸáá·áºá¡áá»áŸ á€áá®ážááᯠáá¯á¶ááŒá¯á¶áá±á¬áá±áá¬ááœáẠááááºážáááºážáá¬ážáá«á áá±á¬á·áá áºáá¯áá¯á¶ážááᯠáááºááŒáá·áºááŸá¯ááá¯ááºáá±á¬á·áááºááá¯ááºáá«á
áá»áœááºá¯ááºááá¯á·ááœáẠGeoLite2 áá±áá¬áá±á·á
áºáá»á¬ážááᯠááá¯ááºááá¯ááºáá±á«ááºážáá¯ááºáá¯ááºááá¯ááºáá±á¬áºáááºáž áááºážááá¯á·ááá±á¬áºáááºááẠxt_geoip_build script ááŸáá»áŸá±á¬áºááá·áºáá¬ážááá·áºáá±á¬áºáááºááŸáá·áº áááá¯ááºáá®áá«á GeoLite2xtables script áá»á¬ážááᯠáááºáááºáá¬áá±áá¬ááŒá
áºáááºá script áá»á¬ážááᯠrun ááẠNetAddr::IP perl module ááᯠááá·áºááœááºážáá«-
wget https://cpan.metacpan.org/authors/id/M/MI/MIKER/NetAddr-IP-4.079.tar.gz
tar xvf NetAddr-IP-4.079.tar.gz
cd NetAddr-IP-4.079
perl Makefile.PL
make
make install
ááá¯á·áá±á¬ááºá áá»áœááºá¯ááºááá¯á·ááẠrepository ááᯠscripts áá»á¬ážááŒáá·áºáá¯á¶áá°ááœá¬ážááŒá®áž ááááºááááŸááá¬ážáá±á¬ááá¯ááºá ááºáá®ážááᯠááá¯ááºáá áºáá¯ááá¯á·áá±ážáá«-
git clone https://github.com/mschmitt/GeoLite2xtables.git
cd GeoLite2xtables
echo YOUR_LICENSE_KEY=â123ertyui123' > geolite2.license
áá¬ááºááœáŸááºážáá»á¬ážááᯠáá¯ááºáá±á¬ááºááŒáá«á áá¯á·á
# СкаÑОваеЌ ЎаММÑе GeoLite2
./00_download_geolite2
# СкаÑОваеЌ ОМÑПÑЌаÑÐžÑ ÐŸ ÑÑÑаМаÑ
(ÐŽÐ»Ñ ÑППÑвеÑÑÑÐ²ÐžÑ ÐºÐŸÐŽÑ)
./10_download_countryinfo
# ÐПМвеÑÑОÑÑеЌ GeoLite2 Ð±Ð°Ð·Ñ Ð² ÑПÑÐŒÐ°Ñ GeoLite Legacy
cat /tmp/GeoLite2-Country-Blocks-IPv{4,6}.csv |
./20_convert_geolite2 /tmp/CountryInfo.txt > /usr/share/xt_geoip/dbip-country-lite.csv
MaxMind ááẠáá áºáááºáá»áŸáẠáá±á«ááºážáá¯áẠ2000 ááᯠááá·áºáááºáá¬ážááŒá®áž áá¬áá¬á¡áá»á¬ážá¡ááŒá¬ážááŒáá·áº á¡ááºááááºááᯠááá±á¬ááºá á®áá¬áá¬ááœáẠááááºážáááºážááẠáááºážááŸááºážáá¬ážáááºá
á¡ááœááºááá¯ááºááᯠáá±á«áºááááºááᯠáááááŒá¯áá«á dbip-country-lite.csv... áá¶ááá±á¬ááºážá áœá¬áá² 20_convert_geolite2 ááŒá®ážááŒáá·áºá á¯á¶áá±á¬ááá¯ááºááᯠááá¯ááºáá±ážáá«á áá¬ááºááœáŸááºáž xt_geoip_build áá±á¬áºáá¶áá¯á¶ážáá¯ááᯠáá»áŸá±á¬áºááá·áºáááº-
- ááááºá á¬á¡ááá¯ááºážá¡ááŒá¬ážáá¡á ;
- ááááºá á¬á¡ááá¯ááºážá¡ááŒá¬ážáá¡áá¯á¶áž;
- iso-3166-alpha2 ááœáẠááá¯ááºáá¶áá¯ááºá
ááŸáá·áº output ááá¯ááºááœáẠáá±á¬áºáá¶ááŒá±á¬ááºáá¯áá«ááŸááááºá
- ááááºá á¬á¡ááœá¬á¡áá±ážáá¡á (string ááá¯ááá¯ááºá á¬ážááŒá¯ááŸá¯);
- ááááºá á¬á¡ááá¯ááºážá¡ááŒá¬ážáá¡áá¯á¶áž (á á¬ááŒá±á¬ááºážááá¯ááºá á¬ážááŒá¯ááŸá¯);
- ááááºá á¬á¡ááá¯ááºážá¡á (ááááºážááá¯ááºá á¬ážááŒá¯ááŸá¯);
- ááááºá á¬á¡ááá¯ááºážá¡ááŒá¬ážáá¡áá¯á¶áž (ááááºážááá¯ááºá á¬ážááŒá¯ááŸá¯);
- ááá¯ááºážááŒááºááá¯ááº;
- ááá¯ááºáá¶á¡áááºá
á€ááœá¬ááá»ááºááẠá¡áá±ážááŒá®ážááŒá®áž áááºážáááºážááŸá áºáá¯á០áá áºáá»ááºáááºážááŒáá·áº ááŒááºááá¯ááºáááºá
- á¡á¯ááºáá»á¯áẠ20_convert_geolite2;
- á¡á¯ááºáá»á¯áẠxt_geoip_build.
áááááá
á¹á
ááŸá¬ áá»áœááºáá±á¬áºááá¯á· áá»áŸá±á¬á·áááºá
/usr/lib/xtables-addons/xt_geoip_build -S /usr/share/xt_geoip/ -D /usr/share/xt_geoip
. . .
2239 IPv4 ranges for ZA
348 IPv6 ranges for ZA
56 IPv4 ranges for ZM
12 IPv6 ranges for ZM
56 IPv4 ranges for ZW
15 IPv6 ranges for ZW
á
á¬áá±ážáá°áááááŒá¯áá«á
á¡áááºážá¡ááŒá áºáá¬ážááŸááºáž
source code scripts áá»á¬ážá០install áá¯ááºáá±á¬á¡áá« xt_geoip_* catalog ááœááºáááºááŸááááºá /usr/local/libexec/xtables-addons. ဠscript áá¬ážááŸááºážááẠáá±áá¬áá±á·á
áºááᯠá¡áá¯á¶ážááŒá¯áááºá
cd /usr/share/xt_geoip/
/usr/local/libexec/xtables-addons/xt_geoip_dl
/usr/local/libexec/xtables-addons/xt_geoip_build
á€á¡ááá·áºáá»á¬ážááŒá®ážáá«á iptables ááẠá¡áá¯ááºáá¯ááºááẠá¡ááá·áºááŒá áºáá«ááŒá®á
iptables ááœáẠgeoip ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážá
á¡ááá¯ááºáž xt_geoip áá±á¬á·ááŸá áºáá¯áᬠááá·áºáááº-
geoip match options:
[!] --src-cc, --source-country country[,country...]
Match packet coming from (one of) the specified country(ies)
[!] --dst-cc, --destination-country country[,country...]
Match packet going to (one of) the specified country(ies)
NOTE: The country is inputed by its ISO3166 code.
iptables á¡ááœáẠá ááºážáá»ááºážáá»á¬áž áááºáá®ážááŒááºážáááºážáááºážáá»á¬ážááẠáá±áá¯áá»á¡á¬ážááŒáá·áº áááŒá±á¬ááºážáá²áá«á áá±á¬ááºááẠáá±á¬áºáá»á°ážáá»á¬ážá០áá±á¬á·áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áááºá áááºááẠ-m ááá¯ááºááŒáá·áº áá±á¬áºáá»á°ážá¡áááºááᯠááŒááºáá¬ážá áœá¬ áááºááŸááºááá«áááºá á¥ááá¬á¡á¬ážááŒáá·áºá á¡ááºáá¬áá±á·á áºá¡á¬ážáá¯á¶ážááœáẠUSA ááŸááá¯áẠport 443 ááœááºáááºáá¬áá±á¬ TCP áá»áááºáááºááŸá¯áá»á¬ážááá¯ááááºááá¯á·áááºá ááºážáá»ááºážáá áºáá¯á
iptables -I INPUT ! -i lo -p tcp --dport 443 -m geoip ! --src-cc US -j DROP
xt_geoip_build á០áááºáá®ážáá¬ážáá±á¬ ááá¯ááºáá»á¬ážááᯠá ááºážáá»ááºážáá»á¬áž áááºáá®ážááá·áºá¡áá«ááœááºáᬠá¡áá¯á¶ážááŒá¯áá±á¬áºáááºáž á á áºáá¯ááºááá·áºá¡áá« ááá·áºááœááºážá ááºážá á¬ážáááºááá¯ááºáá«á ááá¯á·ááŒá±á¬áá·áºá geoip áá±áá¬áá±á·á áºááᯠááŸááºáááºá áœá¬ á¡ááºááááºáá¯ááºáááºá áááºááẠiv* ááá¯ááºáá»á¬ážááᯠáŠážá áœá¬ á¡ááºááááºáá¯ááºááááºááŒá áºááŒá®ážá ááá¯á·áá±á¬áẠiptables ááœáẠgeoip áá¯á¶ážááá·áº á ááºážáá»ááºážá¡á¬ážáá¯á¶ážááᯠááŒááºáááºáááºáá®ážááá«áááºá
áá±á¬ááºáá»ááº
ááá¯ááºáá¶áá»á¬ážááá¯á¡ááŒá±áá¶á áá¯ááºááá¯ážááŸá¯áá»á¬ážááᯠá á áºáá¯ááºááŒááºážááẠá¡áá»áááºá¡á¬ážááŒáá·áºá¡áááºáááºáá±á·áá»á±á¬á·ááœá¬ážááá·áºáá»á°áá¬áá áºáá¯ááŒá áºáááºá ááá¯ááá¯á·ááŒá áºááá·áºáá á¬ážá ááá¯ááá¯á·áá±á¬á á áºáá¯ááºááŒááºážá¡ááœáẠáá±á¬á·ááºáá²ááºáááááá¬áá»á¬ážááᯠáá®ááœááºáá»ááºááŸáááŒá®áž áááŒá¬áá® geoip áá±áá¬áááºáá±á¬ááºááŸá¯áá±ážáá°á¡áá áºááŸáá·áºá¡áá° xt_geoip áá¬ážááŸááºážá¡áá áºááẠáááºáá±á·áá»áºáááºáá±áá»á¬áá»á¬ážááœáẠáá±á«áºáá¬áááºááŒá áºááŒá®ážá á áá áºá á®áá¶ááá·áºááœá²áá°áá»á¬ážáááááᯠáá»á¬ážá áœá¬ááá¯ážááŸááºážá á±áááºááŒá áºáááºá
á
á¬áááºážááœááºážá¡áá¯á¶ážááŒá¯áá°áá»á¬ážáᬠá
á
áºáááºážááœáẠáá«áááºááá¯ááºáá«áááºá
ááá¯ááºáá¶á¡ááá¯áẠá á áºáá¯ááºááŒááºážááᯠáááºá¡áá¯á¶ážááŒá¯áá°ážáá«ááá¬ážá
-
59,1%áá¯ááºáááº13
-
40,9%áá¶áá«áẠááá
á¡áá¯á¶ážááŒá¯áá° 22 áŠáž áá²áá±ážáá²á·áááºá á¡áá¯á¶ážááŒá¯áá° á áŠáž ááŸá±á¬ááºáá±áá²á·áá«áááºá
source: www.habr.com