informatique:linux:iptables
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 | ||
| informatique:linux:iptables [2009/07/01 04:53] – benoit | informatique:linux:iptables [2015/09/03 12:03] (Version actuelle) – benoit | ||
|---|---|---|---|
| Ligne 24: | Ligne 24: | ||
| iptables -A INPUT -s 192.168.0.1 -i eth1 -p udp --dport 32000:32900 -j ACCEPT | iptables -A INPUT -s 192.168.0.1 -i eth1 -p udp --dport 32000:32900 -j ACCEPT | ||
| + | Pour insérer une règle en première position, utiliser **-I INPUT 1** : | ||
| + | iptables -I INPUT 1 -s 192.168.0.2 -i eth1 -p udp --dport 32000:32900 -j ACCEPT | ||
| + | |||
| + | | ||
| Pour lister les règles actives : | Pour lister les règles actives : | ||
| iptables -L -v | iptables -L -v | ||
| Ligne 83: | Ligne 87: | ||
| iptables -t filter -A FORWARD -i eth0 -o eth1 -j ACCEPT | iptables -t filter -A FORWARD -i eth0 -o eth1 -j ACCEPT | ||
| iptables -t filter -A FORWARD -i eth1 -o eth0 -j ACCEPT | iptables -t filter -A FORWARD -i eth1 -o eth0 -j ACCEPT | ||
| + | |||
| + | |||
| + | |||
| ==== Firewall d' | ==== Firewall d' | ||
| Ligne 92: | Ligne 99: | ||
| # VARIABLES | # VARIABLES | ||
| INTERNET_NIC=eth0 | INTERNET_NIC=eth0 | ||
| - | | + | |
| + | LOCAL_NIC2=eth2 | ||
| | | ||
| # ACTIVATION DU TRANSFERT DE PAQUET POUR TCP/IP | # ACTIVATION DU TRANSFERT DE PAQUET POUR TCP/IP | ||
| Ligne 109: | Ligne 117: | ||
| iptables -P FORWARD DROP | iptables -P FORWARD DROP | ||
| iptables -P OUTPUT ACCEPT | iptables -P OUTPUT ACCEPT | ||
| + | | ||
| + | iptables -A INPUT -i lo -j ACCEPT | ||
| + | iptables -A FORWARD -i lo -j ACCEPT | ||
| | | ||
| ################## | ################## | ||
| # REGLES LOCALES # | # REGLES LOCALES # | ||
| ################## | ################## | ||
| - | # OUVERTURE DU PORT 22 SUR LE FIREWALL | + | ####### OUVERTURES |
| - | iptables -A INPUT -i ${LOCAL_NIC} -p tcp --dport 22 -j ACCEPT | + | |
| + | iptables -A INPUT -i ${INTERNET_NIC} -p tcp --dport 22 -j ACCEPT | ||
| + | iptables -A INPUT -i ${INTERNET_NIC} -p tcp --dport 10000 -j ACCEPT | ||
| | | ||
| - | # ACCEPTE L' | + | |
| iptables -A INPUT -m state --state ESTABLISHED, | iptables -A INPUT -m state --state ESTABLISHED, | ||
| | | ||
| Ligne 123: | Ligne 136: | ||
| ################################# | ################################# | ||
| | | ||
| - | # Bien respecter l' | + | # DANS CET EXEMPLE NOUS AVONS 2 RESEAUX LOCAUX, LOCAL ET DMZ ET UN LIEN VERS INTERNET |
| + | # - DMZ (LOCAL_NIC1) | ||
| + | # - LOCAL (LOCAL_NIC2) | ||
| + | # - INTERNET (INTERNET_NIC) = IP_DU_PROVIDER | ||
| | | ||
| - | # OUVERTURE DU PORT 22 VERS LA MACHINE 10.0.0.1 | + | ####### OUVERTURES DE LOCAL VERS INTERNET |
| - | iptables -A FORWARD -i ${INTERNET_NIC} -o ${LOCAL_NIC} -p tcp --dport 22 -d 10.0.0.1 -j ACCEPT | + | |
| | | ||
| - | # TRANSLATION | + | ####### OUVERTURES |
| - | iptables | + | iptables -A FORWARD |
| | | ||
| - | # MASQUAGE DES ADRESSES IP PRIVE POUR SORTIR SUR LE RESEAU | + | ####### OUVERTURES DE LOCAL VERS INTERNET |
| - | iptables | + | iptables -A FORWARD -i ${LOCAL_NIC2} |
| | | ||
| - | # ACCEPTE L' | + | |
| + | iptables -A FORWARD -i ${INTERNET_NIC} -o ${LOCAL_NIC1} -p tcp --dport 22 -d 10.0.0.1 -j ACCEPT | ||
| + | iptables -A FORWARD -i ${INTERNET_NIC} -o ${LOCAL_NIC1} -p tcp --dport 80 -d 10.0.0.1 -j ACCEPT | ||
| + | iptables -A FORWARD -i ${INTERNET_NIC} -o ${LOCAL_NIC1} -p tcp --dport 143 -d 10.0.0.1 -j ACCEPT | ||
| + | iptables -A FORWARD -i ${INTERNET_NIC} -o ${LOCAL_NIC1} -p tcp --dport 25 -d 10.0.0.1 -j ACCEPT | ||
| + | |||
| + | ###### TRANSLATIONS DE PORT DE INTERNET VERS DMZ | ||
| + | iptables -t nat -A PREROUTING -i ${INTERNET_NIC} -p tcp --dport 2222 -j DNAT --to 10.0.0.1: | ||
| + | iptables -t nat -A PREROUTING -i ${INTERNET_NIC} -p tcp --dport 80 -j DNAT --to 10.0.0.1: | ||
| + | iptables -t nat -A PREROUTING -i ${INTERNET_NIC} -p tcp --dport 143 -j DNAT --to 10.0.0.1: | ||
| + | iptables -t nat -A PREROUTING -i ${INTERNET_NIC} -p tcp --dport 25 -j DNAT --to 10.0.0.1: | ||
| + | |||
| + | ###### ACCEPTE L' | ||
| iptables -A FORWARD -m state --state ESTABLISHED, | iptables -A FORWARD -m state --state ESTABLISHED, | ||
| | | ||
| - | # HOTES DU RESEAU LOCAL AUTORISES A SORTIR SUR INTERNET | + | ###### MASQUAGE DES ADRESSES IP PRIVE POUR SORTIR SUR LE RESEAU |
| - | iptables -A FORWARD | + | iptables |
| + | iptables -t nat -A POSTROUTING | ||
| + | |||
| + | ==== Grouper les règles en créant des chains ==== | ||
| + | |||
| + | Pour organiser les règles IPTABLES nous pouvons les regrouper. On insère un ensemble de règles dans des groupes et on les rattache à une des principales chaine de règle : INPUT, FORWARD ou DROP. | ||
| + | |||
| + | Pour créer un groupe de règle nommé MY-FILTER-01 : | ||
| + | |||
| + | iptables -N MY-FILTER-01 | ||
| + | |||
| + | Pour ajouter ajouter une règle à ce groupe : | ||
| + | |||
| + | iptables -A MY-FILTER-01 -d 8.8.8.8 | ||
| + | |||
| + | Pour le moment, la règle que l'on vient d' | ||
| + | |||
| + | Nous ajoutons maintenant notre groupe de règle MY-FILTER-01 à la chaine OUTPUT : | ||
| + | |||
| + | iptables -A OUTPUT -j MY-FILTER-01 | ||
| + | |||
| + | Notre règle est maintenant appliquée. | ||
| + | |||
| + | Nous ajoutons maintenant une règle supplémentaire à notre groupe de règles MY-FILTER-01 : | ||
| + | |||
| + | iptables -A MY-FILTER-01 -d 8.8.4.4 -j DROP | ||
| + | |||
| + | Celle nouvelle règle est directement active. | ||
| + | |||
| + | Listons les règles : | ||
| + | |||
| + | iptables -L -n -v | ||
| + | |||
| + | Nous lisons que dans la **Chain OUTPUT** est définie une cible **MY-FILTER-01**. De ce fait toutes les règles se trouvant dans la **Chain MY-FILTER-01** seront appliqués pour les flux sortants (**OUTPUT**). | ||
| + | |||
| + | Chain INPUT (policy | ||
| + | pkts bytes target | ||
| + | |||
| + | Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) | ||
| + | pkts bytes target | ||
| + | |||
| + | Chain OUTPUT (policy ACCEPT 83 packets, 11212 bytes) | ||
| + | pkts bytes target | ||
| + | 83 11212 MY-FILTER-01 | ||
| + | |||
| + | Chain MY-FILTER-01 (1 references) | ||
| + | pkts bytes target | ||
| + | 2 168 DROP | ||
| + | 2 168 DROP | ||
| + | |||
| + | |||
| + | Comme nous avons regroupé les deux règles dans le même groupe, nous pouvons les désactiver d'un coup en retirant le groupe de règle MY-FILTER-01 de la chaine OUTPUT : | ||
| + | iptables -D OUTPUT -j MY-FILTER-01 | ||
| + | | ||
informatique/linux/iptables.1246424004.txt.gz · Dernière modification : (modification externe)
