Title: Pare-feu
1Pare-feu
2Pare-feu
- Responsables Hugo ETIEVANT (côté routeur),
Benoît MAYNARD (côté client) - Objectifs sécuriser la passerelle et protéger
le réseau privé - Outil ipchains
3Outil ipchains
- Utilisation de loutil standard de firewalling
ipchains. - Permet détablir des règles de filtrage selon une
hiérarchie de chaînes arborescentes. - Rapide, souple, efficace et très bien documenté.
4Fonctionnement (I)
- Les règles de filtrage déterminent le devenir des
paquets grâce à une police qui peut être
ACCEPT, REJECT, DENY, MASQ ou encore une
redirection vers une chaîne. - Les règles sont groupées en chaînes qui peuvent
être celles de base input, forward, output ou
dautres définies par lutilisateur.
5Fonctionnement (II)
- Les paquets entrants dans le pare-feu arrivent
automatiquement dans la chaîne input. Ceux qui
sont émis par le pare-feu, passent dans la chaîne
output. Et ceux qui sont retransmis passent par
la chaîne forward. - Un paquet qui entre dans une chaîne teste toutes
les règles de la chaîne jusquà en trouver une
qui lui corresponde. Et il obéit à la police
spécifiée par la règle trouvée.
6Fonctionnement (III)
- Si aucune règle sappliquant au paquet na été
trouvée, alors cest la police par défaut de la
chaîne qui est utilisée pour savoir que faire de
ce paquet. - Il est donc important, avant de créer les règles,
de définir la police par défaut dune chaîne. - Par sécurité, on applique REJECT en entrée
(input) et en sortie (output) et DENY en
redirection (forward).
7Les polices
- Les polices de base
- ACCEPT le paquet est accepté
- REJECT le paquet est rejeté avec envoi dun
message dexplication ICMP - DENY le paquet est rejeté en mode silencieux
- MASQ le paquet est redirigé par masquerading
(translation dadresses IP NAT)
8Les critères de sélection
- Les règles reposent sur des critères de sélection
très variés - Machine source
- Port source
- Machine destination
- Port destination
- Interface
- TOS
- Protocole
- Drapeaux spéciaux du paquet TCP
- Types et codes spéciaux du paquet ICMP
9Actions sur les paquets
- Les règles peuvent définir différentes actions
sur un paquet - Mise en fichier de log
- Application dune police
- Redirection vers une autre chaîne
- Marquage du paquet
10Mode de construction des règles
- Chaînes
- création N
- vidage F
- suppression X
- affectation dune police P
- affichage L
- Règles
- ajout en fin de liste A, insertion ordonnée I
- suppression D
- remplacement R
- changement dordre
- test C
11Politique de sécurité
- IP masquerading
- Prohiber le Ping
- Palier à lIP Spoofing
- Restreindre Telnet
- Gérer laccès aux sites web
- Limiter les autres services
- Garder trace du trafic sensible
12IP masquerading
- Pour un réseau local invisible de lextérieur.
Tout en lui permettant laccès à lextérieur
incognito.
echo 1 gt /proc/sys/net/ipv4/ip_forward ipchains
P forward DENY ifconfig eth0 up 192.168.0.1
netmask 255.255.255.0 ifconfig eth1 up
134.214.90.20 netmask 255.255.252.0 ipchains b
A forward s 192.168.0.0/24 j MASQ
13Accès aux sites web
- Autoriser seulement les connexions HTTP vers
lextérieur.
ipchains A forward p tcp s
192.168.0.0/24 d 0.0.0.0/0 80 j MASQ
ipchains A forward p tcp ! y s
0.0.0.0/0 80 d 192.168.0.0/24 j MASQ
14IP Spoofing
- Combattre lusurpation didentité, limité à la
plage dadresses de notre réseau privé et Ã
ladresse de notre passerelle.
ipchains N ipspoof ipchains F ipspoof ipchains
A ipspoof l j DENY ipchains A input i eth1
s 192.168.0.0/24 j ipspoof ipchains A input i
eth1 s 134.214.90.20 j ipspoof
15Restrictions Telnet (I)
- Pour des besoins de maintenance à distance,
autorisation est faite à la machine 134.214.90.14
de se connecter à la passerelle sur le port
Telnet (port 23 selon /etc/services). - Laccès des autres machines via Telnet est
interdit.
16Restrictions Telnet (II) en entrée
ipchains N telin ipchains F telin ipchains A
telin s 134.214.90.14 d 134.214.90.20
j ACCEPT ipchains A telin l -j
REJECT ipchains A input i eth1 p tcp
s 0.0.0.0/0 23 j telin
17Restrictions Telnet (III) en sortie
ipchains N telout ipchains F telout ipchains A
telout s 134.214.90.20 d 134.214.90.14
j ACCEPT ipchains A telout l p tcp
! y -j REJECT ipchains A output i
eth1 p tcp s 0.0.0.0/0 23 j telout
18Trafic ICMP (I)
- Internet Control Message Protocol (RFC 950)
mécanisme de contrôle des erreurs au niveau IP. - Utilisé par les outils ping et traceroute afin de
préparer les attaques par découverte des réseaux. - Ping teste lexistence dune machine sur le
réseau. - Traceroute suivi du trajet des paquets.
19Trafic ICMP (II) objectifs
- Pour éviter tout scan futur, la parade pour
rester invisible aux outils de découverte du
réseau est - Devenir invisible aux requêtes echo-request
- Malgré tout, on va participer à la gestion
normale des erreurs - Gérer normalement les autres messages ICMP
20Ping avant
134.214.90.20
134.214.88.12
ping 134.214.90.20 -c 1
64 bytes from 134.214.90.20 icmp_seq0 ttl240
time17.3 ms
21Ping après
134.214.90.20
134.214.88.12
???
Mise en fichier de log.
ping 134.214.90.20 -c 1
100 packet loss
22Trafic ICMP (III) en entrée
ipchains -N icmpin ipchains -F icmpin ipchains -A
icmpin -l -p icmp --icmp-type
echo-request -j DENY ipchains -A input -i
eth1 -p icmp -j icmpin
23Trafic ICMP (IV) en sortie
ipchains -N icmpout ipchains -F icmpout ipchains
-A icmpout -l -p icmp --icmp-type
echo-reply -j DENY ipchains -A output -i
eth1 -p icmp -j icmpout
24Fichier de log
- Conserver les traces du trafic sensible (option
-l) - /etc/log/messages
- Exemple de trace
Nov 8 102553 b710pbv kernel Packet log
input REJECT eth1 PROTO17 134.214.90.16138
134.214.91.255138 L236 S0x00 I51490
F0x0000 T128 (7)
date et heure machine, système chaîne, police,
interface protocole machine et port
source machine et port destination taille du
paquet TOS id du paquet IP grapeau et id de
fragment durée de vie (TTL) index de la règle
utilisée