Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
netadmin:blocage_adresses_ip [2021/09/02 22:04] – yoann | netadmin:blocage_adresses_ip [2024/06/08 12:18] (Version actuelle) – yoann | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
{{tag> | {{tag> | ||
- | ====== | + | : |
+ | |||
+ | < | ||
+ | Sur les distributions récentes, **nftables** remplace **iptables**. Voir la note [[netadmin/ | ||
+ | </ | ||
+ | |||
+ | ====== | ||
Il est parfois nécessaire de bloquer des adresses IP avec lesquelles le système Linux communique par défaut: on peut vouloir bannir certains hôtes ayant tenté des attaques contre le système par exemple. | Il est parfois nécessaire de bloquer des adresses IP avec lesquelles le système Linux communique par défaut: on peut vouloir bannir certains hôtes ayant tenté des attaques contre le système par exemple. | ||
Ligne 26: | Ligne 32: | ||
sudo apt-get install ipset | sudo apt-get install ipset | ||
</ | </ | ||
+ | |||
+ | ===== Créer l' | ||
On commence par créer un nouvel ensemble, ici on le nomme " | On commence par créer un nouvel ensemble, ici on le nomme " | ||
Ligne 49: | Ligne 57: | ||
</ | </ | ||
- | Pour ajouter | + | Pour ajouter |
<code bash> | <code bash> | ||
Ligne 58: | Ligne 66: | ||
</ | </ | ||
- | Maintenant que l' | + | Pour supprimer un élément de l' |
+ | <code bash> | ||
+ | sudo ipset del set_banished_ip 93.186.198.153 | ||
+ | </ | ||
+ | |||
+ | ===== Créer le filtre netfilter ===== | ||
+ | |||
+ | Maintenant que l' | ||
<code bash> | <code bash> | ||
sudo iptables -I INPUT -m set --match-set set_banished_ip src -p tcp -j LOG --log-level info --log-prefix=" | sudo iptables -I INPUT -m set --match-set set_banished_ip src -p tcp -j LOG --log-level info --log-prefix=" | ||
sudo iptables -I INPUT 2 -m set --match-set set_banished_ip src -p tcp -j DROP | sudo iptables -I INPUT 2 -m set --match-set set_banished_ip src -p tcp -j DROP | ||
+ | </ | ||
+ | |||
+ | ==== Filtres avec Docker ==== | ||
+ | |||
+ | Si le serveur s' | ||
+ | |||
+ | <code bash> | ||
+ | sudo iptables -I DOCKER-USER -m set --match-set set_banished_ip src -p tcp -j LOG --log-level info --log-prefix=" | ||
+ | sudo iptables -I DOCKER-USER 2 -m set --match-set set_banished_ip src -p tcp -j DROP | ||
</ | </ | ||
===== Sauvegarde et restauration d'un ensemble ===== | ===== Sauvegarde et restauration d'un ensemble ===== | ||
+ | Il est possible d' | ||
+ | |||
+ | <code bash> | ||
+ | sudo ipset save set_banished_ip -f banished_ip.txt | ||
+ | </ | ||
+ | |||
+ | |||
+ | Pour supprimer un set existant: | ||
+ | <code bash> | ||
+ | sudo ipset destroy set_banished_ip | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | Un ensemble ne pourra pas être supprimé s'il est en cours d' | ||
+ | </ | ||
+ | |||
+ | Pour recréer un ensemble via le fichier d' | ||
+ | <code bash> | ||
+ | sudo ipset restore -f banished_ip.txt | ||
+ | </ | ||
===== Automatiser le bannissement ===== | ===== Automatiser le bannissement ===== |