แแแ แแแแฃแแ แฅแแแงแแแแแแแ แขแ แแคแแแแก แแแแแแแแแก แแแแชแแแ แแแ แขแแแ แฉแแแก, แแแแ แแ แแแ แแแแ แจแแแแแญแแแแแแ แจแแแซแแแแ แแงแแก แแแขแงแฃแแแฃแแ. แแฆแแก แฉแแแ แแแขแงแแแ, แแฃ แ แแแแ แจแแแซแแแแ แแก แแแแฎแแ แชแแแแแแก.
แฌแแแแแกแขแแ แแ
แแ แแแแแแ แแฃแแแแก แซแแแแแก แจแแแแแแแ แแฃแแแแกแแฌแงแแแขแแ: แแแแแฌแงแแแขแแแแแแแแก แฃแแแขแแกแแแ แแแแ แฎแแแแ โแแแแแแแแโ แแ แฎแแแแแฎแแ แฉแแแก, แ แแ แแก แแแแ แแแ แแแแ แแ แกแแแฃแแแแแ แแแแแฌแงแแแฃแแแ. แฉแแแ แแแแแแ แแ แแแแ แ แซแแแแ แฉแแแแฌแแ แ แแ แแแแ แแแ แ แแแแฃแแแแ แแ แแแกแขแ แฃแฅแชแแแแแก แแแแแแแแ แแแ แแแ แกแแ.
แฉแแแ แแแ แฉแแแ, แ แแ แฌแแแแแแฎแแ แแแแแ แกแขแแขแแ แแ แแ แซแแแแแแแแก แจแแกแ แฃแแแแแแแ.
แแแแ แแชแแฃแแ แกแแกแขแแแแก แแแแแแแแแ
แคแแแขแ แแชแแแก แแแแคแแแฃแ แแชแแ แแแฎแแแแ แฃแขแแแแขแแก แแแแแงแแแแแแ iptables, แ แแแแแแช แแแแแฎแแแก แแแคแแ แแแแแแก GeoIP แแแแแชแแแแแแแ แแฃแจแแแแแกแแแแก. แแก แแแคแแ แแแแแ แจแแแแซแแแแ แแฎแแแแ แแฅ
แฌแแ แแก แแ แแก, xtables-addons-แแก แแแแแแแแแแแ แแแ แกแแ แแ แแก 3.9. แแฃแแชแ, แแฎแแแแ 20.04 แจแแแซแแแแ แแแแซแแแแแก แกแขแแแแแ แขแฃแ Ubuntu 3.8 LTS แกแแชแแแแแจแ แแ 18.04 Ubuntu 3.0 แกแแชแแแแแจแ. แจแแแแซแแแแ แแแแแแกแขแแแแ แแ แแแคแแ แแแแแ แแแแแขแแก แแแแแฏแแ แแแแ แจแแแแแแ แแ แซแแแแแแ:
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 แจแแแชแแแก แแแแ แแแคแแ แแแแแแก, แแแแ แแ แฉแแแ แแฎแแแแ แแแแแแขแแ แแกแแแก xt_geoip. แแฃ แแ แแกแฃแ แ แกแแกแขแแแแจแ แแแแแแขแ แแแคแแ แแแแแแแแก แแแแแขแแแ, แจแแแแซแแแแ แแแแแ แแชแฎแแ แแกแแแ แแแแกแขแ แฃแฅแชแแแแแ. แแแแกแแแแแก แกแแญแแ แแ แคแแแแแก แ แแแแฅแขแแ แแแ mconfig. แงแแแแ แกแแกแฃแ แแแแ แแแแฃแแแกแแแแก แแแแแแกแขแแแแ แแ yแแ แแแแแจแแแ แงแแแแ แแ แแกแแญแแ แ n. แฉแแแ แแแแ แแแแแ:
./autogen.sh
./configure
make
แแ แแแแแแกแขแแแแ แแ แกแฃแแแ แแแแฎแแแ แแแแแก แฃแคแแแแแแแ:
make install
แแแ แแแแก แแแแฃแแแแแก แแแงแแแแแแกแแก แจแแแซแแแแ แแแฎแแแก แจแแแแแแ แจแแชแแแแ:
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
แแก แกแแขแฃแแชแแ แฌแแ แแแแฅแแแแแ แแแ แแแแก แแแแฃแแแแแก แฎแแแแแฌแแ แแก แจแแฃแซแแแแแแแแก แแแแ, แ แแแแแ แแ แแคแแ แ แแแแฌแแ แก แฎแแแก. แแ แแ แแแแแแแก แแแแแแ แแแ แจแแแแซแแแแ แ แแแแแแแแ แแ แซแแแแแแ:
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
แจแแแแแแแแ แแแ แแแแก แแแแฃแแ แแแแแกแขแแแแ แแแฃแแแ, แแแแ แแ แกแแกแขแแแ แแแก แแแ แแฆแแแแฉแแแก. แแแแแ แแแฎแแแแ แกแแกแขแแแแก แจแแฅแแแแก แแแแแแแแแแฃแแแแแก แ แฃแแ แแฎแแแ แแแแฃแแแก แแแแแแแแกแฌแแแแแแ แแ แจแแแแแ แฉแแขแแแ แแแก แแแ:
depmod -a
modprobe xt_geoip
แแแแแ แแแแ แฌแแฃแแแแ, แ แแ xt_geoip แแแขแแแ แแฃแแแ แกแแกแขแแแแจแ:
# lsmod | grep xt_geoip
xt_geoip 16384 0
x_tables 40960 2 xt_geoip,ip_tables
แแแ แแ แแแแกแ, แแแ แฌแแฃแแแแ, แ แแ แแแคแแ แแแแแ แฉแแขแแแ แแฃแแแ iptables-แจแ:
# cat /proc/net/ip_tables_matches
geoip
icmp
แฉแแแ แแแแงแแคแแแ แแแ แ แงแแแแแคแ แแ แแ แ แฉแแแ แแฎแแแแ แแแแฃแแแก แกแแฎแแแแก แแแแแขแแแ / etc / แแแแฃแแแแแ แแแ แแแแฃแแ แแฃแจแแแแแแก OS-แแก แแแแแขแแแ แแแแก แจแแแแแ. แแแแแ แแแแ, iptables-แก แแกแแแก geoip แแ แซแแแแแแแ, แแแแ แแ แแแก แแ แแฅแแก แกแแแแแ แแกแ แแแแแชแแแแแ แกแแแฃแจแแแ. แแแแแฌแงแแ geoip แแแแแชแแแแ แแแแแก แฉแแขแแแ แแแ.
GeoIP แแแแแชแแแแ แแแแแก แแแฆแแแ
แฉแแแ แแฅแแแแ แแแ แแฅแขแแ แแแก, แ แแแแแจแแช แจแแแแแฎแแแ iptables แแแคแแ แแแแแแกแแแแก แแแกแแแแแ แแแคแแ แแแชแแ:
mkdir /usr/share/xt_geoip
แกแขแแขแแแก แแแกแแฌแงแแกแจแ แแฆแแแแจแแแ, แ แแ แแ แกแแแแแก แแแแกแฎแแแแแแแแ แแแ แกแแแก แกแแฌแงแแกแ แแแแแแแ แแ แแแแแขแแก แแแแแฏแแ แแก แแแ แกแแแก แจแแ แแก. แงแแแแแแ แจแแกแแแฉแแแแ แแแแกแฎแแแแแแ แแ แแก แแแแแชแแแแ แแแแแก แแแแงแแแแแแแกแ แแ แกแแ แแแขแแก แชแแแแแแแ xt_geoip_dl, แ แแแแแแช แฉแแแแขแแแ แแแแก แฃแแฎแแแก แแแแแชแแแแแก.
แแแแแขแแก แแแแแฏแแ แแก แแแ แกแแ
แกแแ แแแขแ แแแแแแ แแแแก แแแแแแแ /usr/lib/xtables-addons, แแแแ แแ แ แแชแ แชแแแแแแ แแแก แแแจแแแแแก, แแแฎแแแ แแ แช แแฃ แแกแ แแแคแแ แแแชแแฃแ แจแแชแแแแแก:
# ./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, แแแชแแแแแ แแแฃแแ แแงแ, แแแแแแงแแแแแแแ แ แแแแ แช แแแแแชแแแแ แแแแ.
แแแ แแแ แ แแแจแ, 2018 แฌแแแก แแแแแแ แจแ
แแแแ แแช, 2019 แฌแแแก แแแแแแแ แแแแ MaxMind
แแแแแแแแ แแแกแฃแ แก แแแแ แแ แแแฃแฅแขแแก แแแแแงแแแแแ, แฉแแแ แแแแ แแแแกแขแ แแ แแแแแ แแ แแแแ แแแ.
แแแแก แจแแแแแ แแฅแแแ แแแแฆแแแ แแ.แฌแแ แแแก, แ แแแแแแช แแแแแฎแแแ แแแ แแแแก แแแงแแแแแแก. แแฎแแ, แ แแแแกแแช แฉแแแ แจแแแฅแแแแแ แแแแแ แแจแ, แฉแแแ แฃแแแ แจแแแฅแแแแ แแแชแแแแแแก แแแกแแฆแแแ. แแฅแแแแก แแแ แแ แแแแแ แแจแจแ แฉแแแ แแแแฃแแแแ แแแแแก แฉแแแ แกแแแแชแแแแแ แแแแแแจแแแ, แแ แจแแแแแ แแแแญแแ แแ แฆแแแแแก แแฎแแแ แแแชแแแแแแก แแแกแแฆแแแแก แแแแแ แแ แแแ.
แแแกแแฆแแแแก แจแแฅแแแแกแแก แแแแแกแแแแแ แแฎแแแแ แแ แ แแแแฎแแแก: แแแแแแแงแแแแแ แแฃ แแ แ แแ แแแกแแฆแแแก GeoIP Update แแ แแแ แแแแจแ? แแแแกแฃแฎแแแ แฃแแ แงแแคแแแแ แแ แแแญแแ แ แฆแแแแแก แแแแแแกแขแฃแ แแ. แแแกแแฆแแแ แแแแแฉแแแแแ pop-up แคแแแฏแแ แแจแ. แจแแแแแฎแแ แแก แแแกแแฆแแแ แฃแกแแคแ แแฎแ แแแแแแแก, แ แแแแแ แแแแแฎแขแแ แ แคแแแฏแ แแก แแแฎแฃแ แแแก แจแแแแแ แแแฆแแ แจแแซแแแแ แแแแแ แแแแแแจแแก แแแฎแแแก.
แฉแแแ แแแแฅแแก GeoLite2 แแแแแชแแแแ แแแแแแแก แฎแแแแ แฉแแแแขแแแ แแแแก แจแแกแแซแแแแแแแ, แแแแ แแ แแแแ แคแแ แแแขแ แแ แแ แแก แแแแกแแแแแ xt_geoip_build แกแแ แแแขแแก แแแแ แแแกแแแแแแแ แคแแ แแแขแแแ. แกแฌแแ แแ แแฅ แแแแแก GeoLite2xtables แกแแ แแแขแแแ แกแแแแจแแแแแจแ. แกแแ แแแขแแแแก แแแกแแจแแแแแ แแแแแแกแขแแแแ แแ NetAddr::IP perl แแแแฃแแ:
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
แจแแแแแแ, แฉแแแ แแแแแแ แแแ แกแแชแแแก แกแแ แแแขแแแแ แแ แแฌแแ แ แแแ แ แแแฆแแแฃแ แกแแแแชแแแแแ แแแกแแฆแแแก แคแแแแจแ:
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-แจแ.
แแ แแแแแแแแแแ แคแแแแ แจแแแชแแแก แแฅแแก แกแแแขแก:
- แแแกแแแแ แแแก แแแแแแแแแแก แแแฌแงแแแ (แกแขแ แแฅแแแแก แฌแแ แแแแแแแ);
- แแแกแแแแ แแแแแก แแแแแแแแแแก แแแกแแกแ แฃแแ (แกแขแ แแฅแแแแก แฌแแ แแแแแแแ);
- แแแกแแแแ แแแก แแแแแแแแแแก แแแกแแฌแงแแกแ (แ แแชแฎแแแ แแแ แฌแแ แแแแแแแ);
- แแแกแแแแ แแแก แแแแแแแแแแก แแแกแแกแ แฃแแ (แ แแชแฎแแแ แแแ แฌแแ แแแแแแแ);
- แฅแแแงแแแก แแแแ;
- แฅแแแงแแแก แกแแฎแแแ.
แแก แจแแฃแกแแแแแแแ แแ แแขแแแฃแแแ แแ แจแแแซแแแแ แแแแแกแฌแแ แแแก แแ แแแแ แแ แแ แแแแ:
- แ แแแแฅแขแแ แแแ 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
แแแแแแแแแกแฌแแแแ, แ แแ แแแขแแ แ
แฌแงแแ แ แแแ แกแแ
แฌแงแแ แแก แแแแแก แกแแ แแแขแแแแแแ แแแกแขแแแแชแแแกแแก xt_geoip_* แแแแแแแกแแแฃแแแ แแแขแแแแแจแ /usr/local/libexec/xtables-addons. แกแแ แแแขแแก แแก แแแ แกแแ แแงแแแแแก แแแแแชแแแแ แแแแแก
cd /usr/share/xt_geoip/
/usr/local/libexec/xtables-addons/xt_geoip_dl
/usr/local/libexec/xtables-addons/xt_geoip_build
แแ แแแแแฏแแแแก แจแแแแแ, iptables แแแแ แแ แแก แกแแแฃแจแแแ.
geoip-แแก แแแแแงแแแแแ iptables-แจแ
แแแแฃแแ 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.
iptable-แแแแกแแแแก แฌแแกแแแแก แจแแฅแแแแก แแแแแแแแ, แแแแแแแ, แฃแชแแแแแ แ แฉแแแ. แแแแแขแแแแแ แแแแฃแแแแแก แแแกแแฆแแแแแแก แแแแแกแแงแแแแแแแ, แแฅแแแ แฃแแแ แแแฃแแแแแ แแแแฃแแแก แกแแฎแแแ -m แแแแแแ แแแแแแ. แแแแแแแแแ, แฌแแกแ, แ แแ แแแแแแแแก แจแแแแแแแแแ TCP แแแแจแแ แแแ 443 แแแ แขแแ แแ แแ แ แแจแจ-แแแ แงแแแแ แแแขแแ แคแแแกแแ:
iptables -I INPUT ! -i lo -p tcp --dport 443 -m geoip ! --src-cc US -j DROP
xt_geoip_build-แแก แแแแ แจแแฅแแแแแ แคแแแแแแ แแแแแแงแแแแแ แแฎแแแแ แฌแแกแแแแก แจแแฅแแแแกแแก, แแแแ แแ แแ แแ แแก แแแแแแแแกแฌแแแแแฃแแ แคแแแขแ แแชแแแกแแก. แแแ แแแแ, geoip แแแแแชแแแแ แแแแแก แกแฌแแ แแ แแแแแฎแแแแแกแแแแก, แฏแแ แฃแแแ แแแแแแฎแแแ iv* แคแแแแแแ, แจแแแแแ แแ แฎแแแแฎแแ แจแแฅแแแแ แงแแแแ แฌแแกแ, แ แแแแแแช แแงแแแแแก geoip-แก iptables-แจแ.
แแแกแแแแ
แฅแแแงแแแแแ แแแคแฃแซแแแแฃแแ แแแแแขแแแแก แแแคแแแขแแ แ แแ แแแ แแแแ แแแ แแแแฃแแฌแแแแ แแแแแฌแงแแแฃแแ แกแขแ แแขแแแแแ. แแแแก แแแฃแฎแแแแแแ, แแฃแจแแแแแแ แแ แแแ แแแฃแแ แแแกแขแ แฃแแแแขแแแ แแกแแแ แคแแแขแ แแชแแแกแแแแก แแ, แแแแแ, แแแแ แแฎแแแ แแแ แกแแ xt_geoip แแฎแแแ geoip แแแแแชแแแแ แแ แแแแแแแ แแ แแแแแฉแแแแแ แแแแแขแแก แแแแแฏแแ แแแจแ, แ แแช แแแแจแแแแแแแแแ แแแแแแ แขแแแแแก แกแแกแขแแแแก แแแแแแแกแขแ แแขแแ แแแแก แชแฎแแแ แแแแก.
แแแแแแแแฎแแแจแ แแแแแฌแแแแแแ แจแแฃแซแแแแ แแฎแแแแ แแแ แแแแกแขแ แแ แแแฃแ แแแแฎแแแ แแแแแแก.
แแแแกแแ แแแแแแแงแแแแแแแ แคแแแขแ แแชแแ แฅแแแงแแแแแก แแแฎแแแแแ?
-
59,1%แแแแฎ 13
-
40,9%No9
แฎแแ แแแกแชแ 22 แแแแฎแแแ แแแแแแ. 3 แแแแฎแแแ แแแแแแ แแแแ แจแแแแแแ.
แฌแงแแ แ: www.habr.com