Firewall et NAC OpenSource - Présentation Clusir-Est

Transcription

Firewall et NAC OpenSource - Présentation Clusir-Est
Firewall et NAC OpenSource
Présentation Clusir-Est
Johan Moreau
IRCAD/IHU
3 juin 2014
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
1 / 37
Le monde de l’OpenSource à notre niveau
Plan
1
Le monde de l’OpenSource à notre niveau
2
IPTables et PF
3
802.1X et NAC
4
Pourquoi maintenant
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
2 / 37
Le monde de l’OpenSource à notre niveau
Historique
Quelques exemples de sociétés ayant choisies des outils UNIX et
opensource :
Outils BSD IPv4 Microsoft 9*
OSX et iOS basé sur BSD 4.4
Juniper JunOS basé FreeBSD
NetApp DataOnTap basé FreeBSD
Google Android
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
3 / 37
Le monde de l’OpenSource à notre niveau
Les fondements
Les motivations :
Accès aux sources :
pour vérifier mais c’est rare
pour corriger si le temps ou si pas d’autres solutions
pour gérer la pérennité ou l’interopérabilité
avec les jolis contre exemples de Debian, OpenSSL, TrueCrypt( ?)
Licences contaminantes ou non
Adapaté aux logiciels mais aussi aux données
Communauté d’utilisateurs
Coût d’exploitation
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
4 / 37
Le monde de l’OpenSource à notre niveau
Plus que jamais d’actualités
Android / Linux
OpenStack / docker
open/libre office
Hadoop
Firefox
Apache
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
5 / 37
Le monde de l’OpenSource à notre niveau
Exemple dans la SSI
Architecture robuste : RAID logiciel, LXC, Xen, Keepalived, Heartbeat
Firewall : IPTables, PF, IPF, NuFW
IDS/HIDS/SIEM : prelude, snort, suricata, bro, ossec, OSSIM, ...
Authentification : FreeRadius, OpenLDAP, Shibboleth, ...
Antivirus/antispam/proxy : ClamAV, SpamAssassin, ASSP, squid, ...
Chiffrement : OpenSSL, GPG, OpenVPN, ...
Renforcement OS : SELinux, AppArmor, ...
Audit : OpenVAS, Metasploit, Nikto, Kismet, ...
Supervision : Nagios/Shinken, Cacti, Munin, ...
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
6 / 37
IPTables et PF
Plan
1
Le monde de l’OpenSource à notre niveau
2
IPTables et PF
3
802.1X et NAC
4
Pourquoi maintenant
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
7 / 37
IPTables et PF
Architecture réseau mini-campus
Segmenter en VLAN (même si attaque possible, même si légère
augmentation de la complexité du SI, ...) : chez nous 1 VLAN par
entité juridique disctince ou par service au sein d’une même entité
(plus tous ceux nécessaires au SI lui-même) > 60
Redondance réseau : maillage très fort : 2 à 3 attachements par
équipements (802.1ad, VRRP, STP), stack/chassis, 3 rattachements
data, 2 pour la voix
Filtrage à tout va : ACL réseaux, filtrage machines, filtrage réseaux
Particularités :
Mutliples infogérences chez nos partenaires
Mutliples domaines d’authentification
Double-stack IP v4/v6
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
8 / 37
IPTables et PF
VLAN
Je laisse de côté les problématiques de téléphonies, visioconférence,
reverse-proxy, ...
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
9 / 37
IPTables et PF
VLAN
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
10 / 37
IPTables et PF
VLAN
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
11 / 37
IPTables et PF
VLAN
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
12 / 37
IPTables et PF
Le filtrage IP
Un pare-feu (ou firewall) est un équipement réseau de filtrage agissant au
niveau 2, 3 et 4 du modèle OSI (on parle aussi de firewall de
niv7/applicatif avec le DPI).
Son objectif est d’inspecter puis d’appliquer des politiques sur le trafic
réseau en fonction de divers critères :
Interface d’entréee dans un routeur
Appartenance à un réseau IP
Utilisation d’un protocole de couche transport spécifique
Communication vers des ports / services réseaux précis
Il peut choisir de le détruire, le laisser passer, répondre qu’il n’est pas
intéressé, etc...
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
13 / 37
IPTables et PF
Le filtrage IP
Un filtre à paquets est un programme qui examine l’en-tête des
paquets qui passent, et décide du sort du paquet entier.
Sous Linux, le filtrage de paquets s’effectue au niveau du noyau.
Successeur d’Ipchains (noyau linux 2.2) et Ipfwadm (noyau linux 2.0)
Netfilter : architecture de filtrage IP du noyau
IPTables : application de contrôle de cette architecture
En cours d’évolution vers nftable
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
14 / 37
IPTables et PF
IPtables
Code Listing 1– schéma iptables
Applications
..............
.ˆ.
|
|
|
OUTPUT
INPUT | |−−−−+
+−−−>| |
.ˆ.
\
|
\
|
\
d e c i s i o n de
\
r o u t a g e −−−−−−−−>| |FORWARD−−+
.ˆ.
|
|
V
PREROUTING | |−+
.ˆ.
| | POSTROUTING
|
|
|
V
Interface d ’ entree
I n t e r f a c e de s o r t i e
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
15 / 37
IPTables et PF
IPtables
La commande iptables sert à administrer ces fonctionnalités de filtrage.
Cette commande accepte de nombreuses options. Pour ajouter des règles
de filtrage qui s’applique aux paquets routés, la première forme de la
commande utilisée est :
Code Listing 2– iptables avec une règle simple
iptables −A FORWARD rule
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
16 / 37
IPTables et PF
IPtables
La règle suivante autorise les paquets en provenance de l’adresse ip IpSrc,
port PortSrc et à destination de l’adresse IP IpDst, port PortDst, de
protocole Proto (qui peut être tcp ou udp).
Code Listing 3– iptables avec autorisation
iptables −A FORWARD −p Proto −s IpSrc/Nbm −−sport PortSrc −d IpDst/Nbm −−
dport PortDst −j ACCEPT
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
17 / 37
IPTables et PF
IPtables
La règle suivante bloque les paquets en provenance de IpSrc et à
destination de IpDst, de protocole Proto (qui peut être tcp, udp ou icmp ;
en l’absence de protocole la règle bloquera tous les paquets IP
correspondants).
Code Listing 4– iptables avec refus
iptables −A FORWARD −p Proto −s IpSrc/Nbm −d IpDst/Nbm −j DROP
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
18 / 37
IPTables et PF
IPtables
Lorsqu’une règle est ajoutée avec la commande iptables, elle est
immédiatement active.
Les ports et le protocole sont optionnels. Ainsi on peut simplement
construire un filtre sur des adresses IP (comme les access-list simples
sur cisco).
iptables supporte l’inspection de paquet via des modules optionnels
(par exemple ip conntrack ftp pour le FTP)
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
19 / 37
IPTables et PF
IPtables
Code Listing 5– iptables avec blocage du icmp
# ping −c 1 127.0.0.1
PING 127.0.0.1 (127.0.0.1) : 56 data bytes
64 bytes from 127.0.0.1: icmp\ seq=0 ttl=64 time=0.2 ms
−−− 127.0.0.1 ping statistics −−−
1 packets transmitted , 1 packets received , 0% packet loss
round−trip min/avg/max = 0.2/0.2/0.2 ms
# iptables −A INPUT −s 127.0.0.1 −p icmp −j DROP
# ping −c 1 127.0.0.1
PING 127.0.0.1 (127.0.0.1) : 56 data bytes
−−− 127.0.0.1 ping statistics −−−
1 packets transmitted , 0 packets received , 100% packet loss
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
20 / 37
IPTables et PF
nftable
Amélioration des performances
Gestion des ensembles
Basé sur une pseudo-machine à état
Migration progressive possible
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
21 / 37
IPTables et PF
OpenBSD
Basé sur 4.4BSD, orienté sécurité
Seulement 2 vulnérabilités à distance dans l’installation par défaut en
quasiment 20 ans
Protection de pages mémoires (WX̂, ProPolice, StackGhost, ...)
Protection de certains appels systèmes (strlcpy, ...)
Séparation/révocation de privilèges, ...
Réimplémentation de logiciels (smptd, ntpd, ssh, pf, ...)
Utilisé chez nous depuis la version 3.0, décembre 2001
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
22 / 37
IPTables et PF
PF sur OpenBSD
FreeBSD, NetBSD, DragonFly BSD, Mac OS X, Apple iOS, QNX
Gestion de configuration atomique
ALTQ, gestion des priorités (http>smpt,ipvoice,...)
Pas d’inspection de service (à faire en userland)
Syntaxe lisible, souple et claire
Redondance (HA) via pfsync/CARP
pf + dhcpd pour bloquer les adresses fixées a la main
Exemple de fichier pf.conf
block all pass in on em0 proto tcp from 192.168.0.0/24 to !192.
port 80
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
23 / 37
IPTables et PF
PF sur OpenBSD
Ecriture intéressante :
table <my_network>
192.168.160.0/21, 192.168.199.10
set block-policy drop
pass in quick on proxy inet proto tcp from <proxy_network> to
<fs> port 80
pass in quick on supervision proto udp from <monitor> to <monitoring_network> port 161
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
24 / 37
802.1X et NAC
Plan
1
Le monde de l’OpenSource à notre niveau
2
IPTables et PF
3
802.1X et NAC
4
Pourquoi maintenant
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
25 / 37
802.1X et NAC
Multi-OS et Multi-domaine
Nouvelles contraintes :
Multi-OS (Windows XP/7/8, Linux Ubuntu 12.04/14.04, OSX 10.6+)
Téléphonie IP avec câblage mutualisé
Multi-domaine d’authentification
Zone filaire invitée
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
26 / 37
802.1X et NAC
FreeRadius pour le 802.1X
802.1X
AAA (Authentification : qui me parle ? Authorization : Quelles
autorisations je lui accorde ? Accounting : Que fait-il ?)
Supplicant : le client
Authenticator : le switch dans notre cas
Authentication Server : FreeRadius dans notre cas
FreeRadius
Support EAP (MD5, SIM TLS TTLS, PEAP, MSCHAPv2, ...)
50 dictionnaires vendor-specific
Sait fonctionner avec un backend LDAP,mySQL,SAMBA,PAM,...
Distribution PacketFence dans les cas simples
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
27 / 37
802.1X et NAC
VLAN
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
28 / 37
802.1X et NAC
VLAN
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
29 / 37
802.1X et NAC
Politique de sécurité
Vérification de l’utilisateur
Affectation dynamique du VLAN
Détection de l’OS
En fonction de l’OS, mise en conformité
Mise en conformité via l’antivirus
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
30 / 37
Pourquoi maintenant
Plan
1
Le monde de l’OpenSource à notre niveau
2
IPTables et PF
3
802.1X et NAC
4
Pourquoi maintenant
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
31 / 37
Pourquoi maintenant
Le cloud hybrid et la mobilité
Nouveaux acteurs/concepts : Arista/Cumulus Networks
(commutateurs 10G/bits linux natif), virtualisation du stockage
(NetApp, HDS, ...), Scale-Out NAS
Densité d’équipements, d’OS, de logiciels, de données en explosition
Performance et qualité toujours plus importante
Dynamique des entreprises (rachat, fusion, réorganisation)
Liaison de plus en plus proche entre logiciels/os/réseaux et donc
impact très important sur les équipes en charge (tendance méthodes
agiles voir devops)
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
32 / 37
Pourquoi maintenant
L’automatisation, la seul voie possible
Outils de gestion de configuration/orchestration
Outils très présents dans le monde du développement
Orientés pour l’IT : Puppet, Chef, CfEngine, Saltstack
Exemple avec Saltstack
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
33 / 37
Pourquoi maintenant
SaltStack
Un framework d’exécution à distance (ZMQ/AES256)
Un gestionnaire de configuration centralisé (YAML/jinja2)
Un outil de Cloud Provisionning
Un gestionnaire de machines virtuelles
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
34 / 37
Pourquoi maintenant
SaltStack
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
35 / 37
Pourquoi maintenant
SaltStack
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
36 / 37
Pourquoi maintenant
La continuité d’activité, la valeur ajoutée
Les points forts
Amélioration des performances / possibilté d’évoluer
Travail en production / flexibilité
Travail en maquette
Les évolutions
Liaison plus forte avec l’inventaire (glpi/fusioninventory)
Liaison plus forte avec la supervision (shinken,snmp)
Développement des parties IDS/SIEM
Faire du TDD sur l’infrastructure
Les gros changements à venir (cloud privé/hybrid, explosition des
matériels et données, ...)
Johan Moreau (IRCAD/IHU)
Firewall et NAC OpenSource
3 juin 2014
37 / 37