Firewall et s - PowerPoint PPT Presentation

About This Presentation
Title:

Firewall et s

Description:

Olivier ALLARD-JACQUIN. Olivier Allard-Jacquin. version 1.0.1 2 juillet ... Olivier Allard-Jacquin. version 1.0.1 2 juillet 2003. GUILDE:Groupement des utilisateurs ... – PowerPoint PPT presentation

Number of Views:340
Avg rating:3.0/5.0
Slides: 38
Provided by: olivier101
Category:
Tags: allard | firewall

less

Transcript and Presenter's Notes

Title: Firewall et s


1
Firewall et sécurité d'un réseau personnel sous
Linux
Olivier ALLARD-JACQUIN
  • Introduction
  • I Rappels sur les réseaux IP
  • II Sécurité de base
  • III Netfilter / Iptables
  • IV Outils et liens
  • Conclusion

2
I Rappels sur les réseaux IP
  • Adresses IP
  • Ports
  • Masque de sous-réseau
  • Réseaux IP
  • Passerelle
  • Type de trame
  • La poignée de main (hand check)
  • Interface réseau

3
Adresses IP
  • Adresse IP obligatoire pour se connecter sur un
    réseau IP
  • Adresse UNIQUE pour un réseau
  • 4 nombres 0 -gt255
  • Ex 56.2.68.147
  • 3 classes d'adresses privées
  • Classe A 10.x.y.z
  • Classe B 172.x.y.z
  • Classe C 192.168.x.y

()
Adresse IP ltgt Immeuble
() 16 lt x lt 31
4
Les ports
  • Nécessaire pour communiquer
  • IN / OUT / IN ou OUT
  • Logiciels serveurs ou client
  • 65535 ports / machines
  • 0 à 1024 serveurs
  • 32768 à 61000 client
  • Exemple

Logiciel ltgt Utilisateur
Port ltgt fenètre
5
Masque de sous-réseaux
  • Grouper les machines
  • 4 nombres 0, 128, 192, 224, 240, 248, 252, 254,
    255
  • Exemple 255.255.255.0
  • Nombre max d'adresse IP
  • Pour les classes privées
  • Classe A 255.0.0.0
  • Classe B 255.255.0.0
  • Classe C 255.255.255.0

Masque de sous réseaultgt Quartier
6
Réseau IP
  • Combinaison adresse IP / Masque de sous-réseau
  • Exemples
  • 192.168.0.0 / 255.255.255.0
  • 192.168.0.0 / 24
  • Pour les classes privées
  • Classe A 10.x.y.z / 8
  • Classe B 172.x.y.z / 16
  • Classe C 192.168.x.y / 24

()
() 16 lt x lt 31
Réseau IPltgt Barrière
7
Passerelle
  • Les réseaux sont isolés entre eux
  • Seule sortie La passerelle / gateway
  • 1 adresse IP (ex 192.168.0.254)
  • Se charge de trouver le destinataire

Passerelle ltgt Garde barrière
8
Type de trames
  • Différents types de transmission d'informations
  • TCP
  • UDP
  • ICMP
  • ...

Type de trames ltgt Type de courrier
9
La poignée de mains
  • Valable pour TCP
  • 3 étapes
  • SYN
  • ACK SYN
  • ACK
  • Le dialogue peut débuter

La poignée de mains ltgt Engager la conversation
10
Interfaces réseaux
  • Carte réseau eth0, eth1, ...
  • Modem ppp0, ppp1, ....
  • Loopback lo
  • 1 ou plus adresses IP par interface
  • eth0 192.168.0.1
  • eth00 192.168.1.1
  • eth01 192.168.2.1

11
II Sécurité de base
  • Présentation du réseau
  • Outils d'analyse et de détection
  • Démons, serveurs et démons de service
  • Risques
  • Fermeture des ports
  • Bilan

12
Présentation du réseau
  • Paradise
  • paradise.sky.net
  • eth0 192.168.0.2/24
  • Phoenix
  • phoenix0.sky.net
  • eth0 192.168.0.1/24
  • phoenix1.sky.net
  • eth1 10.0.0.1/8
  • Pirate
  • pirate.internet.net
  • eth0 10.0.0.66/8
  • web.internet.net
  • eth00 10.0.0.200/8

13
Outils d'analyse et de détection
  • Intrus / administrateur Même combat, mêmes
    outils
  • Outils
  • Nmap
  • Tcpdump
  • Ethereal
  • Netstat
  • Lsof
  • Ping
  • Traceroute

14
Démons, serveurs et démons de service
  • Démons cron, dm, xfs, random, alsa ...
  • Serveurs Apache, Bind, MySQL, Samba ...
  • Démon de service Inetd / Xinetd
  • Méta démon de surveillance et de contrôle d'accès
  • Gère des services telnet, proftpd, pop, cvs,
    time ...

15
Risques et protections simples
  • Risques
  • Saturation
  • Vol / suppression de données
  • Exécution de code arbitraire
  • Prise de contrôle à distance
  • Protections simples
  • Utilisateur
  • Prison / jail (chroot)
  • User mode kernel

16
Fermeture des ports
  • Arrêter les services inutiles
  • Contrôler les accès
  • Gérer les démons /etc/init.d/
  • Contrôle des démons /etc/rc3.d/ et
    /etc/rc5.d/

17
Bilan
  • Pas de contrôle sur l'ICMP
  • Scan toujours utilisable
  • IP Spoofing

18
III Netfilter / Iptables
  • Pré-requis
  • Vue générale de Netfilter
  • Chaînes, règles et iptables
  • Les tables
  • Un premier script simple
  • Le suivi de connexion (conntrack)
  • IP masquerading
  • Log (LOG / ULOG)
  • Firewall applicatif

19
Pré-requis
  • Kernel 2.4.x ou supérieur
  • rpm / urpmi / apt iptables
  • Compilation du kernel

CONFIG_MODULES Y CONFIG_PACKET
Y CONFIG_NETFILTER Y CONFIG_UNIX
Y CONFIG_INET Y CONFIG_IP_ADVANCED_ROUTER Y
CONFIG_IP_NF_CONNTRACK M CONFIG_IP_NF_FTP
M CONFIG_IP_NF_IRC M CONFIG_IP_NF_IPTABLES
M CONFIG_IP_NF_FILTER M CONFIG_IP_NF_NAT
M CONFIG_IP_NF_MATCH_LIMIT M CONFIG_IP_NF_MATCH_
STATE M CONFIG_IP_NF_TARGET_MASQUERADE
M CONFIG_IP_NF_TARGET_REDIRECT
M CONFIG_IP_NF_TARGET_LOG M CONFIG_IP_NF_TARGET_
ULOG M
20
Vue générale de Netfilter
  • Netfilter Rien à voir avec le firewall sous
    Windows
  • Netfilter 5 crochets (hook) dans la pile réseau
  • Une chaîne et des règles par crochet

21
Chaînes, règles et iptables
  • Règles Conditions de passage des paquets réseau
  • Chaînes Conteneur de règles
  • Chaînes prédéfinies et chaînes utilisateur Même
    combat
  • Iptables Le maître des règles

22
La table Filter
  • 3 chaînes
  • INPUT Paquets rentrants vers des processus
    locaux
  • OUTPUT Paquets sortant des processus locaux
  • FORWARD Paquets passant d'une interface à
    l'autre

23
La table NAT
  • 3 chaînes
  • PREROUTING Paquets rentrants dans la couche
    réseau
  • POSTROUTING Paquets sortants de la couche
    réseau
  • OUTPUT Paquets sortants des processus locaux

24
La table Mangle
  • Mangle Mutilation des paquets ...
  • Application QoS (Quality of Service)

25
Iptables
  • Manipulation des tables
  • -t (table)
  • Manipulation des chaînes
  • -F (Flush) -X (eXtra) -P (default Policy) -N
    (New) -A (Append) -D (Delete) -L (Liste)
  • Cible
  • -j (Jump)
  • Critères
  • -i (Input) -o (Output) -s (Source) -d
    (destination) -p (protocole) -sport (Source port)
    -dport (destination port)
  • Spécial
  • -m (module) state (Status) -log (Log)

26
Un premier script simple
  • Supprimer toutes les règles

iptables -t filter -F iptables -t filter -X
  • Détruire tout par défaut

iptables -t filter -P INPUT DROP iptables -t
filter -P OUTPUT DROP iptables -t filter -P
FORWARD DROP
  • Autoriser avec parcimonie

iptables -t filter -A OUTPUT -o eth1 -p tcp
--dport 80 -j ACCEPT iptables -t filter -A
OUTPUT -o eth1 -p tcp --dport 443 -j
ACCEPT iptables -t filter -A INPUT -i eth1
-p tcp --sport 80 -j ACCEPT iptables -t filter
-A INPUT -i eth1 -p tcp --sport 443 -j ACCEPT
27
Le suivi de connexion (conntrack)
  • Problème nmap -g 80
  • Modules conntrack
  • Connexions
  • NEW
  • ESTABLISHED
  • RETATED (Ex FTP)
  • INVALID

iptables -A OUTPUT -o eth1 -s 10.0.0.1 -p all -m
state --state ! INVALID -j ACCEPT iptables -A
INPUT -i eth1 -d 10.0.0.1 -p all -m state
--state RELATED,ESTABLISHED -j
ACCEPT
  • Netfilter trou noir ltgt Protection absolue ?

28
IP masquerading (masquage IP)
  • Paradise sur Internet ?
  • Table NAT
  • Voie montante
  • Voie descendante
  • Modules NAT
  • Clef de sortie

iptables -A FORWARD -i eth0 -o eth1 -s
192.168.0.0/24 -m state --state !
INVALID -j ACCEPT iptables -A FORWARD -i eth1 -o
eth0 -d 192.168.0.0/24 -m state
--state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o eth1 -s
192.168.0.0/24 -j MASQUERADE
echo 1 gt /proc/sys/net/ipv4/ip_forward
Clef de sortie
29
Log (LOG / ULOG)
  • Log avant destruction

iptables -A INPUT -p all -j LOG --log-prefix
DefautlDropIN iptables -A OUTPUT -p all -j LOG
--log-prefix DefautlDropOUT
  • Log et destruction

iptables -N LogDrop iptables -A LogDrop -j LOG
log-prefix LogAndDrop iptables -A LogDrop -j DROP
  • Séparer les LOG. Une solution, ULOG

modprobe ipt_ULOG iptables -N LogDrop iptables -A
LogDrop -j ULOG --ulog-prefix LogAndDrop iptables
-A LogDrop -j DROP
30
Firewall applicatif
Exemple FireFlier (http//fireflier.sourceforge.n
et/)
  • Firewall applicatif Filtrage IP par application
  • Intérêt
  • ip_queue / LIBIPQ
  • Exemple
  • Fireflier

31
IV Outils et liens
  • Interfaces à iptables
  • Distributions spécialisées
  • Netfilter_cfg
  • Liens

32
Interfaces à iptables
  • Freshmeat
  • KNetfilter
  • ... ... ...

http//freshmeat.net/browse/151/
http//freshmeat.net/projects/knetfilter/
33
Distributions spécialisées
  • IPCop
  • floppyfw
  • BBIagent
  • Linux rooter (RIP)
  • ... ... ...

http//www.ipcop.org
http//www.zelow.no/floppyfw/
http//www.bbiagent.net/en/index.html
http//www.linuxrouter.org/
34
Netfilter_cfg
  • Script bash
  • Support de multiples interfaces locales
  • Connexion externe RTC / ADSL / passerelle
  • Supporte Conntrack / IP masquerading
  • LOG / ULOG / Filtrage de logs
  • Gestion de serveurs TO / FTP / ...
  • Evolutif

35
Liens 1
  • Documentation du créateur de Netfilter (Rusty
    Russell)
  • http//www.netfilter.org/unreliable-guides/ (en
    Français)
  • Christian Caleca
  • http//christian.caleca.free.fr/netfilter/
  • IpTables par l'exemple
  • http//lea-linux.org/reseau/iptables.php3
  • Olivier Allard-Jacquin
  • olivieraj.free.fr

36
Liens 2
  • Recherche de sécurité
  • Nessus http//www.nessus.org/
  • SATAN http//www.fish.com/satan/
  • Audit externe
  • PcFlank http//www.pcflank.com/
  • DSLreports http//www.dslreports.com/scan
  • Références
  • Linux http//www.linuxsecurity.com/
  • Plus globales http//www.securityfocus.com/

37
Conclusion
  • Sécurité informatique ?
  • Ne jamais sous estimer les intrus
  • Modèle à plusieurs couches
  • Règles d'or
  • fermer les démons inutiles
  • restreindre les accès à ceux restant
  • Netfilter / iptables conntrack log
  • 1 Initialisation des tables
  • 2 DROP par défaut
  • 3 ACCEPT au compte goûte
Write a Comment
User Comments (0)
About PowerShow.com