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