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 ...
En cas de problème ou une fois le fonctionnement de la règle confirmé, on peut recharger le pare-feu, les modifications apportées précédemment seront effacées.
ufw reload
Pour rendre la règle permanente on modifie le fichier /etc/ufw/after.rules
# Journalise et autorise le traffic vers l'interface Web de gestion des MFC Canon -A ufw-after-output -m set --match-set canon_mfc dst -p tcp --dport 8000 -j ufw-logging-allow -m comment --comment "Allow Management Canon MFC" -A ufw-after-output -m set --match-set canon_mfc dst -p tcp --dport 8000 -j ACCEPT -m comment --comment "Allow Management Canon MFC"
On recharge les règles:
ufw reload
D'autres machines pourront ainsi être ajoutées à ce groupe sans qu'il soit nécessaire de créer une nouvelle règle ou de recharger les règles existantes.
# ajoute une nouvelle machine au groupe, la règle existante pourra s'appliquer
ipset add canon_mfc 192.168.0.42