TRC 9 Supervision de réseau. Guillaume Urvoy-Keller urvoy@unice.fr



Documents pareils
Chapitre 7. Le Protocole SNMP 7.1 INTRODUCTION COMPOSANTES POUR L UTILISATION FONCTIONNEMENT LE PAQUET SNMPV1...

Problème physique. CH5 Administration centralisée

SI 5 Cours Supervision Réseau. Guillaume Urvoy-Keller urvoy@unice.fr

SNMP for cloud Jean Parpaillon. SNMP4cloud - 1

Supervision des réseaux

Domain Name System. F. Nolot

Supervision de réseau

Chap.9: SNMP: Simple Network Management Protocol

Surveillance du réseau et de gestion Introduction à SNMP

Plan. Programmation Internet Cours 3. Organismes de standardisation

2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant.

V - Les applications. V.1 - Le Domain Name System. V Organisation de l espace. Annuaire distribué. Définition. Utilisation par le resolver

M Architecture des réseaux

Administration réseau Résolution de noms et attribution d adresses IP

Réseaux. Moyens de sécurisation. Plan. Evolutions topologiques des réseaux locaux

Domain Name System ot ol F. N 1

Master d'informatique. Réseaux. Supervision réseaux

Résolution de noms. Résolution de noms

La couche transport. La couche Transport. La couche Transport et Internet. Cours Réseau Esial 2ème. 5. La couche transport TCP/UDP et les applications

Internet Le service de noms - DNS

Master d'informatique 1ère année Réseaux et protocoles

Gérer son DNS. Matthieu Herrb. tetaneutral.net. Atelier Tetaneutral.net, 10 février

L3 informatique Réseaux : Configuration d une interface réseau

Licence Pro ASUR Supervision Mai 2013

Présentation du modèle OSI(Open Systems Interconnection)

Le service de nom : DNS

DNS pair- à- pair début

Administration Système & Réseau. Domain Name System Historique & Concepts Fonctionnalités & Hiérarchie Requêtes & Base de donnée DNS

L ADMINISTRATION Les concepts

Instructions Mozilla Thunderbird Page 1

DNS. Olivier Aubert 1/27

GENERALITES. COURS TCP/IP Niveau 1

Service de noms des domaines (Domain Name System) Cours administration des services réseaux M.BOUABID,

INTERNET & RESEAUX. Dino LOPEZ PACHECO lopezpac@i3s.unice.fr

Proxy et reverse proxy. Serveurs mandataires et relais inverses

L annuaire et le Service DNS

Firewall IDS Architecture. Assurer le contrôle des connexions au. Sécurité 1

Computer Networking: A Top Down Approach Featuring the Internet, 2 nd edition. Jim Kurose, Keith Ross Addison-Wesley, July ENPC.

Devoir Surveillé de Sécurité des Réseaux

DNS : Domaine Name System

Bind, le serveur de noms sous Linux

Domain Name Service (DNS)

Étude de l application DNS (Domain Name System)

Introduction aux Technologies de l Internet

Nommage et adressage dans Internet

Commerce Electronique. Développement de réseaux. Polycopie 2013/2014. Jalal BOULARBAH

Tunnels et VPN. 22/01/2009 Formation Permanente Paris6 86

The Simple Network Managment Protocol (SNMP)

Cours de sécurité. Pare-feux ( Firewalls ) Gérard Florin -CNAM - - Laboratoire CEDRIC -

Introduction. Adresses

Exemple d application: l annuaire DNS Claude Chaudet

TAGREROUT Seyf Allah TMRIM

Ce cours est la propriété de la société CentralWeb. Il peut être utilisé et diffusé librement à des fins non commerciales uniquement.

B1-4 Administration de réseaux

Réseaux. DNS (Domaine Name System) Master Miage 1 Université de Nice - Sophia Antipolis. (second semestre )

Installation d'un serveur RADIUS

Firewall. Souvent les routeurs incluent une fonction firewall qui permet une première sécurité pour le réseau.

LINUX - Sécurité. Déroulé de l'action. - 3 jours - Contenu de formation

L'AAA, késako? Bruno Bonfils, fr.org>, Novembre Sous ce terme d'apparence barbare est regroupé l'ensemble des concepts suivants :

Plan. École Supérieure d Économie Électronique. Plan. Chap 9: Composants et systèmes de sécurité. Rhouma Rhouma. 21 Juillet 2014

Domaine Name System. Auteur: Congduc Pham, Université Lyon 1. Figure 1: Schéma des salles TP11 et TD4

Réseaux - Cours 4. Traduction d adresse (NAT/PAT) et Service de Nom de Domaine (DNS) Cyril Pain-Barre. IUT Informatique Aix-en-Provence

SIP. Plan. Introduction Architecture SIP Messages SIP Exemples d établissement de session Enregistrement

Sécurité et Firewall

Procédure d utilisation et de paramétrage (filtrage) avec IPFIRE

Domain Name Service (DNS)

Active Directory. Structure et usage

Les clés d un réseau privé virtuel (VPN) fonctionnel

A. À propos des annuaires

Linux. Sécuriser un réseau. 3 e édition. l Admin. Cahiers. Bernard Boutherin Benoit Delaunay. Collection dirigée par Nat Makarévitch

Utiliser Améliorer Prêcher. Introduction à LDAP

TP de réseaux : Domain Name Server.

LAB : Schéma. Compagnie C / /24 NETASQ

Services Réseaux - Couche Application. TODARO Cédric

Daniel POULIN DRT 3808 (version 2010) Faculté de droit, Université de Montréal

Protocoles utilisant des mécanismes d'authentification: TACACS+, RADIUS et Kerberos

Fonctionnement de Iptables. Exercices sécurité. Exercice 1

DNS ( DOMAIN NAME SYSTEM)

RESEAUX TCP/IP: NOTIONS AVANCEES. Preparé par Alberto EscuderoPascual

Installation Serveur DNS Bind9 Ubuntu LTS

et Active Directory Ajout, modification et suppression de comptes, extraction d adresses pour les listes de diffusion

SQUID P r o x y L i b r e p o u r U n i x e t L i n u x

Mise en place Active Directory / DHCP / DNS

TER SUPERVISION RESEAU

BAP E Gestionnaire de parc informatique et télécommunications MI2 / MI3 Ouverts au titre de 2010 Arrêté du 7/04/10 - J.

IPFIX (Internet Protocol Information export)

LOSLIER Mathieu. Filière Informatique et Réseau 1 ère année. TP DNS. Responsable : LOHIER Stephane. Chargé de TD : QUIDELLEUR Aurélie

BIND : installer un serveur DNS

La haute disponibilité de la CHAINE DE

Installer un domaine DNS

Serveurs de noms Protocoles HTTP et FTP

Sur un ordinateur exécutant Windows 2000 Server Ayant une adresse IP statique

Réseaux IUP2 / 2005 DNS Système de Noms de Domaine

Outils d'analyse de la sécurité des réseaux. HADJALI Anis VESA Vlad

Rappels réseaux TCP/IP

Télécommunications. IPv4. IPv4 classes. IPv4 réseau locaux. IV - IPv4&6, ARP, DHCP, DNS

Installation du point d'accès Wi-Fi au réseau

Résolution de noms. Résolution de noms

Transcription:

TRC 9 Supervision de réseau Guillaume Urvoy-Keller urvoy@unice.fr

Plan de cours SNMP DNS DHCP Authentification : LDAP PAM

SNMP 3

Inspiré du cours TRC9 de Pierre Mathieu et... A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify, and delete slides (including this one) and slide content to suit your needs. They obviously represent a lot of work on our part. In return for use, we only ask the following: If you use these slides (e.g., in a class) in substantially unaltered form, that you mention their source (after all, we d like people to use our book!) If you post any slides in substantially unaltered form on a www site, that you note that they are adapted from (or perhaps identical to) our slides, and note our copyright of this material. Thanks and enjoy! JFK/KWR Computer Networking: A Top Down Approach, 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April 2009. All material copyright 1996-2009 J.F Kurose and K.W. Ross, All Rights Reserved 4

Un exemple le réseau Unice Surveillance par MRTG Visualisation Dynamique Résultat qualitatif public Résultat de surveillance réservé au CRI http://nephi.unice.fr/router/ 5

Plan Qu'est-ce que la supervision de réseau? Le modèle Internet - SNMP Structure of Management Information: SMI Management Information Base: MIB Le protocole de transport SNMP La sécurité La couche présentation ASN.1 6

Le modèle SNMP Définitions: Entités : Manager Agents MIB : les données 7

v Source : A. Pras Université de Twente - The Simple Web 8

Les standards OSI CMIP Common Management Information Protocol Conçu dans les années 1980 Standardisation trop lente pas adopté par le marché SNMP: Simple Network Management Protocol Vient du monde Internet : successeur de SGMP (Simple Gateway Management Protocol) Objectif modeste ( usine à gaz CMIP) Déploiement et adoption rapide Standard actuel: SNMP V3 Standard de facto 9

SNMP : 4 parties clefs Management information base (MIB): Information distribuée stockée sur les équipements gérés Structure of Management Information (SMI): Langage de définition des objets de la MIB Le protocole SNMP communication gestionnaire objets gérés Sécurité Communautés en SNMPv1 et v2, les vues Ajout principal de SNMPv3 Remarque : SNMP est le nom du protocole pour le transfert de données et le nom global de la solution de gestion de réseau 10

SMI: langage de définition des données Objectif: syntaxe, sémantique non ambigüe des données Types de base: Voir colonne droite OBJECT-TYPE Type de données, statut, sémantique MODULE-IDENTITY Groupement d'objets en relation entre eux (par ex. liés à un appareil ou un protocole) dans un module de la MIB Types de base INTEGER Integer32 Unsigned32 OCTET STRING OBJECT IDENTIFIED Ipaddress/NetworkAddress Counter32 (ne peut que monter) Counter64 Gauge32 (monte/descend) Time Ticks (10ème de seconde) Opaque SEQUENCE OF SEQUENCE 11

SNMP MIB Module MIB spécifié via SMI MODULE-IDENTITY (100 MIBs standardisées, plus encore spécifiques aux fournisseurs de matériels/logiciels) MODULE OBJECT TYPE: OBJECT TYPE: OBJECT TYPE: Objets spécifiés via SMI et le constructeur OBJECT-TYPE 12

SMI: Exemple d' objets et de modules OBJECT-TYPE: ipindelivers ipindelivers OBJECT TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION The total number of input datagrams successfully delivered to IP userprotocols (including ICMP) ::= { ip 9} MODULE-IDENTITY: ipmib ipmib MODULE-IDENTITY LAST-UPDATED 941101000Z ORGANZATION IETF SNPv2 Working Group CONTACT-INFO Keith McCloghrie DESCRIPTION The MIB module for managing IP and ICMP implementations, but excluding their management of IP routes. REVISION 019331000Z ::= {mib-2 48} 13

Exemple de MIB : le module UDP Object ID Name Type Comments 1.3.6.1.2.1.7.1 UDPInDatagrams Counter32 total # datagrams delivered at this node 1.3.6.1.2.1.7.2 UDPNoPorts Counter32 # underliverable datagrams no app at portl 1.3.6.1.2.1.7.3 UDInErrors Counter32 # undeliverable datagrams all other reasons 1.3.6.1.2.1.7.4 UDPOutDatagrams Counter32 # datagrams sent 1.3.6.1.2.1.7.5 udptable SEQUENCE one entry for each port in use by app, gives port # and IP address 14

Nommage SNMP question: comment nommer tous les objets standards (protocoles, données, etc.) de tous les standards réseaux?? réponse: Arbre hiérarchique de l'iso : Chaque branchement à un nom et un numéro 1.3.6.1.2.1.7.1 ISO ISO-ident. Org. US DoD Internet udpindatagrams UDP MIB2 management 15

Arbre OSI (SMIv2) Ccitt(0) Iso (1) Iso-ccitt(2) standard Autorité enreg. Membre (2) Org.identifiée(3) Internet (1) Dod (6) Répertoire (1) Admin.(2) Expérimental (3) Privé (4) Sécurité (5) Snmpv2(6) Mib-2 (1) System (1) Interfaces (2) Addr.trans (3) IP (4) Icmp (5) TCP (6) Udp (7) Egp (8) Transmission (10) Exemple (11) IP IP = 1.3.6.1.2.1.4 http://www.alvestrand.no/objectid/ http://wwwsnmp.cs.utwente.nl/ietf/mibs/ 16

Les MIBs d'un agent Tout équipement doit implanter la MIB-2, i.e. gérer les objets de cette MIB (RFC 1213) : Statistiques sur les interfaces (vitesse, MTU, octets envoyés/reçus, etc.) Informations sur le système : localisation, contact En plus de la MIB-2, un agent implantera : Des MIBs standardisées supplémentaires Ex : BGP version 4 MIB (RFC 1657), RADIUS Authentication Server MIB (RFC 2619) Des MIBS propriétaires 17

Les MIBs d'un agent Une MIB importante, la MIB RMON RMON = Remote Monitoring Fournit des statistiques niveau réseau et application plus fines que dans MIB 2 Une partie de la MIB2 montrée à droite Source : SimpleWeb 18

Les MIBs propriétaires Dans l'arbre général, un sous arbre est dédié aux entreprises iso.org.dod.internet.private.entreprises (1.3.6.1.4.1) Dans ce sous arbre, les entreprises ont chacune un numéro (demandé à l'iana Internet Assigned Numbers Authority) Ex : CISCO a le numéro 9 iso.org.dod.internet.private.entreprises.cisco 1.3.6.1.4.1.9 19

Savoir lire une MIB Ex : objet interface MIB 2 Un objet fait d'une séquence de type IfEntry 20

Savoir lire une MIB Ex : objet interface MIB 2 Une liste = une structure, mais pas un objet. Une colonne... 21

Savoir lire une MIB Ex : objet interface MIB 2 IfTable : table dont les colonnes sont définies par IfEntry Attention aux majuscules/minuscules IFTable non accessible!!! et obligatoire (mandatory en anglais) IfEntry : définit une liste d'objets en colonne ifentry : définit les lignes effectives d'iftable non accessible On accède à une ligne par un index : ifindex 22

En pratique iftable avec un agent dans un PC Windows et manager en Mac OSx 23

Le protocole SNMP Deux façons de transférer l'information et les commandes Manager Manager requête réponse Msg trap agent data agent data Appareil géré Appareil géré Mode requête/réponse Mode trap 24

Le protocole SNMP : les types de message Type de message GetRequest GetNextRequest GetBulkRequest* Fonction Mgr agent: donne moi les données (instance unique,suivant dans la liste, bloc) InformRequest* Mgr Mgr: voici une valeur de la MIB SetRequest Mgr agent: assignation valeur Response Agent mgr: valeur, réponses aux requêtes * SNMP v2 et v3 seulement Trap Agent mgr: informe manager d'un événement exceptionnel 25

Le protocole SNMP : format des message 26

Communications Agent/Manager Ports UDPs 161 et 162 utilisés 27

Contrôle d accès SNMP Communauté SNMP (v1 et v2c) Sert de mot de passe, mais en clair sur le réseau (!) Est associée à des droits : read-only, read-write Chaque communauté snmp peut limiter les accès à des objets notion de vues Valeurs par défaut communément utilisées public : read-only private : read-write Valeurs à changer au plus vite... Il existe un «authentication trap» pour savoir si quelqu'un a essayé de se connecter avec un mauvais mot de passe Requetes 28

Contrôle d'accès Versions de SNMP V1 : tout en clair V2 : Seule version mise en œuvre v2c (c = communauté) Passage au SMIv2 Entiers 64bits Amélioration des requêtes Mode Bulk : récupération de tableau d'un coup Acquittement de INFORM TRAP non acquitté V3 : Authentification et cryptage Peu d'implémentations? HP Open View ne supporte pas Méthode lourde Très intéressant pour la modification (écriture) 29

Sécurité SNMP chiffrement: message SNMP chiffré avec DES authentification: calcule et envoie de MIC(m,k): calcul d'un hash (MIC) sur le message (m) avec une clef secrète partagée protection contre le playback: utilisation de nonce Contrôle d'accès par vues EntitéSNMP maintient une base de données des droits d'accès et des politiques pour différents utilisateurs Cette base de données est elle-même un objet géré (dans la MIB) 30

La pratique Pour une variable scalaire simple, on fait un get en ajoutant à la fin.0 Get next pour obtenir élément suivant : Commande snmpwalk (du package Net-SNMP) sous machines unix pour parcourir un sous arbre Ex : voir ex précédent sur table iftable 31

La pratique Obtenir la description d'un objet : snmptranslate IR : permet de ne pas donner le chemin absolu Td : détails 32

Les Traps Envoyés par l'agent Sans accusé de réception Trois types : Traps génériques 33

Les Traps Trap propriétaires Inclus dans la MIB propriétaire Ex : pour CISCO iso.org.dod.internet.private.enterprises.cisco.specifi c-trap-number Trap de MIB non propriétaires Ex : MIB RDBMS (bases de données relationnelles) RFC 1697 34

Les Traps Trap lié à une variable : 35

Les Traps Recevoir les traps avec net-snmp 36

Configuration d'un agent Important de configurer SysLocation SysContact SysName Communautés Read-write et Read-only Et limiter les adresses IP desquelles on (le manager) peut se connecter Destination trap 37

Les notifications Similaires aux trap mais avec un accusé de réception En v2, v3 seulement Les variables remplacées par OBJECTS OID : iso.org.dod.internet.snmpv2.snmpmodules.snmpmib.s nmpmibobjects.snmptraps.linkdown. 38

RMON RMON permet de spécifier des évènements et des alarmes Cela permet de dire à l'agent de surveiller des variables et de prendre les actions appropriées qui peuvent être : Copie dans un log Envoie d'un TRAP Les évènements sont stockés dans la MIB ellemême Cela décharge le manager du pooling continuel 39

RMON NMS = Network Manager Station 40

RMON Mise en oeuvre sur appareil CISCO 1 on définit les évènements Qui apparaissent dans la MIB 41

RMON 2 on crée des alarmes qui vont être associés aux évènements 42

ASN.1 Une couche présentation Question : comment transférer de l'information entre des entités très diverses : une machine, un point d'accès, un routeur de marques différentes, d'architecture matérielles différentes et avec des OS différents? Exemple : comment être sûr qu'un ensemble de bits interprétés comme un entier sur un agent le sera de la même manière sur un manager??? il faut une couche de présentation qui soit la même pour toutes les entités 43

Le problème de la présentation Q: est-ce qu'une copie de mémoire à mémoire (par ex. agent manager) resoudrait le problème?problem? A: pas toujours! struct { char code; int x; } test; test.x = 256; test.code= a test.code test.x a 00000001 00000011 test.code test.x a 00000011 00000001 Format machine 1 Format machine 2 problème: différents formats de donnés (par ex. 16, 32 bits) et différents conventions de stockage des données (par ex. bit de poids fort à droite ou à gauche) 44

ASN.1: Abstract Syntax Notation 1 Une représentation des données indépendante de l'architecture Standard ISO X.680 Utilisé par SNMP mais aussi H.323 et d'autres protocoles Définit des types d'objets comme SMI BER: Basic Encoding Rules Spécifie comment les objets définis en ASN.1 doivent être transmis Chaque objet transmis à : un Type, une Longueur et une Valeur (TLV) 45

Encodage TLV Idée: les données transmises se reconnaissent d'elles mêmes. T: type de données, l'un de ceux d'asn.1 L: longueur en octets V: valeur des données, encodées en ASN.1 Valeur Type 1 2 3 4 5 6 9 Boolean Integer Bitstring Octet string Null Object Identifier Real 46

Encodage TLV Exemple Value, 259 Length, 2 bytes Type=2, integer Value, 5 octets (chars) Length, 5 bytes Type=4, octet string 47

TRC 9 Supervision de réseau LDAP Guillaume Urvoy-Keller urvoy@unice.fr

Sources document Cours Pierre Mathieu TRC9 Tutoriel LDAP L. Mirtain 1999 UNIX AND LINUX SYSTEM ADMINISTRATION HANDBOOK Nemeth et al. Prentice Hall 2011 2

Introduction Entreprises utilisant Linux et Unix ont besoin de distribuer des données : Email Téléphone Comptes unix Solution incontournable : LDAP Lightweigth Directory Access Protocol Standardisé par IETF Dans le monde Windows, Active Directory, pour 3 gérer les machines et les comptes basé sur LDAP

Introduction Caractéristiques d'un annuaire et des données qu'on y stocke Les données sont petites en taille Les données sont souvent répliquées L'information se décrit sous forme d'attribut Les données sont fréquemment lues et rarement modifiées La recherche est l'opération la plus fréquente (par opposition aux bases de données classiques...) 4

Exemple d'annuaire Le DNS Correspondance nom/domaine distribuée LDAP pour maintenir des informations sur les utilisateurs dans une entreprise Souvent pour permettre le login Permet aussi aux clients mail de compléter les noms LDAP fait pour interfacer avec pleins d'applications 5

LDAP Applications clientes 6

Exemple d'informations stockées Un exemple typique d'une entrée dans /etc/passwd exprimée sous forme LDAP (Version simplifiée) 7

Exemple d'informations stockées Dans l'exemple précédent : Les données sont entrées sous un format qu'on appelle LDIF Les données sont stockées dans la base LDAP sous une forme différente Mais la possibilités de convertir dans les deux sens Base de données LDIF est une des clefs du succès de LDAP 8

Exemple d'informations stockées Les entrées LDAP sont organisées de manière hiérarchique avec un identifiant unique par entrée appelé dn Données organisées en arbre dn donne chemin dans l'arbre dc=navy, dc=mil : schéma typique où on utilise le domaine DNS pour définir la racine, ici 9 navy.mil

LDAP en détail Un service d'annuaire électronique, c'est en plus... un protocole qui permet l'accès au contenu une syntaxe qui permet d interroger la base Des techniques d'authentification, de chiffrement et de contrôle de l'accès aux données 10

Historique X.500 Standard conçu par les opérateurs télécom pour interconnecter leurs annuaires téléphoniques. Destiné à devenir LE service d annuaire GLOBAL distribué, normalisé et fédérateur. Mais conçu aussi pour répondre à tout type de besoin d annuaire grâce à un modèle de données de type objet et extensible. Echec du fait de la nécessité d utiliser les protocoles ISO et des logiciels très lourds, et du fait de l essor de TCP/IP... 11

12

Historique 13

Historique Voir site IETF pour RFC plus récentes 14

LDAP LDAP définit : le protocole -- comment accéder à l information contenue dans l annuaire, un modèle d information -- le type d information contenu dans l annuaire, un modèle de nommage -- comment l information est organisée et référencée, un modèle fonctionnel -- comment on accède à l information, un modèle de sécurité -- comment données et accès sont protégés, un modèle de duplication -- comment la base est répartie entre serveurs, LDIF -- un format d échange de données. back-up notamment 15

LDAP le protocole 16

LDAP le protocole 17

LDAP le protocole 18

LDAP le modèle d'information Définit le type de données pouvant être stockées dans l annuaire. L entrée (Entry) = élement de base de l annuaire = les informations sur un objet de l annuaire. Ces informations sont représentées sous la forme d attributs décrivant les caractéristiques de l objet. Les objets et les attributs appartiennent à des classes d'objets/attributs normalisées. Le schéma de l annuaire définit la liste des classes d objets qu il connaît. 19

Les attributs 20

Les classes d'objets 21

Les classes d'objets Une entrée va héritée d'une ou de plusieurs classes A la mode des langages objets. Les classes elles-mêmes sont organisées en une hiérachie 22

Les classes d'objets 23

Les classes d'objets 24

Les classes d'objets 25

Normalisation objets/attributs 26

Exemple objet/attribut 27

Attention!!! Vous ne modifiez pas les objets et les attributs Il y en suffisamment de normalisés pour répondre à vos besoins Par contre, vous créez votre hiérarchie des données où chaque entrée aura une ou plusieurs classes et donc plusieurs attributs! 28

Organisation des données dans la base 29

Organisation des données dans la base 30

Comment nommer une entrée 31

Choix du suffixe de la base 32

33

La base LDAP peut-être distribuée 34

Le modèle fonctionnel = comment interroger la base 35

Interrogation LDAP 36

Exemple Machine h sur port p (389 = port par défaut) On cherche tout ce qui a un cn commençant par ned Mot de passe sera demandé en interactif Mot de passe de l'utilisateur donné par D 37

Exemple 38

Mises à jour 39

Accès au serveur et aux données 40

Accès au serveur et aux données 41

Authentification 42

Authentification 43

Le contrôle d'accès 44

Le contrôle d'accès 45

Le chiffrement LDAPs ou LDAP avec TLS LDAPs SSL sur port dédié LDAP avec TLS SSL mais sur le même port On démarre SSL à la volée si le client le demande 46

Format d'échange des données 47

Format d'échange des données 48

Format de stockage dans LDIF 49

Les URLs LDAP 50

51

Slapd : LDAP daemon 52

53

54

55

PAM: Pluggable Authentication Module Spécifique à Unix De nombreuses commandes (ex: passwd) ou démons ont besoin d'authentifier l'utilisateur Au «bon vieux temps» Lecture du fichier /etc/passwd Problème : changement de format de ce fichier ou utilisation de NIS (base de données centralisée des mots de passe) demande de ré-écrire et recompiler tous ces programmes/démon 56

PAM Idée derrière PAM : une librairie dynamique pour les commandes/démons et un fichier de config par commande/démon. Délégation de l'authentification Seul le fichier de config (texte) doit être modifié plus de recompilation! Comment savoir si une commande est pamifiée : ldd cmd grep pamlib.so 57

Un programme par application 58

PAM : fichier de config Stockés dans le repertoire /etc/pam.d. Un fichier contient 3 parties en général : passwd, auth, session, account Chaque partie contient des lignes du type auth sufficient pamrootok.so En fin de ligne, on trouve un module PAM qui va retourner : succès ou erreur Le «control-flag» qui vaut sufficient, required,requisite, optional, etc A chaque invocation, retour d'une seule valeur : succès ou erreur 59

60

Architecture PAM : les modules Les modules implémentent les fonctions d'authentification, de vérification des droits d'accès. Il faut regarder leur documentation (Linux PAM Website) 61

PAM dans le système Unix 62

PAM : les règles Règles : si un sufficient Succès global Si aucun sufficient, tous les required doivent réussir Requisite : si on échoue échec global A retenir : PAM peut utiliser pam ou kerberos pour l'authentification Modules pam.ldap ou pam.krb 63

PAM : exemple Partie Auth ci-dessous Si utilisateur root c'est bon Timestamp si authentification gardée en cache, alors c'est bon aussi Sinon, doit remplir les conditions de system-auth 64

TRC 9 Supervision de réseaux Pare-feux Guillaume Urvoy-Keller urvoy@unice.fr

Qu'est-ce-qu'un pare-feu? Un point de contrôle du trafic Interconnecte des réseaux avec des niveaux de confiance différents Travaille au niveau IP ou au dessus Peut : (souvent) fournir la fonction NAT (parfois) implanter les VPNs IPSec 2

Pare-feu : objectifs en général Contrôle des services accédés Filtrage sur adresse IP, protocole, ou numéro de port Service de proxy pour certains services (Web, mail) Contrôle direction : vers l'extérieur ou depuis l'intérieur Un sous réseau peut accéder ou être interdit, etc. Contrôle utilisateur : ceux de l'entreprise sur le site ou hors site Contrôle comportementale : par ex, filtrage spam 3

Limitations des pare-feux en général Ne peut pas protéger des attaques qui le contournent Service sécurisés, ex. SSL/SSH : si service accepté, le pare-feu ne peut rien faire de plus Ne peut pas protéger le réseau interne des attaques venant de l'interne Ex: un employé connecte un portable vérolé, etc. Ne peut pas protéger des accès au réseau Wifi 4

Pare-feu niveau paquet Les plus simples, les plus rapides Examinent chaque paquet IP, indépendamment des autres, et laisse passer ou pas Restreignent accès aux services en tant que numéro de port Ex: on laisse passer tout le trafic sur le port 80, 8080, 443 en TCP. Skype peut utiliser le port 80 TCP... Politique par défaut : 1- Rejeter tout ce qui n'est pas autorisé 2- Accepter tout ce qui n'est pas interdit (attention...) 5

Firewalls Packet Filters 6

Firewalls Packet Filters 7

Attaques sur les pare-feu niveau paquet Spoofing adresse IP Adresse source du paquet est une adresse interne Le pare-feu laisse passer Pas de chance, le paquet était un exploit Fragmentation paquet Découpage paquet en plein de petits segments L'en-tête TCP n'est plus localisable car ne tient plus dans un paquet Suivant la politique du pare-feu, peut accepter paquet... 8

Pare-feux à états Analyse paquet par paquet mais en gardant un contexte, un état Par exemple, vérifie si un ack correspond à une connexion établie Ces pare-feux raisonnent au niveau connexion Ils peuvent même analyser le contenu des segments analyse de niveau applicatif 9

Pare-feux à états 10

Pare-feux - passerelles applicatives (proxy) Passerelle/proxy pour certaines applications Accès complet au protocole (car implémenté dans le pare-feu) Les utilisateurs font une demande d'accès au service proxy valide la requête comme légale (ou pas) Besoin d'un proxy par service Complexité/charge pare-feu augmente en fonction du nombre de services en mode proxy et du nombre d'utilisateur 11

Pare-feux passerelles applicatives (proxy) 12

Pare-feu passerelle de niveau circuit Même idée que passerelles applicatives : deux connexions TCP entre extérieur/pare-feu et pare-feu intérieur Sécurité consiste à décider quelles connexions peuvent être établies Une fois créée n'examine pas le trafic Utilisé souvent lorsque les utilisateurs internes accèdent à des services extérieurs Outil SOCKS est très utilisé pour ce besoin 13

Sock Un serveur tourne sur le pare-feu Port TCP 1080 Les clients utilisent des librairies pour «sockifier» les applications clients Par exemple, ftp saura qu'il devra interférer avec le serveur sock Le client sait qu'il doit s'authentifier au serveur sock 14

Firewalls - Circuit Level Gateway 15

Bastion Vocabulaire Système très sécurisé Offre services pare-feu circuit ou proxy pour toutes les applications Peut être vu comme un point de contrôle de niveau applicatif pour l'administrateur réseau Par exemple, on offre SMTP, HTTP, DNS et c'est tout 16

Pare-feu machine Module logiciel pour sécuriser une machine individuelle Tous les OS offrent des pare-feux nativement ou installables en tant que module Souvent utilisés sur serveurs (?) Avantages: Les règles de sécurité peuvent être personnalisées pour un service définit Niveau de protection complémentaire au pare-feux matériels 17

DMZ (De- Militerized Zone) 18

Virtual Private Networks 19

Les IDS IDS : Intrusion Detection System Ex: (voir TP) snort Les pare-feu ne peuvent pas tout contrôler Surveillance continuelle du réseau avec IDS Analyse du contenu applicatif des paquets Détecte Les paquets «bizarres» Ex : chaine de caractère correspondant à un virus Corrélation entre paquets Ex: port scanning (tests de ports des serveurs pour connaître les services offerts) Ne décide pas si les paquets rentrent ou pas mais lève des alertes 20

IDS En général, de multiples capteurs IDS qui font des vérifications différentes application gateway firewall Internet internal network IDS sensors Web server FTP server DNS server demilitarized zone 21

TRC 9 Supervision de réseaux Service DNS Guillaume Urvoy-Keller urvoy@unice.fr

DNS: Domain Name System Base de données distribuée implantée par une hiérarchie de serveurs de noms Protocole de niveau applicatif Protocole client/serveur Suite de requêtes/réponses Utilise UDP comme couche transport Port : 53 UDP est suffisant car requêtes/réponses tiennent dans un datagramme Avec TCP, il faudrait établir la cx perte de temps! Si requête (ou réponse perdue) le client réémet au bout d un certain temps Sur windows/unix, commande nslookup 2

Services DNS Traduction nom adresse IP www.truc.com 121.7.106.32 Alias de machines Noms canoniques, alias Ex: une entreprise achète un gros serveur qu elle nomme grosserveur.entreprise.com Grosserveur.entreprise.com est le nom canonique Ce serveur est le serveur de mail de l entreprise alias mail.entreprise.com pour grosserveur.entreprise.com Ce serveur est le serveur web aussi alias www.entreprise.com pour grosserveur.entreprise.com 3

Services DNS Alias des serveurs de mail Vous utilisez copain@truc.com quand vous écrivez un mail Truc.com est un nom de domaine Le DNS permet de trouvez le serveur de mail pour un domaine Par exemple truc.com aura pour serveur de mail mail.truc.com On résoud ensuite l adresse IP de mail.truc.com 4

Services DNS Distribution de charge Ex: serveurs Web repliqués : ensemble d adresse IP correspondant à un même nom canonique www.google.com correspond en fait à plusieurs serveurs physiques, donc plusieurs adresses IP 5

Services DNS Distribution de charges (suite) Si vous faites plusieurs requêtes à la suite sur google.com, l ordre des adresses change permet de répartir la charge car votre client prend la première adresse 6

Base de données hiérarchique, distribuée Serveur DNS racine (root) Serveurs DNS com Serveurs DNS org Serveurs DNS edu Serveurs DNS yahoo.com Serveurs DNS Amazon.com Serveurs DNS w3.org Serveurs DNS mit.edu Serveurs DNS stanford.edu Client DNS de votre machine veut obtenir l IP de amazon.com (1 ère approximation!) client interroge le serveur racine pour trouver un serveur pour com client interroge un serveur DNS pour com pour trouver un serveur pour amazon.com client interroge un serveur DNS amazon.com pour avoir l IP de www.amazon.com 7

3+1 classes de serveurs DNS Serveurs Racines: 13 dans le monde Le saint des saints! «Root servers» en anglais Serveurs de domaine de premier niveau «TLD (top level domain) servers» en anglais Serveurs ayant autorité sur un domaine «Authorized servers» en anglais Serveur local Géré par l entité qui vous fournit l accès Internet Adresse serveur local fournit à la configuration de la machine Ne font pas stricto sensu partie de la hiérarchie mais servent de point d entrée pour les clients DNS des machines Mais souvent, serveur local est un serveur ayant autorité 8

DNS: Les serveurs DNS racines Contactés par les serveurs DNS locaux lorsqu ils ne savent pas traduire un nom Serveur DNS racine: Le serveur racine connait la traduction ou connait un serveur ayant autorité! e NASA Mt View, CA f Internet Software C. Palo Alto, CA (and 36 other locations) a Verisign, Dulles, VA c Cogent, Herndon, VA (also LA) d U Maryland College Park, MD g US DoD Vienna, VA h ARL Aberdeen, MD j Verisign, ( 21 locations) k RIPE London (also 16 other locations) i Autonomica, Stockholm (plus 28 other locations) m WIDE Tokyo (also Seoul, Paris, SF) 13 serveurs racines dans le monde b USC-ISI Marina del Rey, CA l ICANN Los Angeles, CA 9

TLD and Authoritative Servers Top-level domain (TLD) servers: responsables de com, org, net, edu, int, etc, et de toutes les extensions de nom de pays Ex: l entreprise Network Solutions maintient des serveurs pour le TLD com Educause pour le TLD edu Authoritative DNS servers: Serveurs DNS d organisations qui fournissent la traduction nom/adresse IP pour les serveurs de ces organisations (ex: Web, mail). Les serveurs sont opérés par l organisation elle-même ou un fournisseur de service (entreprise privée) 10

Exemple de résolution de nom La machine cis.poly.edu veut l adresse IP de gaia.cs.umass.edu Requête itérative 9 Le serveur contacté répond avec un serveur plus bas dans la hiérarchie ( plus près ) à contacter 9 Cela veut dire qu il fournit l adresse IP du serveur à contacter et pas le nom de ce serveur local DNS server dns.poly.edu 1 2 8 Machine initiant la requête DNS cis.poly.edu root DNS server 3 4 5 7 TLD DNS server 6 authoritative DNS server dns.cs.umass.edu gaia.cs.umass.edu 11

Exemple de résolution de nom root DNS server Requête récursive : 2 3 9 On demande au serveur suivant de chercher luimême 7 6 TLD DNS server 9 Ce faisant, on augmente sa charge de travail! 9 En général, la requête est itérative 9 Sauf entre la machine qui initie et son serveur local (voir transparent précédent) local DNS server dns.poly.edu 1 8 Machine initiant la requête DNS cis.poly.edu 5 4 authoritative DNS server dns.cs.umass.edu gaia.cs.umass.edu 12

DNS: mise en cache des réponses A chaque fois qu un serveur apprend une traduction, il la stocke On dit qu il la cache Les entrées cachées ont une période d expiration après cette période, le serveur les détruit Les serveurs de noms locaux cachent les adresses IP des serveurs TLD Ainsi, les serveurs root sont moins souvent visités 13

Enregistrements DNS DNS: base de données distribuée Base de données : collection de données ayant une structure similaire Par exemple : (nom, numéro de téléphone) Ces données sont appelées enregistrements (records en anglais) Pour le cas du DNS, on parle de resource record ou RR Distribuée : les RR sont distribués sur un ensemble de machines physiques (les serveurs DNS) 14

Enregistrements DNS RR format: (nom, valeur, type, ttl) 9 Type=A nom = machine valeur = addresse IP 9 Type=NS 9 Type=CNAME nom =alias valeur = nom canonique (réel) www.lemonde.fr est réellement www.lemonde.edgesuite.net 4 nom = domain (e.g. unice.fr) 4 valeur = nom du serveur DNS ayant autorité sur le domaine 9 Type=MX valeur est le nom du serveurde mail associé au nom 15

Comment insérer des enregistrements dans le DNS? Exemple: une jeune pousse (startup) Network Utopia Etape 1: fait enregistrer le nom networkuptopia.com auprès d une entité accréditée appelée DNS registrar (e.g., Network Solutions) NetworkUtopia doit fournie les noms et les adresses IP de serveurs de nom (un primaire, un secondaire) ayant autorité pour son domaine registrar introduit les RRs correspondant dans le serveur TLD com : (networkutopia.com, dns1.networkutopia.com, NS) (dns1.networkutopia.com, 212.212.212.1, A) Etape 2: insertion par Network Utopia d un RR de Type A pour www.networkuptopia.com et de Type MX pour networkutopia.com dnas SON serveur ayant autorité 16

Mise en œuvre DNS Côté client Le «resolver» (résolveur) Son seul rôle est d'interroger le serveur DNS local Coté serveur démon «named» de la suite logicielle bind (la plus populaire plus de 60% des serveurs) Fichier contenant la base de données pour la ou les zones sur lesquels le serveur a autorité 17

Zones La racine est notée avec un ''.'' Important, comme le ''/'' dans un chemin de fichier!! 18

Zones vs domaines Le domaine est une partie de l'arbre global La zone est ce dont un serveur est responsable Ex : le serveur en charge de la zone ca connait les @ IP des serveurs qui gèrent les zones : ab.ca on.ca qc.ca 19

Zones et zones inverses Un être humain préfère voir des noms que des adresses IP on maintient une zone dite inverse Cette zone est attachée à la hiérarchie DNS La zone inverse est hiérarchique, comme la zone directe on doit inverser l'ordre des octets des adresses 20

Fichiers de zone On y trouve : Les enregistrements SOA (Start of Authority) movie.edu : nom du domaine IN : Internet (valeur par défaut) Terminator.movie.edu : nom du serveur al.robocop.movie.edu al@robocop.movie.edu : personne à contacter Autre infos pour le serveur esclave 21

Fichiers de zone TTL : valeur globale que les clients DNS devront utiliser pour tous les résultats obtenus depuis le serveur NS record: Serveur ayant autorité Celui du SOA puis au moins un autre... 22

Fichiers de zone Adresses IP et Alias 23

Fichiers de zone Serveurs de mail Enregistrements MX On peut en spécifier plusieurs et mettre des priorités 24

Fichiers de zone inverse 25

Zone inverse 26

Fichier de config global Indique pour quelles zones le serveur est primaire (ou secondaire) 27

Serveur esclave 28

Serveur secondaire Numéro de série donné par primaire pour le fichier de base Paramètre : quand le téléchargement se fait dans le primaire 29

Les autres fichiers d'un serveur Connaissance des @ IP des serveurs root (db.root) Fichiers pour loopback (db.127) etc. 30

Configuration client linux Fichier /etc/resolv.conf Mis à jour par DHCP ou manuellement Domaine domaine par défaut ajouté si nom n'est pas complet, ex : ftp kheops et non ftp kheops.unice.fr Nameserver : si plusieurs, essaie dans l'ordre avec des timeouts 31

Et pour finir... (côté serveur) Notion de forwarder : si vous voulez que les requêtes allant vers l'extérieur passe par un serveur spécifique Distribution de charge Fait automatiquement si plusieurs champs avec même nom et IP différentes 32

Et pour finir (côté client) Que se passe-t-il si un client reçoit plusieurs serveurs ayant autorité? Il les interrogent les uns après les autres Un par requête client Il choisit celui avec le temps d'aller-retour le plus petit Le plus proche 33