logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

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
Prochaine révision Les deux révisions suivantes
doc:reseau:iptables-pare-feu-pour-une-passerelle [07/11/2014 12:28]
Hypathie [Détail pour les protocole TCP et UDP]
doc:reseau:iptables-pare-feu-pour-une-passerelle [15/11/2014 17:30]
Hypathie [Le script de la passerelle]
Ligne 293: Ligne 293:
    
 <code root> <code root>
-iptables -P FORWARD DROP 
 iptables -F iptables -F
 iptables -X iptables -X
Ligne 355: Ligne 354:
 iptables -P FORWARD DROP iptables -P FORWARD DROP
 ... ...
-iptables -t filter -A FORWARD -i eth1 -o eth0 -p tcp -m multiport\ +iptables -t filter -A FORWARD -i eth1 -o eth0 -m state --state ​NEW,ESTABLISHED,​RELATED -j ACCEPT 
- ​--dports 80,443,8000 -j ACCEPT + 
-iptables -t filter -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/​0\ +iptables -t filter -A FORWARD -i eth0 -o eth1 -m state --state ESTABLISHED,​RELATED -j ACCEPT
- -d 192.168.1.0/​24 ​-m state --state ESTABLISHED,​RELATED -j ACCEPT +
-iptables -t filter -A FORWARD ​-p icmp -j ACCEPT +
-... +
-iptables -t filter -A INPUT -p icmp -i eth0 -m state --state ESTABLISHED,​RELATED -j ACCEPT +
-iptables -t filter -A OUTPUT -p icmp -m state --state ESTABLISHED,​RELATED -j ACCEPT+
 ... ...
 iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Ligne 453: Ligne 447:
 #mais on oublie pas eth1 ! #mais on oublie pas eth1 !
 iptables -t filter -A FORWARD -i eth1 -o eth0 -s 192.168.1.0/​24\ iptables -t filter -A FORWARD -i eth1 -o eth0 -s 192.168.1.0/​24\
- -d 0.0.0.0/​0 ​-p tcp -m state --state NEW,​ESTABLISHED,​RELATED -j ACCEPT+ -d 0.0.0.0/0 -m state --state NEW,​ESTABLISHED,​RELATED -j ACCEPT
  
 iptables -t filter -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0\ iptables -t filter -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0\
- -d 192.168.1.0/​24 ​-p tcp -m state --state ESTABLISHED,​RELATED ​-j ACCEPT + -d 192.168.1.0/​24 -m state --state ESTABLISHED,​RELATED -j ACCEPT
- +
-iptables -t filter -A FORWARD -p icmp -j ACCEPT+
  
 iptables -t filter -A INPUT -p icmp -i eth0 -m conntrack\ iptables -t filter -A INPUT -p icmp -i eth0 -m conntrack\
Ligne 627: Ligne 619:
 iptables -P FORWARD DROP iptables -P FORWARD DROP
  
-iptables -A FORWARD -i eth1 -o eth0 -d 192.168.1.0/​24 -s 0.0.0.0/0 -j ACCEPT+#On remets "​masquerade"​ car on a flushé: 
 +iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 
 + 
 +iptables -A FORWARD -i eth1 -o eth0 -d 192.168.1.0/​24 -s 0.0.0.0/0
 + -m state --state NEW,​ESTABLISHED,​RELATED ​-j ACCEPT 
 iptables -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0\ iptables -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0\
  -d 192.168.1.0/​24 -m state --state ESTABLISHED,​RELATED -j ACCEPT  -d 192.168.1.0/​24 -m state --state ESTABLISHED,​RELATED -j ACCEPT
Ligne 654: Ligne 651:
  ​--icmp-type echo-reply -j DROP  ​--icmp-type echo-reply -j DROP
  
-#On remets "​masquerade"​ car on a flushé: 
-iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 
 </​code>​ </​code>​
 ====DROP sur INPUT et OUTPUT (chaîne filter) ==== ====DROP sur INPUT et OUTPUT (chaîne filter) ====
 Cette fois, il va falloir interdire (DROP) les chaînes INPUT et OUTPUT de la table FILTER excepté pour tous les protocoles dont on a besoin.\\ ​ Cette fois, il va falloir interdire (DROP) les chaînes INPUT et OUTPUT de la table FILTER excepté pour tous les protocoles dont on a besoin.\\ ​
-D'​abord pour ICMP qu'on ne laisse plus massivement entrer et sortir (table FILTER à DROP pour INPUT et OUTPUT, en plus de FORWARD).\\ ​**Attention l'​ordre des règles pour IMCP sur INPUT, OUTPUT et FORWARD, comptes ici**.+D'​abord pour ICMP qu'on ne laisse plus massivement entrer et sortir (table FILTER à DROP pour INPUT et OUTPUT, en plus de FORWARD).\\ ​ 
 +<​note>​ 
 +Attention l'​ordre des règles pour IMCP sur INPUT, OUTPUT et FORWARD, comptes ici. 
 +</​note>​
  
-On conserve ce qu'on a fait précédemment en ajoutant les commandes du [[atelier:​chantier:​iptables-pare-feu-pour-un-client#​pour-les-fadas-du-scripting-shell|script pour un client du LAN]] mais en tenant compte du fait qu'il y a cette fois deux interfaces réseau.+On conserve ce qu'on a fait précédemment en ajoutant ​simplement ​les commandes du [[atelier:​chantier:​iptables-pare-feu-pour-un-client#​pour-les-fadas-du-scripting-shell|script pour un client du LAN]] mais en tenant compte du fait qu'il y a cette fois deux interfaces réseau.
  
 <code root> <code root>
Ligne 692: Ligne 690:
 # On garde nos règles concernant le DROP sur FORWARD (FILTER) # On garde nos règles concernant le DROP sur FORWARD (FILTER)
 # et on oublie pas eth1 ! # et on oublie pas eth1 !
-iptables -t filter -A FORWARD -i eth1 -o eth0 -192.168.1.0/​24+iptables -t filter -A FORWARD -i eth1 -o eth0 -192.168.1.0/​24 -0.0.0.0/0
- -0.0.0.0/​0 ​-p tcp -m state --state NEW,​ESTABLISHED,​RELATED -j ACCEPT+ -m state --state NEW,​ESTABLISHED,​RELATED -j ACCEPT
    
 iptables -t filter -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0\ iptables -t filter -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0\
- -d 192.168.1.0/​24 ​-p tcp -m state --state ESTABLISHED,​RELATED -j ACCEPT + -d 192.168.1.0/​24 -m state --state ESTABLISHED,​RELATED -j ACCEPT 
- +
 iptables -t filter -A FORWARD -p icmp -j ACCEPT iptables -t filter -A FORWARD -p icmp -j ACCEPT
    
Ligne 914: Ligne 912:
 </​code>​ </​code>​
  
-====Le script de la passerelle ==== +=====Le script de la passerelle ​===== 
-Tenons compte de ces rappels, pour ajouter une connexion FTP et SSH loggées, et puisqu'​on y est un petit filtrage supplémentaire au niveau des Flags TCP.+Tenons compte de ces rappels, pour ajouter ​à tout ce qu'on a fait jusqu'​à présent, ​une connexion FTP et SSH loggées, et puisqu'​on y est un petit filtrage supplémentaire au niveau des Flags TCP. 
 + 
 +On ajoute au besoin les règles pour un serveur d'​impression (cups ; port 631) ;\\  
 +et de même, si l'on veut (commenter/​décommenter),​ les règles NAT pour un proxy transparent pour le sous-réseau 162.168.1.0/​24.\\  
 +Pour plus de détail sur l'​installation d'un proxy transparent voir [[utilisateurs:​hypathie:​tutos:​proxy-transparent]]. 
  
 <code bash firewall_gateway.sh>​ <code bash firewall_gateway.sh>​
Ligne 960: Ligne 963:
 /​sbin/​iptables -A OUTPUT -o eth1 -j ACCEPT /​sbin/​iptables -A OUTPUT -o eth1 -j ACCEPT
 #permettre le passage entre les deux interfaces eternet de la passerelle #permettre le passage entre les deux interfaces eternet de la passerelle
-/​sbin/​iptables -t filter -A FORWARD -i eth1 -o eth0 -s 192.168.1.0/​24 -d 0.0.0.0/​0 ​-p tcp -m state --state NEW,​ESTABLISHED,​RELATED -j ACCEPT +/​sbin/​iptables -t filter -A FORWARD -i eth1 -o eth0 -s 192.168.1.0/​24 -d 0.0.0.0/0 -m state --state NEW,​ESTABLISHED,​RELATED -j ACCEPT 
-/​sbin/​iptables -t filter -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0 -d 192.168.1.0/​24 ​-p tcp -m state --state ESTABLISHED,​RELATED -j ACCEPT+/​sbin/​iptables -t filter -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0 -d 192.168.1.0/​24 -m state --state ESTABLISHED,​RELATED -j ACCEPT
 /​sbin/​iptables -t filter -A FORWARD -p icmp -j ACCEPT /​sbin/​iptables -t filter -A FORWARD -p icmp -j ACCEPT
 #accepter le ping entre les réseaux locaux #accepter le ping entre les réseaux locaux
Ligne 1099: Ligne 1102:
 exit $RETVAL exit $RETVAL
 </​code>​ </​code>​
 +
 +<note tip>
 +**Pour autoriser la plateforme de jeux STEAM**
 +
 +<code root>
 +/​sbin/​iptables -A INPUT -i eth1 -p udp -m udp --sport 27000 -m\
 + state --state NEW,​RELATED,​ESTABLISHED -j ACCEPT
 +/​sbin/​iptables -A INPUT -i eth0 -p udp -m udp --sport 27000 -m\
 + state --state RELATED,​ESTABLISHED -j ACCEPT
 +</​code>​
 +
 +Merci à robert2a pour cet ajout  8-)
 +
 +[[http://​debian-facile.org/​viewtopic.php?​pid=102028#​p102028|Voir ce fil]]
 +</​note>​
  
   * Pour l'​installation du script   * Pour l'​installation du script
Ligne 1157: Ligne 1175:
 On laisse le terminal (de la passerelle) en état d'​attente,​ et on passe sur le terminal du client B. On laisse le terminal (de la passerelle) en état d'​attente,​ et on passe sur le terminal du client B.
  
-  * Côté client DHCP (ordinateur B) +  * Côté ​**client** DHCP (ordinateur B) on annule ​le bail DHCP :
- +
- -On commence par annuler ​le bail DHCP.\\ Comme ceci :+
  
 <code root> <code root>
Ligne 1166: Ligne 1182:
  
  
- -Il n'y a plus d'IP :+>Il n'y a plus d'IP : 
 <code root>​eth0 ​     Link encap:​Ethernet ​ HWaddr 00:​1e:​0b:​67:​9b:​b7  ​ <code root>​eth0 ​     Link encap:​Ethernet ​ HWaddr 00:​1e:​0b:​67:​9b:​b7  ​
           adr inet6: xxxxxxxxxxxx Scope:​Lien</​code>​           adr inet6: xxxxxxxxxxxx Scope:​Lien</​code>​
  
- ​- ​On lance une requête DHCP+  * On lance une requête DHCP
 <code root> <code root>
 dhclient eth0 dhclient eth0
 </​code>​ </​code>​
  
-Observez ce que nous dit "​tcpdump" ​(dans le terminal de la passerelle) au lancemant de la commande\\ ''​dhclient eth0''​ sur l'​ordinateur B (client DHCP) :+  * Côté serveur DHCP : 
 +Observez ce que nous dit "​tcpdump" ​ :
  
 <​code>​ <​code>​
Ligne 1195: Ligne 1213:
 </​code>​ </​code>​
  
-Et en plus l'IP de l'​ordinateur ​a bien changé !+  * Et  l'IP de l'​ordinateur ​client DHCP a bien changé !
  
 <​code>​INET_IP=`ifconfig $INET_IFACE | grep inet | \ <​code>​INET_IP=`ifconfig $INET_IFACE | grep inet | \
doc/reseau/iptables-pare-feu-pour-une-passerelle.txt · Dernière modification: 01/11/2015 18:20 par milou

Pied de page des forums

Propulsé par FluxBB