linux:iptables

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
linux:iptables [2018/12/03 12:39] – add prerouting ip dest changing phswlinux:iptables [2021/11/29 22:28] (Version actuelle) – add persist rules phsw
Ligne 10: Ligne 10:
  
 Sources à explorer: Sources à explorer:
-  * [[https://opensource.com/article/18/10/iptables-tips-and-tricks]] +  * [[https://opensource.com/article/18/10/iptables-tips-and-tricks]] 
 +  * [[http://olivieraj.free.fr/fr/linux/information/firewall/index.html]] 
 +  * [[https://www.kitploit.com/2019/02/iptables-essentials-common-firewall.html]] 
 +  * [[https://iximiuz.com/en/posts/laymans-iptables-101/]] 
 +  * [[https://www.thegeekstuff.com/2012/08/iptables-log-packets/|How to Log Linux IPTables Firewall Dropped Packets to a Log File]] 
 + 
 + 
 +[[https://iximiuz.com/en/posts/laymans-iptables-101/|{{ https://iximiuz.com/laymans-iptables-101/iptables-stages-white.png?500 }}]] 
 +[[https://iximiuz.com/en/posts/laymans-iptables-101/|Source l'image]] 
 + 
 + 
 +On insère dans des **tables** des **règles** qui vont agir sur des **chaînes**. 
 + 
 +La table ''filter'' (par défaut) contient les chaînes ''OUTPUT'', ''INPUT'' et ''FORWARD''. Elle permet d'accepter (''-j ACCEPT'') ou rejeter (''-j DROP'') des paquets. 
 + 
 +La table ''nat'' contient les chaînes ''PREROUTING'', ''POSTROUTING'' et ''OUTPUT''. Elle permet de modifier des paquets avant de les traiter. 
 + 
 +On indique quelle table on manipule avec le paramètre ''-t''
 + 
 + 
 + 
 +==== Afficher les règles en place ==== 
 + 
 +<code bash> 
 +iptables -L 
 +iptables -t nat -L 
 +watch --interval=1 'sudo iptables -L -v -n | grep -v "    0 "' # voir en temps réel les règles qui sont utilisées 
 +iptables -S # donne les règles sous forme de commandes iptables 
 +</code> 
  
-==== Syntaxe globale ==== 
-  * ''-t <table>'' indique quelle table on manipule (''nat'', ''filter'') 
-  * ''-j'' indique l'action à effectuer avec le paquet sélectionné   
  
 ==== Exporter facilement les règles: ==== ==== Exporter facilement les règles: ====
Ligne 38: Ligne 64:
 </code> </code>
  
-==== Faire du SNAT====+==== Faire du SNAT ====
  
 //SNAT//: //Source NAT//: transformer l'IP source en A des paquets à destination de B: //SNAT//: //Source NAT//: transformer l'IP source en A des paquets à destination de B:
Ligne 57: Ligne 83:
  
 ''PREROUTING'' signifie qu'on applique les changements sur le paquets dès qu'il arrive sur l'interface réseau: une règle iptables existe pour ce paquet, donc il est pris en charge par la machine et n'est pas forwardé. ''PREROUTING'' signifie qu'on applique les changements sur le paquets dès qu'il arrive sur l'interface réseau: une règle iptables existe pour ce paquet, donc il est pris en charge par la machine et n'est pas forwardé.
 +
 +
 +==== Autoriser le forwarding de paquets ====
 +
 +<code bash>
 +sudo iptables -P FORWARD ACCEPT
 +</code>
 +
 +
 +
 +==== Persister les règles au redémarrage ====
 +
 +[[https://wiki.debian.org/iptables|Source]]
 +
 +Installer le paquet ''iptables-persistent'', puis:
 +<code bash>
 +iptables-save -f /etc/iptables/rules.v4
 +</code>
 +
 +
 +
 +
  • linux/iptables.1543837198.txt.gz
  • Dernière modification : 2021/04/04 17:01
  • (modification externe)