Vous êtes sur la page 1sur 19

Administration rseau Iptables et NAT

A. Guermouche

A. Guermouche

Cours 4 : Iptables et NAT

Plan

1. Logiciels de ltrage de paquets 2. Ipfwadm 3. Ipchains 4. Iptables

A. Guermouche

Cours 4 : Iptables et NAT

Logiciels de ltrage de paquets

Plan

1. Logiciels de ltrage de paquets 2. Ipfwadm 3. Ipchains 4. Iptables

A. Guermouche

Cours 4 : Iptables et NAT

Logiciels de ltrage de paquets

Logiciels de ltrage de paquets

Fonctionnalits de rewall ltrant directement implmente dans le noyau Linux. Filtrage de niveau 3 ou 4. 3 types de rewall ltrants : Ipfwadm. Jusqu la version 2.1.102 du noyau linux Ipchains. Entre les versions 2.2.0 et 2.4 du noyau linux Iptables. partir des noyaux 2.4

A. Guermouche

Cours 4 : Iptables et NAT

Ipfwadm

Plan

1. Logiciels de ltrage de paquets 2. Ipfwadm 3. Ipchains 4. Iptables

A. Guermouche

Cours 4 : Iptables et NAT

Ipfwadm

Ipfwadm
Firewall permettant la gestion des paquets TCP, UDP et ICMP. 3 types de rgles : INPUT . sont appliques lors de larrive dun paquet. FORWARD . sont appliques lorsque la destination du paquet nest pas le routeur. OUTPUT. sont appliques ds quun paquet doit sortir du routeur. Fonctionnement :
Demasquerading Processus local Paquet rejet INPUT OUTPUT

Paquet accept

Paquet rout

FORWARD
A. Guermouche Cours 4 : Iptables et NAT 6

Ipfwadm

Ipfwadm
Firewall permettant la gestion des paquets TCP, UDP et ICMP. 3 types de rgles : INPUT . sont appliques lors de larrive dun paquet. FORWARD . sont appliques lorsque la destination du paquet nest pas le routeur. OUTPUT. sont appliques ds quun paquet doit sortir du routeur. Fonctionnement :
1: 2: 3: 4: 5: 6: 7:

lorsquun paquet entre, il traverse les rgles de type INPUT Si il est accept Alors Si il est destin une autre machine Alors il est rout vers les rgles FORWARD Sinon il est rejet le paquet est nalement mis
A. Guermouche Cours 4 : Iptables et NAT 6

Dans tous les cas, le paquet traverse les rgles OUTPUT

Ipchains

Plan

1. Logiciels de ltrage de paquets 2. Ipfwadm 3. Ipchains 4. Iptables

A. Guermouche

Cours 4 : Iptables et NAT

Ipchains

Ipchains
Module du noyau Linux ralisant le ltrage de paquets. Inspir du parre-feu BSD (tout comme ipfwadm) Fonctionnement :
Boucle locale "Demasquerading" INPUT Routage Accept

FORWARD

OUTPUT

Rejet Processus local

Rejet

Rejet

A. Guermouche

Cours 4 : Iptables et NAT

Iptables

Plan

1. Logiciels de ltrage de paquets 2. Ipfwadm 3. Ipchains 4. Iptables

A. Guermouche

Cours 4 : Iptables et NAT

Iptables

Iptables (1/2)
Module du noyau Linux ralisant le ltrage de paquets (noyaux 2.4). Amliorations en matire de ltrage et de translation dadresses par rapport Ipchains. Fonctionnement :
FORWARD

Pr-routage

Routage

Rejet

Post-routage Accept OUTPUT

INPUT Rejet

Processus local

Rejet

A. Guermouche

Cours 4 : Iptables et NAT

10

Iptables

Iptables (1/2)
Module du noyau Linux ralisant le ltrage de paquets (noyaux 2.4). Amliorations en matire de ltrage et de translation dadresses par rapport Ipchains. Fonctionnement :
1: 2: 3: 4: 5: 6: 7: 8: 9:

larrive dun paquet (aprs dcision de routage) : Si le paquet est destin lhte local Alors il traverse la chane INPUT. Si il nest pas rejet Alors il est transmis au processus impliqu. Sinon Si le paquet est destin un hte dun autre rseau Alors il traverse la chane FORWARD Si il nest pas rejet Alors il poursuit alors sa route

A. Guermouche

Cours 4 : Iptables et NAT

10

Iptables

Iptables (1/2)
Module du noyau Linux ralisant le ltrage de paquets (noyaux 2.4). Amliorations en matire de ltrage et de translation dadresses par rapport Ipchains. Fonctionnement :
1: 2: 3: 4: 5: 6: 7: 8: 9:

Tous les paquets mis par des processus locaux au routeur traversent la chane OUTPUT.
A. Guermouche Cours 4 : Iptables et NAT

larrive dun paquet (aprs dcision de routage) : Si le paquet est destin lhte local Alors il traverse la chane INPUT. Si il nest pas rejet Alors il est transmis au processus impliqu. Sinon Si le paquet est destin un hte dun autre rseau Alors il traverse la chane FORWARD Si il nest pas rejet Alors il poursuit alors sa route

10

Iptables

Iptables (2/2)
Fonctionnalits : Filtrage de paquets NAT Marquage de paquets Architectures :Trois tables de chanes (FILTER , NAT et MANGLE).
FILTER NAT

(ltrage des paquets) INPUT paquet entrant sur le routeur OUTPUT paquet mis par le routeur FORWARD paquet traversant le routeur

(translation dadresses) PREROUTING NAT de destination


POSTROUTING OUTPUT

NAT de source NAT sur les paquets mis localement

La table MANGLE sert au marquage des paquets


A. Guermouche Cours 4 : Iptables et NAT 11

Iptables

Fonctionnalits NAT dIptables (1/2)

eth1 140.77.13.2

Routeur

eth0 192.168.0.2 Rseau priv

Modication de la destination du paquet avant le routage (paquet reu de lextrieur).


iptables -t nat -A PREROUTING -d 140.77.13.2 -i eth1 -j DNAT to-destination 192.168.0.2

Modication de la source du paquet aprs le routage (paquet mis partir du rseau priv).
iptables -t nat -A POSTROUTING -s 192.168.0.2 -o eth1 -j SNAT to-source 140.77.13.2
A. Guermouche Cours 4 : Iptables et NAT 12

Iptables

Fonctionnalits NAT dIptables (1/2)

eth1 140.77.13.2

Routeur

eth0 192.168.0.2 Rseau priv

Exercice : Comment faire pour que le routeur puisse envoyer un paquet ladresse 140.77.13.2?

A. Guermouche

Cours 4 : Iptables et NAT

12

Iptables

Fonctionnalits NAT dIptables (1/2)

eth1 140.77.13.2

Routeur

eth0 192.168.0.2 Rseau priv

Exercice : Comment faire pour que le routeur puisse envoyer un paquet ladresse 140.77.13.2? Rponse : Il faut modier la destination du paquet mis localement avant le routage. iptables -t nat -A OUTPUT -d 140.77.13.2 -j DNAT to-destination 192.168.0.2
A. Guermouche Cours 4 : Iptables et NAT 12

Iptables

Fonctionnalits NAT dIptables (2/2)


NAT 192.168.0.0/24 140.77.13.2 eth1 140.77.13.3 eth2 NAT Rseau priv Routeur eth0 switch 192.168.1.0/24

Association entre toutes les adresses prives du sous-rseau 192.168.0.0/24 avec linterface eth1.
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.0/24 -j MASQUERADE

Association entre toutes les adresses prives du sous-rseau 192.168.1.0/24 avec linterface eth2.
iptables -t nat -A POSTROUTING -o eth2 -s 192.168.1.0/24 -j MASQUERADE
A. Guermouche Cours 4 : Iptables et NAT 13

Iptables

Transfert de ports

NAT 192.168.0.0/24 140.77.13.2 eth1 140.77.13.3 eth2 NAT Rseau priv Routeur eth0 switch 192.168.1.0/24

Transfrer les connexions sur le port 80 de ladresse 140.77.13.2 sur la machine ayant ladresse prive 192.168.0.200 sur le port 8080 :
iptables -t nat -A PREROUTING -p tcp -d 140.77.13.2 dport 80 sport 1024:65535 -j DNAT to 192.168.0.200:8080

A. Guermouche

Cours 4 : Iptables et NAT

14