Ceci est une ancienne révision du document !
La présentation détaillée des ipsets est proposée dans le wiki bloquer des adresses IP indésirables.
On cherche ici à créer une règle autorisant le trafic en sortie sur un port particulier (8000) vers un groupe d'adresses IP seulement.
# Création d'une groupe contenant au maximum 256 adresses sudo ipset create canon_mfc hash:ip maxelem 256 # ajout de quelques adresses dans le groupe sudo ipset add canon_mfc 192.168.0.10 sudo ipset add canon_mfc 192.168.0.20 sudo ipset add canon_mfc 192.168.0.33
Dans un premier temps on utilise le cli iptables, les changements seront ainsi réversibles en cas d'erreur en rechargeant simplement le pare-feu ufw
# journaliser le trafic sortant autorisé iptables -A ufw-after-output -m set --match-set canon_mfc dst -p tcp --dport 8000 -j ufw-logging-allow # autorise en sortie iptables -A ufw-after-output -m set --match-set canon_mfc dst -p tcp --dport 8000 -j ACCEPT
Vérifier la présence de la nouvelle règle dans la chaîne:
iptables -L ufw-after-output ... ufw-logging-allow tcp -- anywhere anywhere match-set canon_mfc dst tcp dpt:8000 ACCEPT tcp -- anywhere anywhere match-set canon_mfc dst tcp dpt:8000
Contacter l’hôte sur le port 8000 et vérifier les traces dans les journaux système:
journalctl -k --since "1 minutes ago" -- Logs begin at Wed 2021-06-16 14:39:52 CEST, end at Tue 2021-10-19 18:06:04 CEST. -- oct. 19 18:05:32 node-7c87 kernel: [UFW ALLOW] IN= OUT=enp0s31f6 SRC=192.168.0.1 DST=192.168.0.10 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=48686 DF PROTO=TCP SPT=38250 DPT=8000 WINDOW=64240 RES=0x00 SYN URGP=0 ...
# modification du groupe ipset add canon_mfc 192.168.0.218 # Le contact du nouvel hote échoue, les traces du journal système ne sont pas cohérents journalctl -k --since "1 minutes ago" -- Logs begin at Wed 2021-06-16 14:39:52 CEST, end at Tue 2021-10-19 18:15:34 CEST. -- oct. 19 18:15:26 node-7c87 kernel: [UFW ALLOW] IN= OUT=enp0s31f6 SRC=192.9.200.14 DST=192.9.200.218 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=291 DF PROTO=TCP SPT=60840 DPT=8000 WINDOW=64240 RES=0x00 SYN URGP=0