Académique Documents
Professionnel Documents
Culture Documents
Filtrage
M2 e-Secure
6 octobre 2014
0 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Plan
1 Introduction
2 Pare-feu
3 NAT
4 Netfilter
Principes
Utilisation
Utilisation avancée
5 Packet Filter
0 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Introduction
1 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
2 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
3 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
3 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Plan
1 Introduction
2 Pare-feu
3 NAT
4 Netfilter
Principes
Utilisation
Utilisation avancée
5 Packet Filter
3 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Pare-feu
4 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Types de pare-feu
5 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Filtrage
7 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
8 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
9 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
10 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Où filtrer ?
Classiquement : passerelle entre Internet et réseau interne, car
toutes les communications avec l’extérieur doivent y passer
Attention à la charge du routeur
Image : https://commons.wikimedia.org/wiki/File:Gateway_firewall.png
11 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Configuration
Classiquement :
auto-firewall « standard » pour les postes de travail ordinaires
auto-firewall particulier pour chaque serveur, chaque machine
ayant une fonction particulière
un ou plusieurs pare-feu généraux entre réseaux internes et
externe, et pour l’accès à la zone des serveurs publics → « zone
démilitarisée » (DMZ)
Image : https://commons.wikimedia.org/wiki/File:Demilitarized_Zone_Diagram.png
13 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Plan
1 Introduction
2 Pare-feu
3 NAT
4 Netfilter
Principes
Utilisation
Utilisation avancée
5 Packet Filter
13 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Traduction d’adresses
14 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
15 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
NAT basique
16 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Mascarade
17 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Redirection de port
Avec NAPT, une connexion ne peut être initiée que par une
machine interne
→ impossible d’utiliser une machine interne comme serveur pour
l’extérieur
Redirection de port (port forwarding) : on pré-remplit la table
de traduction du routeur pour que les paquets de l’extérieur sur
tel port du routeur soient redirigés vers telle machine interne
18 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Terminologie ambiguë
Selon la RFC 2663
static address assignment : autant d’adresses publiques que
privées
dynamic address assignment : plusieurs adresses publiques parmi
lesquelles le routeur peut choisir
Mais d’autres sources utilisent statique/dynamique pour la
gestion des ports
static NAT : redirection de port (la table de traduction est
statique)
en français NAT dynamique fait référence à NAPT, les ports sont
choisis dynamiquement (en particulier la mascarade est un cas
particulier de NAT dynamique)
SNAT et DNAT peuvent signifier statique/dynamique ou
source/destination
Conclusion : attention au contexte…
19 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Avantages de NAT
20 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Problèmes de NAT
21 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Plan
1 Introduction
2 Pare-feu
3 NAT
4 Netfilter
Principes
Utilisation
Utilisation avancée
5 Packet Filter
21 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Plan
1 Introduction
2 Pare-feu
3 NAT
4 Netfilter
Principes
Utilisation
Utilisation avancée
5 Packet Filter
21 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Introduction
22 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
iptables
23 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Principe de Netfilter
24 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Iptables, utilisation
26 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
27 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Autres tables
28 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Schéma complet
Image : http://www.iptables.info/en/structure-of-iptables.html 29 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Plan
1 Introduction
2 Pare-feu
3 NAT
4 Netfilter
Principes
Utilisation
Utilisation avancée
5 Packet Filter
29 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Syntaxe de base
30 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Commande
31 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Ajout de règle
32 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
33 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Plan
1 Introduction
2 Pare-feu
3 NAT
4 Netfilter
Principes
Utilisation
Utilisation avancée
5 Packet Filter
33 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Extensions d’iptables
34 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Avec iptables, une seule règle pour que les réponses aux
requêtes acceptées puissent passer en sens inverse :
iptables -A INPUT -m state --state ESTABLISHED,
RELATED -j ACCEPT (autorise les paquets entrants en réponse
aux requêtes qu’on a laissées sortir ; fonctionne pour TCP et
UDP)
36 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Filtrage fin
37 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Cibles particulières
38 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
NAT
39 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
40 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Plan
1 Introduction
2 Pare-feu
3 NAT
4 Netfilter
Principes
Utilisation
Utilisation avancée
5 Packet Filter
40 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Présentation
41 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Contrôle
42 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Principe
43 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Paramètres
direction : in ou out
af : inet ou inet6
proto : tcp, udp, icmp, icmp6, numéro, mnémonique de
/etc/protocols, ou liste
44 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
État
45 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
État : précisions
46 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Filtrage fin
Proxy TCP : permet d’éviter l’inondation de paquets SYN (à
utiliser avec modération)
Blocage de paquets avec adresse usurpée
adresse arrivant via une mauvaise interface
route de retour vers cette adresse ne correspondant pas à
l’arrivée
Reconnaissance d’empreintes de connexions TCP : permet de
reconnaître le système d’exploitation grâce à certaines
caractéristiques dans les paquets SYN
pass in on $ext_if proto tcp from any os OpenBSD keep
state
block in on $ext_if proto tcp from any os "Windows 2000"
block in on $ext_if proto tcp from any os "Linux 2.4 ts"
block in on $ext_if proto tcp from any os unknown
Traduction d’adresses
Option nat-to dans une règle pass :
pass out on tl0 from 192.168.1.0/24 to any nat-to
198.51.100.1 ou mieux
pass out on tl0 inet from dc0:network to any nat-
to (tl0)
Ou règle match + règle pass
match définit le NAT à appliquer pour des paquets vérifiant
certaines conditions
si une règle pass est rencontrée avec les mêmes conditions, on
n’applique pas le NAT au paquet
→ permet de faire des exceptions à la règle NAT
NAT permanent : binat-to, ports non modifiés
Redirection : rdr-to
pass in on tl0 proto tcp from any to any port 80
rdr-to 192.168.1.20
48 / 49
Introduction Pare-feu NAT Netfilter Packet Filter
Divers
49 / 49