Différences
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 | ||
130netfilter:20-iptables [le 31/03/2025 à 15:42] – [Depuis 192.168.61.0/24 vers l'internet] prof | 130netfilter:20-iptables [le 04/04/2025 à 07:00] (Version actuelle) – [Synthèse] prof | ||
---|---|---|---|
Ligne 65: | Ligne 65: | ||
ip6tables -A INPUT -i enp1s0 -m conntrack --ctstate ESTABLISHED, | ip6tables -A INPUT -i enp1s0 -m conntrack --ctstate ESTABLISHED, | ||
Cependant, il faut ajouter icmp pour les annonces et découvertes des voisins, aussi bien du côté orange que du côté vert: | Cependant, il faut ajouter icmp pour les annonces et découvertes des voisins, aussi bien du côté orange que du côté vert: | ||
- | ip6tables -A INPUT -p icmp -j ACCEPT | + | ip6tables -A INPUT -p ipv6-icmp -j ACCEPT |
En ce qui concerne les adresses de lien local, nous n' | En ce qui concerne les adresses de lien local, nous n' | ||
ip6tables -A INPUT -s fe80::/64 -j ACCEPT | ip6tables -A INPUT -s fe80::/64 -j ACCEPT | ||
Ligne 86: | Ligne 86: | ||
Il n'y a à priori plus rien à faire en fonction du cahier des charges initial | Il n'y a à priori plus rien à faire en fonction du cahier des charges initial | ||
===== Vérifications ===== | ===== Vérifications ===== | ||
- | ==== Depuis 192.168.61.0/ | + | ==== Pour IPv4 ==== |
Lors du démarrage d'un client du LAN vert, Nous pouvons vérifier sa configuration IPv4: | Lors du démarrage d'un client du LAN vert, Nous pouvons vérifier sa configuration IPv4: | ||
Ligne 122: | Ligne 122: | ||
Trying 192.168.61.1... | Trying 192.168.61.1... | ||
... | ... | ||
- | <span class=" | + | <span class=" |
</ | </ | ||
Car la cible DROP réagit ainsi: Elle jette le paquet dans un puits sans fond, sans renvoyer de notification à la source. Telnet n'est donc pas accessible à cette station. | Car la cible DROP réagit ainsi: Elle jette le paquet dans un puits sans fond, sans renvoyer de notification à la source. Telnet n'est donc pas accessible à cette station. | ||
Ligne 156: | Ligne 156: | ||
Nmap n'a rien trouvé d' | Nmap n'a rien trouvé d' | ||
- | Depuis la station dans le LAN vert il faut vérifier qu'une nouvelle connexion | + | ==== Et pour IPv6 ==== |
+ | < | ||
+ | <b>ip -6 addr ls</ | ||
+ | 1: lo: < | ||
+ | inet6 ::1/128 scope host noprefixroute | ||
+ | | ||
+ | 2: enp1s0: < | ||
+ | inet6 <span class=" | ||
+ | | ||
+ | inet6 <span class=" | ||
+ | | ||
+ | |||
+ | <b>ip -6 route ls</ | ||
+ | 2a01: | ||
+ | fe80::/64 dev enp1s0 proto kernel metric 256 pref medium | ||
+ | <span class=" | ||
+ | </ | ||
+ | Les adresses sont correctes, la route par défaut est correcte aussi. | ||
+ | |||
+ | Depuis la station dans le LAN vert il faut vérifier qu'une nouvelle connexion IPv6 peut en sortir et que les réponses peuvent entrer en chargeant par exemple la page html par défaut de [2001: | ||
+ | < | ||
+ | < | ||
+ | |||
+ | --2025-03-31 18: | ||
+ | Connexion à [2001: | ||
+ | requête HTTP transmise, en attente de la réponse… 200 OK | ||
+ | Taille : 16 [text/html] | ||
+ | Sauvegarde en : « index.html » | ||
+ | |||
+ | index.html | ||
+ | |||
+ | <span class=" | ||
+ | </ | ||
+ | Tout va bien mais n' | ||
+ | |||
+ | |||
+ | Essayons maintenant d' | ||
+ | < | ||
+ | < | ||
+ | |||
+ | <span class=" | ||
+ | </ | ||
+ | |||
+ | Le port 22 est bien ouvert à l' | ||
+ | < | ||
+ | < | ||
+ | |||
+ | <span class=" | ||
+ | </ | ||
+ | Comme c' | ||
+ | |||
+ | Enfin, nous pouvons essayer la même chose sur le serveur qui a, rappelons-le, | ||
+ | < | ||
+ | < | ||
+ | <span class=" | ||
+ | </ | ||
+ | Ici, c'est le coup du DROP par défaut qui jette sans l’annoncer. | ||
+ | |||
+ | Le contrat est donc rempli, les protections demandées sont opérationnelles. | ||
+ | ===== Synthèse ===== | ||
+ | La syntaxe Iptables, une fois un peu rodée, devient assez facile à lire et même à écrire du moment que l'on sait exactement ce que l'on veut faire avec. | ||
+ | |||
+ | Pour que ces règles persistent au prochain redémarrage, | ||
+ | < | ||
+ | < | ||
+ | # Generated by iptables-save v1.8.9 (nf_tables) on Mon Mar 31 19:57:09 2025 | ||
+ | *filter | ||
+ | :INPUT DROP [32857: | ||
+ | :FORWARD ACCEPT [63:4124] | ||
+ | :OUTPUT ACCEPT [17257: | ||
+ | -A INPUT -i enp7s0 -p udp -m multiport --dports 53,67 -j ACCEPT | ||
+ | -A INPUT -s 192.168.61.254/ | ||
+ | -A INPUT -i enp1s0 -m conntrack --ctstate RELATED, | ||
+ | -A INPUT -p icmp -j ACCEPT | ||
+ | -A FORWARD -i enp1s0 -o enp7s0 -m conntrack --ctstate RELATED, | ||
+ | COMMIT | ||
+ | # Completed on Mon Mar 31 19:57:09 2025 | ||
+ | # Generated by iptables-save v1.8.9 (nf_tables) on Mon Mar 31 19:57:09 2025 | ||
+ | *nat | ||
+ | :PREROUTING ACCEPT [21308: | ||
+ | :INPUT ACCEPT [95:14789] | ||
+ | :OUTPUT ACCEPT [4298: | ||
+ | : | ||
+ | -A POSTROUTING -o enp1s0 -j MASQUERADE | ||
+ | COMMIT | ||
+ | # Completed on Mon Mar 31 19:57:09 2025 | ||
+ | |||
+ | < | ||
+ | # Generated by ip6tables-save v1.8.9 (nf_tables) on Mon Mar 31 19:57:26 2025 | ||
+ | *filter | ||
+ | :INPUT DROP [17:1416] | ||
+ | :FORWARD ACCEPT [659:68419] | ||
+ | :OUTPUT ACCEPT [2064: | ||
+ | -A INPUT -p icmp -j ACCEPT | ||
+ | -A INPUT -p ipv6-icmp -j ACCEPT | ||
+ | -A INPUT -i enp1s0 -m conntrack --ctstate RELATED, | ||
+ | -A INPUT -s fe80::/64 -j ACCEPT | ||
+ | -A INPUT -p udp -m udp --dport 53 -j ACCEPT | ||
+ | -A FORWARD -i enp1s0 -m conntrack --ctstate NEW -j REJECT --reject-with icmp6-port-unreachable | ||
+ | -A FORWARD -i enp1s0 -m conntrack --ctstate NEW -j REJECT --reject-with icmp6-port-unreachable | ||
+ | -A FORWARD -i enp1s0 -m conntrack --ctstate RELATED, | ||
+ | COMMIT | ||
+ | # Completed on Mon Mar 31 19:57:26 2025 | ||
+ | </ | ||
+ | <note important> | ||
+ | ===== Conclusion ===== | ||
+ | Nous n' | ||
+ | Il faut savoir que ce qui est fait au niveau IP peut se faire aussi au niveau Ethernet avec les outils '' | ||
+ | Et pour finir de donner le vertige, il existe enfin l' | ||
IPtables: Dernière modification le: 31/03/2025 à 15:42 par prof