Cours : permettant de réaliser les TP virtual box 3 en particulier.
Iptables est un pare FEU (firewall) dans l'espace noyau (kernel) linux
Il permet avec des règles de paramétrer ce qu'il se passe sur le réseau.
Ce petit cours permet de comprendre les bases de cette fonction (iptables) et donne des applications de cet outils.
Seul root à le droit d'utiliser iptables.
fonctionne en IPV6 et IPV4 (ici nous allons traiter que IPV4)
installation sous ubuntu:
sudo apt update
sudo apt install iptables
Il est à noter que les règles disparaissent après un redémarrage du système.
Il faut faire un script qui se lancera au démarrage pour mettre en place les règles iptables.
A : append (ajouter une règle)
F: Flush (chasse d'eau)
D: Delete (effacer / enlever)
t: table
I: insert
R: replace
L: List
...
Add (Ajouter) une règle (-A)
bloquer l'adresse ip V4 172.22.7.3 par exemple !
iptables -A INPUT -s 172.22.7.3 -j DROP
iptables -nvL
root@debian:~# iptables -nvL
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
root@debian:~#
INPUT : entrant
OUTPUT: sortant
FORWARD : rediriger
root@debian:~# iptables -nvL
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
595 49980 REJECT 1 -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 8 reject-with icmp-port-unreachable
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
root@debian:~# iptables -D INPUT 1
root@debian:~# iptables -nvL
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
la ligne bleue permet d'effacer la regle (ici 1) de iptables dans le champs INPUT
iptables -A INPUT -p icmp --icmp-type echo-request -j REJECT
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
Les commandes à saisir pour configurer iptables entre l’interface intranet0 et l’interface internet0 sont données ci-dessous. Attention, vous devez remplacer dans le script suivant le nom des interfaces par leur nom sous linux !
ici
internet0 est surement enp0s3 (la nat) (accès à internet)
intranet0 est surement enp0s8 (la carte sur notre réseau)
script mettant les règles pour "FORWARDER" en 3 règles
iptables -t nat -A POSTROUTING -o internet0 -j MASQUERADE
iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i intranet0 -o internet0 -j ACCEPT
Adrien:
https://www.linuxtricks.fr/wiki/iptables-quelques-trucs-utiles
petites manipulations inintéressantes
https://www.baeldung.com/linux/iptables-reject-vs-drop
Supprimer les regles
https://korben.info/comment-supprimer-toutes-les-regles-iptables.html
https://www.unicoda.com/?p=2378