MODOP – Bloquer/Débloquer Subnet IPv4 d’un pays sur firewall

La liste des Subnet/Country

Dans notre exemple nous allons bannir l’ISLANDE d’accès sur un serveur VPS.

L’iso Code est : IS et ce pays possède 136 Subnet.

Pour la RUSSIE , l’ISO code est : ru ☺

Le but est donc d’ajouter au firewall les 136 block.

Script BASH

[root@vps-xxxxxxxx chris]# vi Bannir_country.sh
#!/bin/bash
PAYS_ISO=$1
echo "Ban IP of country $PAYS_ISO"
for IP in `wget -O - https://www.ipdeny.com/ipblocks/data/countries/"${PAYS_ISO[@]}".zone --no-check-certificate`
do
echo " Bloquer le range $IP"
firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='$IP' reject"
done
firewall-cmd --reload
[root@vps-xxxxxxxx chris]# chmod +x Bannir_country.sh

Le principe du script

[root@vps-xxxxxxxx chris]# ./Bannir_country.sh « ISO Country »

Je me connecte en VPN via l’ISLANDE pour accéder à mon serveur en France et se positionner comme un Islandais souhaitant se connecter sur le serveur Français.

Donc je suis en Islande et plus précisément à Keflavik.(Sans bouger de mon canapé ☺ )

Mon IP dans cette ville est « 45.133.192.108 »

Lancement du script boquant l’Islande sur le Serveur

[root@vps-xxxxxxxx chris]# ./Bannir_country.sh is

Check «Block » IP Islande (Côté serveur)

Mon IP de provenance est 45.133.192.108 vérifions que celle-ci est bien « Banni » par le Firewall.

[root@vps-xxxxxxxx chris]# firewall-cmd --list-rich-rules |grep 45.133

[root@vps-xxxxxxxx chris]# iptables -L > liste_firewall
[root@vps-xxxxxxxx chris]# cat liste_firewall |grep 45.133

Check «Block » IP Islande (Côté client en ISLANDE)

L’accès Apache au site Français via l’ISLANDE

Débloquer le pays récemment « REJECT »

Script BASH 

[root@vps-xxxxxxxx chris]# touch Accept_country.sh
[root@vps-xxxxxxxx chris]# vi Accept_country.sh
#!/bin/bash
PAYS_ISO=$1
echo "Ban IP of country $PAYS_ISO"
for IP in `wget -O - https://www.ipdeny.com/ipblocks/data/countries/"${PAYS_ISO[@]}".zone --no-check-certificate`
do
echo " Bloquer le range $IP"
firewall-cmd --permanent --remove-rich-rule="rule family='ipv4' source address='$IP' reject"
done
firewall-cmd --reload
[root@vps-xxxxxxxx chris]# chmod +x Accept_country.sh
[root@vps-xxxxxxxx chris]# ./Accept_country.sh is

Views: 33

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *