• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Agr2 slides 2x2
 

Agr2 slides 2x2

on

  • 277 views

A book of network administration

A book of network administration

Statistics

Views

Total Views
277
Views on SlideShare
277
Embed Views
0

Actions

Likes
0
Downloads
2
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Agr2 slides 2x2 Agr2 slides 2x2 Presentation Transcript

    • Organisation AGR Administration et Gestion des Réseaux Cours - laboratoires (37.5h) Exposé oral Manipulation Pierre BETTENS Evaluation pbettens(à)heb.be Examen oral au terme du cours Evaluation du savoir par le biais d’une question théorique ouverte ESI - École Supérieure d’Informatique Evaluation du savoir-faire par le biais d’une manipulation 26/03/2006 ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxOrganisation - Supports Organisation - Supports Livres Administration réseaux sous Linux Olaf KIRSH et Terry DAWSON Slides ed. O’REILLY Notes de cours Le système Linux Welsh, Dalheimer et Kaufmann Supports divers ed. O’REILLY Internet TCP/IP Administration de réseau http://esi.namok.be Craig Hunt http://del.icio.us/pit/gar Bookmarks ed. O’REILLY IRC (irc.freenode.net / #esi) Autres ... Les news (via Google - http://groups.google.com) Samba, installation et mise en oeuvre Robert Eckstein, Davis Collier-Brawn, Peter Kelly ed. O’REILLY LDAP,installation et mise en oeuvre ed. O’REILLY ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • Organisation du laboratoire Organisation du travail Plage d’adresse : 192.168.208.0/24 - 192.168.223.0/24 Distribution debian Exposé oral Aide locale (cours ex cathedra) pour savoir où chercher Approfondissement via la documentation apropos ’keyword’ le manuel (voir livres, docs papiers, man , ...) man ’topic’ Manipulation au laboratoire les How To (pas tous les sujets) ll /usr/share/doc/HOWTO les pages infos (parfois) info ’topic’ ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxAu menu Au menu DNS - Domain Name Server (avec manipulations) Organisation NIS - Network Information System Organisation - Supports NFS - Network File System Organisation du laboratoire SAMBA Organisation du travail (avec manipulations) Introduction à Linux (deuxième partie) PAM - Plugeable Authentification Modules Rappels réseaux (avec manipulations) LDAP - Lightweight Directory Access Protocol (avec manipulations) ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • Au menu Introduction à Linux (II) Rappel du cours SYS1 Système de fichiers Droits d’accès ACL - Access Control List Notions de processus Serveur d’impression Shell, bash CUPS - Common Unix Printing System Gestion des utilisateurs Serveur web Scripts de démarrage Apache (avec manipulations) Shutdown Sauvegarde de fichiers Exécution de tâches périodiques cron Manipulations ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxIntroduction à Linux (II) Introduction à Linux (II) Gestion des utilisateurs Gestion des utilisateurs User - Group - Other (u-g-o) Ajout d’un utilisateur User, le fichier /etc/passwd adduser ... Group, le fichier /etc/groups Modification de /etc/passwd Modification de /etc/group Gérer un utilisateur (ajout/suppresion) Copie des fichiers "skelettes" Gérer les groupes Positionnement du mask (umask) Diverses commandes Création (éventuelle) d’un répertoire home ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • Introduction à Linux (II) Introduction à Linux (II) Gestion des utilisateurs Scripts de démarrage Le fichier /etc/shadow Démarrage du système Notions plus pointues (première partie en très bref) (durée de validité, ...) BIOS Commande chage Chargeur de démarrage Désactivation (temporaire) d’un compte - lilo Chgt du passwd - grub Chgt du shell (/bin/false) Noyau Suppression d’un utilisateur - initrd.img éventuel - vmlinuz ou autre userdel ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxIntroduction à Linux (II) Introduction à Linux (II) Scripts de démarrage Shutdown Système SysV L’arrêt du système est une prérogative du root ... sauf mention du Exécution de /etc/inittab contraire ! Exécution des scripts /etc/rc ?.d Arrêt du système Ces scripts sont en fait des liens vers un script Prévenir les utilisateurs ! - S pour start Arrêt de chacun des scripts (rc*.d) - K pour kill Arrêt du processus init (id=1) - Chaque répertoire comprend un sensemble de liens ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • Introduction à Linux (II) Introduction à Linux (II) Shutdown Diverses manières de faire Sauvegarde des fichiers Commande shutdown L’importance d’un backup n’apparait jamais aussi cruciale que le Commande halt jour de la perte des données. Commande reboot Définition d’une politique de sauvegarde Commande init ’x’ Que sauvegarder ? Ctrl-Alt-Del ... pq et qd ça marche ? Sur quel(s) support(s) ? La série à éviter ... Moyens - bouton ON/OFF Remarques - Tirer la fiche ou couper le cable - Bouton reset ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxIntroduction à Linux (II) Introduction à Linux (II) Sauvegarde des fichiers Sauvegarde des fichiers - Que sauvegarder ? Définition d’une politique de sauvegarde Fichiers personnels Que sauvegarder ? Par exemple A quelle fréquence ? Sauvegarde quotidienne. (sur disque dur - rapide) Sur quel support ? Sauvegarde hebdomadaire (sur bande dans le local/batiment - Quel peut-être la période d’indisponibilité ? accessible) Quel coût engage-t-on ? Sauvegarde mensuelle (sur bande dans un autre local/batiment - De quel type d’erreur se protège-t-on ? gros désastre) - Cause naturelle - Défaillance matérielle Fichiers systèmes - Défaillance humain Autres .. ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • Introduction à Linux (II) Introduction à Linux (II) Sauvegarde des fichiers - Sur quel support ? Disquette ZIP Sauvegarde des fichiers - Moyens CD Commande rsync CD réinscriptible encore cher Commandes dump, restore Capacité 700Mb Sauvegarde incrémentale DVD Sur bandes Se démocratise Commande tar Capacité 4Gb (à vérifier) Bandes Capacité jusqu’à 40Gb ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxIntroduction à Linux (II) Introduction à Linux (II) Exécution de tâches périodiques Sauvegarde des fichiers - Remarques Deamon associé cron Les fichiers sur support externes sont vulnérables Format d’un fichier cron Protéger les supports externes # commentaire Vol # minute heure jour mois jour_semaine commande Destruction 0 ,15 ,30 ,45 12 -13 * * 1 -5 / home / login / allermanger ... Préparer les scénarios de restauration Fichiers de configuration (la restauration se fait tjs ds l’urgence) /etc/crontab (lance les fichiers cron) /etc/cron.allow /etc/cron.deny ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • Introduction à Linux (II) Rappels réseaux En théorie Exécution de tâches périodiques Protocole TCP Commande crontab Adresse IP -e Edite le fichier crontab de l’utilisateur Adresse ethernet Utilise l’éditeur /usr/bin/editor Le fichier se trouve là (ss debian) et ne peut être édité. hostname, nom d’hote /var/spool/cron/crontabs/’login’ netmask, masque de réseau -l liste, -r remove 192.168.208.0/18 192.168.208.0, 255.255.192.0 ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxRappels réseaux Rappels réseaux En théorie (II) Configuration de l’interface. gateway, passerelle broadcast Trouver l’interface Adresse dont tous les bits de la partie hôte sont à 1 Appelation usuelle Routage ethi sous Linux routage statique dneti sous Solaris routage dynamique Recherche Les commandes dmesg | grep eth pour trouver les interfaces ethernet ifconfig netstat -in netstat Commande ifconfig route Commande netstat ping Commande dig dig ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • Rappels réseaux Rappels réseaux Configuration de l’interface (ifconfig, netstat) Infos Configuration de l’interface (ifconfig, netstat) Flag Configuration de l’interface - R - running ifconfig eth0 192.168.208.i netmask 255.255.192.0 - B -broadcast voir /etc/network/interfaces - U - up Activer / désactiver - L -loopback ifconfig eth0 up MTU - Maximum Transfert Unit ifconfig eth0 down (taille des paquets) RX-info (paquets reçus) Mode promiscuous (indiscret) TX - info (paquets envoyés) Par défaut l’interface ethernet ne passe aux protocoles des info : OK - reçu, ERR - erreur, DRP - drop, OVR - overruns couches supérieures que les trames adressées au système local ... sauf en mode indiscret. netstat -in ifconfig eth0 ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxRappels réseaux Rappels réseaux Routage Routage minimal Routage minimal Réseau isolé Pas de sous-réseau Tests du réseau via ping Une route par interface Ajout d’une route : Routage statique route add default gw monGateway Nombre limité de routeurs Routage statique Pas / peu d’évolution Message ICMP Redirect Table de routage construite et maintenue manuellement via route Dans les scripts de démarrage Routage dynamique Exécution de route Plusieurs route menant à la même destination Supression des "protocoles de routage" Les protocoles de routage mettent à jour les table en fct de l’évolution du réseau Recherche d’une "meilleure" route ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • Rappels réseaux Rappels réseaux Routage dynamique Protocoles de routage intérieurs RIP - Routing Information Protocol - Compte le nombre de sauts (hop) - daemon routed Hello Tres peu utilisé IS-IS - Intermediate to Intermediate System Plus court chemin d’abord OSPF - Open Shortest Path First Adapté aux gros réseaux Protocoles de routage extérieurs EGP BGP via gated ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxDNS - Domain Name Server DNS - Domain Name Server Lien entre les adresses IP et les noms Hiérarchie des domaines Table d’hôtes Domaine racine /etc/hosts Domaine de premier niveau DNS Géographique Avantages du DNS par rapport à la table d’hôtes be, fr, us, ... Le DNS permet de gérer un plus grand nombre d’hôtes Administratif Le DNS assure la dissémination de l’info com, edu, gov, mil, net, int, org, (depuis le début) aero, biz, coop, museum, pro, info, name (depuis 2000) Fonctionnement Si le DNS reçoit une requête sur un hôte pour lequel il ne possède Serveurs racines aucune donnée a.root-servers.net Il fait suivre la requête à un serveur ayant autorité ... Lorsque le serveur lui répond, il maintient l’information dans un m.root-servers.net cache. dig @a.root-servers.net. La prochaine fois, il y répondra seul. ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • DNS - Domain Name Server DNS - Domain Name Server - Configuration du résolveur /etc/resolv.conf nameserver ’adresse’ Implémenté grace à BIND Adresse représente l’adresse d’un serveur de noms Berkeley Internet Name Domain Jusqu’à 3 serveurs de nom autorisés Client : le résolveur Les serveurs de noms sont intérrogés dans l’ordre Si aucune entrée nameserver .. alors intérrogation locale. Serveur : daemon named domain ’nom’ Quatre niveaux de services Nom de domaine par défaut Résolveur uniquement Les noms SANS points sont concaténés au nom de domaine par Serveur à cache seul défaut Serveur maître Si la variable d’envirronement LOCALDOMAIN est définie elle Serveur esclave prend le dessus search ’domaine’ Idem que domain mais avec plusieurs domaines ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxDNS - Domain Name Server - Configuration du résolveur DNS - Domain Name Server - named options ’option ...’ debug (si compilé avec l’option) ndots :n défaut 1, nombre de point (+1) rencontré dans le nom pour lequel Fichier de configuration - named.conf le nom de domaine est concaténé Fichier d’accès à la racine - named.root (par exemple) timeout :n Fichier d’hôte local - named.local Délai initial Défaut 5 Fichier de zone - ’mazone.org’.hosts (par exemple) attempts :n Fichier de zone inverse - 192.168.208.rev (par exemple) Nombre de fois que le résolveur retente une requête Défaut 2 rotate Répartit la charge entre les différents serveurs de noms ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • DNS - Domain Name Server - named.conf DNS - Domain Name Server - Fichier de zone Format de fichier de zone Syntaxe proche de C [nom] [ttlx] IN type donnée Commentaires /* */ ou // ou encore # nom Déclaration se termine par ; Nom de l’objet du domaine String entre " " Le nom est relatif au domaine courant sauf si il se termine par un Groupe entre accolades { } ’.’ S’il est blanc, il se rapporte au dernier objet du domaine nommé Commande de configuration ttl acl - Définit une liste de contrôle d’accès d’adresses IP Time-to-live include - Inclu un autre fichier Généralement vide, la valeur de la directive $TTL est utilisée key - Définit les clés de sécurité pour l’authentification IN logging - Définit ce qui doit être loggé enregistrement de ressource internet options - Définit les options de configuration globale et des valeurs par défaut type server - Définit les caractéristiques d’un serveur distant Identifie la nature de l’enregistrement zone - Définit une zone SOA, NS, A, PTR, MX, CNAME, TXT Une zone est une partie de l’espace de nom de domaine pour donnée laquelle le serveur de noms a autorité Information spécifique au type d’enregistrement. ESIlogo ESIlogo Exemple : pour un champ de type A, la donnée est l’adresse IP Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxDNS - Domain Name Server - Fichier de zone DNS - Domain Name Server - Fichier de zone Directives $TTL Valeur par défaut du TTL pour les enregistrement. Soit un nombre de secondes (valeur chiffrée) Soit une combinaison de chiffres et de lettres w, d, h, m, s Enregistrement SOA $ORIGIN Numéro de série en 10 chiffres - aaaammjjxx Définit le nom de domaine par défaut Temps de raffraichissement Ecrase la valeur du domaine définie par la déclaration de zone Temps de réémission Temps d’expiration $INCLUDE TTL Inclu un fichier externe (à l’endroit de la directive) $GENERATE Génère une série d’enregistrements Ces enregistrement ne diffèrent que par une valeur numérique $GENERATE 1-4 $ CNAME $.1to4 Génère - 1 CNAME 1.1to4 - 2 CNAME 2.1to4 - 3 CNAME 3.1to4 - 4 ESIlogo CNAME 4.1to4 ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • DNS - Domain Name Server - Serveur à cache seul DNS - Domain Name Server - Serveur à cache seul cat /etc/named.conf options { directory "/ var / named "; }; cat /var/named/named.root logging { Récupéré tel quel, il contient les adresses des serveurs racines category " unmatched " { " null "; }; category " default " { " default_syslog "; " default_debug "; }; // extrait }; . 3600000 IN NS A. root - servers . net zone "." { A. root - servers . net 3600000 IN A 198.41.0.4 type hint ; file " named . root "; ... }; zone " 0.0.127. in - addr . arpa { type master ; file " named . local "; }; ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxDNS - Domain Name Server - Serveur à cache seul DNS - Domain Name Server - Serveur maître cat /var/named/named.local Permet de convertir l’adresse de rebouclage en localhost cat /etc/named.conf Excepté le nom de machine, fichier identique sur ttes les Ajout au fichier named.conf de la (des) zone(s) à traiter machines ... $TTL 86400 zone " esi . be " { @ IN SOA gouyasse . esi . be . unresponsable . gouyasse . esi . be . ( type master ; 1 ; serial file " esi . be . hosts "; 360000 ; refresh (100 h) }; 3600 ; retry (1 h) 3600000 ; expire (1000 h) zone " 208.168.192. in - addre . arpa " { 3600 ; ttl du cahce 1h type master ; ) file " 192.168.208. rev "; }; IN NS gouyasse . esi . be . 0 IN PTR loopback 1 IN PTR localhost ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • DNS - Domain Name Server - Serveur maître DNS - Domain Name Server - Serveur maître cat /var/named/esi.be.hosts Principalement des enregistrement A et CNAME cat /var/named/192.168.208.rev $TTL 86400 Principalement des enregistrements PTR @ IN SOA ....... ; Serveurs de noms et de mail $TTL 86400 IN NS gouyasse . esi . be . @ IN SOA gouyasse . esi . be ... IN MX 10 monisp . be . ... ; Definition de localhost IN NS gouyasse . esi . be localhost IN A 127.0.0.1 1 IN PTR gouyasse . esi . be ; Hotes de la zone 2 IN PTR quintine . esi . be gouyasse IN A 192.168.208.1 ns1 IN CNAME gouyasse . esi . be quintine IN A 192.168.208.2 ........... ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxDNS - Domain Name Server - Serveur esclave DNS - Domain Name Server - Serveur esclave cat /etc/named.conf ... La différence avec un serveur maître réside dans les fichiers de zone " esi . be " { type slave ; zone. Ceux-ci sont écrit (par le daemon) sur base d’un requête file " esi . be . hosts "; au serveur maître et ne contiennent pas a priori les informations masters { ’ adresse ip du maitre ’ ; }; }; sur la zone. zone " 208.168.192. in - addre . arpa " { type slave ; file " 192.168.208. rev ; masters { ’ adresse ip du maitre ’ ; }; }; ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • DNS - Domain Name Server DNS - Domain Name Server - Contrôle via rndc cat /etc/rndc.conf Contrôle du processus Utilisation du script named key rndc_key { /etc/init.d/named start|stop algorithm " hmac - md5 "; secret " ... "; Commande rndc de gestion du processus }; status stop options { start /restart default - server localhost ; default - key rndc_key ; reload }; stats trace / notrace querylog Permet le contrôle du processus named à distance et sécurisé Default serveur représente la machine à contrôler ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxDNS - Domain Name Server - Contrôle via rndc DNS - Domain Name Server - nsloockup / dig /etc/named.conf ajout Test de la configuration nsloockup google . be controls { Server : 152.158.16.48 inet 127.0.0.1 allow { localhost ; } keys { rndc_key ; }; Address : 152.158.16.48#53 }; Non - authoritative answer : key " rndc_key " { Name : google . be algorithm hmac - md5 ; Address : 216.239.39.104 secret " ... idem que l ’ autre ... "; ... }; nsloockup est deprecated ... tester la commande dig Named autorise certaines adresses IP à le contrôler option -t ’type’ ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • NFS - Network File System NFS - Ses daemons nfsd [nservers] NFS - Network File System prend en charge les requêtes des clients Permet le partage de fichiers en réseau partie serveur nservers spécifie le nombre de daemon qui tournent Idéalement transparent pour l’utilisateur mountd Avantages traite les demandes de montage des clients Réduit l’espace disque total puisque partage lancés par les serveurs Simplifie la gestion centralisée nfslogd Utilise le set de commandes habituel responsable du journal de NFS Approche client / serveur rquotad Le serveur relatif aux quotas des utilisateurs Système qui rend les répertoires disponibles tourne sur les clients et les serveurs export lockd Le client gère les verrous sur les fichiers Système qui attache des répertoires distants à son filesystem tourne sur les clients et les serveurs mount statd Initialement développé par Sun MicroSystem ESIlogo tourne sur les clients et les serveurs ESIlogo surveillance de l’état du réseau (pour la gestion des locks) Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxNFS - Partage de fichiers NFS - Droits d’acces Pourquoi ? fournir de l’espace à des clients sans disque éviter la duplication des données Fichier autorise l’acces de machines offrir des données et programmes centralisés partager des données Les droits d’acces Unix sont de rigueur Fichier /etc/exports Droits d’acces basés sur les uid et gid ... c’est donc mieux s’ils Exemple correspondent d’une machine à l’autre. / usr / man gouyasse ( rw ) quintine ( ro ) L’utilisateur root / usr / local ( ro ) directive root_squash uid root -> uid nobody Format : répertoire [machine(options)] ... directives squash_uids, suash_gids et all_squash Wildcard et/ou adresses IP autorisés Particularités de Solaris commande share fichier dfstab ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • NFS - Commande exportfs NFS - Commandes showmount / mount Commande showmount Permet de voir les répertoire exporté pas une machine Commande exportfs showmount -e gouyasse -a lors de l’init export list for gouyasse -r pour une relecture / usr / man gouyasse , quintine / local ( everyone ) Construit le fichier /var/lib/nfs/xtab Contient les infos sur les fichiers exportés Commande mount Lu pas mountd mount machine :répertoire-distant répertoire-local Possibilité d’export "temporaire" machine est un serveur NFS exportfs hercule :/usr/local -o rw - pour l’ajout répertoire-distant un répertoire exporté exportfs -u hercule :/usr/local - pour la suppression répertoire-local doit exister Ajout eventuel du type de filesystem -t nfs Commande umount ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxNFS - Fichier /etc/fstab NIS - Network Information Service yellow pages Base de données administrative (comparable au DNS mais différent) Fichier /etc/fstab Similitudes Contrôle centralisé Les répertoires exportés peuvent apparaitre dans le fichier Propagation automatique des fichiers de configuration importants gouyasse :/ usr / man / usr / man nfs rw 0 0 Différences Gère des petits réseaux privés (pas Internet) Propose des options supplémentaires aux options habituelles du NIS partage des infos plus variées (dans ses tables NIS) La table d’hôte de NIS contient moins d’informations que celle de fichier DNS Définition NIS convertit plusieurs fichiers standard en base de données qui peut être interrogée via le réseau, ces bd sont appelées tables NIS ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • NIS - Network Information Service NIS - les daemonsyellow pages Quels fichiers ? /etc/passwd /etc/group /etc/ethers (utilisé par le protocole RARP ypserv /etc/hosts Daemon responsable de la partie serveur de NIS /etc/networks ypbind /etc/protocols Daemon permettant la lisaion au serveur et à ses tables NIS /etc/services /etc/aliases Ces fichiers sont transformés en table /etc/networks -> networks.byname networks.byaddr Les tables NIS sont stockées dans /var/yp/<nom du domaine> ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxNIS - les commandes (serveur) NIS - les commandes (client) ypcat - fournit la liste des tables NIS domainname <nom du domaine> - vérifie en met en place le nom du domaine NIS (défini pour le boot dans /etc/sysconfig/network, domainname <nom du domaine> - idem serveur NISDOMAIN=..) ypbind cd /var/yp ; make - contruction des tables NIS ypserv - lancement du serveur NIS ypbind - processus de liaison ypwich - renseigne le serveur NIS ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • Samba Samba - daemon smbd Permet la communication entre machines hétérogènes daemon responsable du partage des ressources Mets en oeuvre le protocole SMB File sharing Printing services (natif sous MS Windows) nmbd Administration centralisée sur le serveur daemon NetBios Site associé : http ://samba.org Comprend et répond aux requêtes NetBios sur TCP/IP produites Installation par SMB samba Permet la participation au "Network Neighborhood" samba-common Activation smbfs lancement des daemons, nmbd, smbd smbclient utilisation du script /etc/init.d/samba (start/stop/..) via inetd ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxSamba - smb.conf Samba - smb.conf Format de fichier Configuration centralisée dans le fichier /etc/samba/smb.conf (vérifier la situation) parametre = valeur Fichier divisé en sections Les commentaires commencent pas # ou ; Débute par [nom du partage] Une section se termine par le début de la suivante (ou fin de Exemple fichier) # A sample share for sharing your CD - ROM with others . Chaque section correspond à un partage, (excepté pour la section [ cdrom ] global) comment = Samba server ’s CD - ROM Sections particulières ; valid users = user1 , user2 writable = no global - Configuration générale de Samba locking = no homes - Correspond au répertoire HOME de l’utilisateur path = / cdrom printers - Définit le partage des imprimantes. public = yes ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • Samba - variables Samba - configuration du browser browser ou explorateur réseau permet d’examiner les partages Samba comprend une série de variables ... l’option browseable yes|no permet de montrer / cacher un %I - adresse IP du client partabge sur le réseau ($ sous MS Windows) %m - nom netbios du client une liste de browsing est maintenue sur le réseau Ces variables permettent l’écriture de scripts personnalisés le master browser la détient On ajoutera, par exemple, ce master browser est élu [ monJoliPartage ] les élections dépendent de ... include / etc / samba / smb . conf .% m os level ... role local master Si le fichier existe il est inclut ... sinon non. netbios name preffered master yes|no ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxSamba - authentification Samba - utilitaires testparm /etc/samba/smb.conf Permet de vérifier la validité syntaxique du fichier de conf /etc/init.d/samba [start|stop|restart] Relance le daemon samba Types d’authentification Le script s’appelle smb ou samba suivant les distributions share - authentification ’à la ressource’ smbmount user - authentification lors de la connexion package debian smbfs server - comme pour user mais le serveur s’adresse à un autre syntaxe smbmount //<netbios name>/<share name> <mount serveur pour l’authentification point> domain - contrôle via un ’contrôleur de domain’ (responsable de smbclient l’authentification) commande à tout faire .... FTP impression envoi de messages ... smbpasswd ESIlogo ESIlogo ajoute un utilisateur "samba" Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • Samba - SWAT PAM - Plugable Authentification Module Principe Certaines applications nécéssitent une authentification login sudo Disponibilité du service (/etc/services) su ... Permet la configuration de samba via un interface web (plutôt que Systèmes d’authentification évoluent l’édition du fichier smb.conf) /etc/passwd Gestion par initd /etc/shadow Annuaire LDAP Le serveur écoute sur le port 901 ... http ://localhost :901 Cette évolution impose la réécriture d’une partie de code de chaque application nécéssitant une authentification L’idée ; on délègue l’authentification à des modules dynamiques Définition Plugable Authentification Module sont des bibliothèques ESIlogo responsables d’une partie de l’authentification. ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxPAM - Plugable Authentification Module PAM - Plugable Authentification Module Format des fichiers Bibliothèque module-type control-flag module-path args /lib/security module-type Une application est développée pour se lier avec ces bibliothèques authentification Avantage Identifie le user comme étant qui il prétend L’administrateur system configure le comportement de ces Vérifie l’appartenance à un groupe applications (ssh, ftp, login, ...) via PAM account La configuration se fait dans /etc/pam.d/ (un fichier par Pas d’authentification mais des permissions/restrictions en fonction application) des ressources Anciennement la configuration se faisait dans un fichier - temps (moment de la journée) /etc/pam.conf unique - resources système (nombre d’utilisateurs connectés) Configuration fine - lieu (root se logge d’une console pas d’un terminal) Refus simple de connection session Connection "limitée" ; plage horaire, ressources, ... Destiné aux actions a exécuter avant/après la mise à disposition du Condition service Il faut que l’application soit PAM enabled password ESIlogo Utiliser pour renouveler le jeton d’authentification ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • PAM - Plugable Authentification Module PAM - Plugable Authentification Module Format des fichiers module-type control-flag module-path args control-flag Gère la manière de réagir au "résultat" du module. Format des fichiers Rem : Les modules sont empilés, et excécutés dans l’ordre .. le module-type control-flag module-path args résultat de l’un influence le suivant required module-path Exigé pour la réussite du module-type Nom du module Un echec n’est renseigné qu’à la fin de la pile d’appel S’il commence par c’est un nom complet sinon /lib/security requisite args Idem que required Arguments pour le module, dépend de celui-ci Mais s’interromp dès l’échec ... n’attend pas l’exécution de toute la debug, no-warn, use-first-pass, ... pile sufficient La réussite de ce module est suffisante .. on ne continue pas la pile d’appel en cas de réussite optional ESIlogo ESIlogo Optionel .. n’influence pas la suite Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxPAM - Plugable Authentification Module PAM - Plugable Authentification Module PAM enabled Exemple auth required / lib / security / pam_securetty . so auth required / lib / security / pam_env . so Tester si l’application pampgm supporte PAM auth sufficient / lib / security / pam_ldap . so auth required / lib / security / pam_unix . so try_first_pass Ajouter le fichier pampgm dans /etc/pam.d Déroulement $ cat / etc / pam .d/ pampgm auth required pam_permit . so Vérification dans /etc/securetty que la connection peut se auth required pam_warn . so faire sinon echec ... à la fin Positionnement des variables d’environnement Lancer le programme pampgm Authentification via LDAP (/etc/ldap.conf) Module pam_permit autorise tout le monde Si réussite, fin Module parm_warm logge dans syslog En cas d’échec de pam_ldap, authentification Unix .. avec le passwd précédent ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • PAM - Plugable Authentification Module LDAP - Lightweight Directory Access ProtocolLinux-PAM API Définition LDAP est un protocole d’accès à un annuaire. Ecrire un programme PAM enabled Un annuaire est une base de données spécialisée, stocke des données légèrement typées # include < security / pam_appl .h > les données sont structurées en arbre # include < security / pam_misc .h > un annuaire est très performant en lecture mais pas en écriture ... pam_authenticate () ; Exemples ... annuaire de personnes, type "pages blanches" comptes Unix cc -o application .... - lpam - lpam_misc -ldl carnet d’adresses + photos données d’identification parc matériel ... tout ce qui peut-être nommé et attaché à de l’information ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxLDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access ProtocolAnnuaire versus SGBD Les concepts Annuaire LDAP fournit Lectures rapides Un protocole permettant l’accès à l’information Stocke des objets et leurs attributs (typés) Un modèle d’information, définit le type d’informations Organisation en arbre Des conventions de nommage, définissent comment l’information Réplication simple ( chaque modification est reportée dans les est organisée annuaires secondaires, ...) Un modèle fonctionnel, définit comment on accède à l’information Stocke gde quantité de données mais de faible volume Un modèle de sécurité Un modèle de duplication, définit la répartition entre différents SGBD serveurs Rapidité d’accès en lecture et écriture Des APIs pour développer des applications Typage fort LDIF, un format d’échange de données ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • LDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access ProtocolLe protocole Le protocole Le protocole définit comment s’établit la communication client-serveur permet à l’utilisateur de se connecter, rechercher, comparer, ... des mécanismes de chiffrement des règles d’accès un protocole serveur-serveur, pour la synchronisation, réplication, .. Pour info ... LDAP est initialement une passerelle d’accès à des annuaires X500 ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxLDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access ProtocolModèle des données Classe d’objet Les classes d’objet (objectClass) modélisent les objets et leurs attributs Modèle de données hiérarchique Une classe est définie par un nom Chaque noeud de l’arbre correspond à une entrée de l’annuaire un OID (object ID) Les entrées correspondent à des objets, ayant des attributs des attributs obligatoires des attributs optionnels Chaque serveur contient une entrée spéciale, rootDSE (root un type (structurel, abstrait ou auxiliaire) directory specific entry ) qui contient la description de l’arbre structurel - description d’un objet basique, personne, groupe, objetClass top : permettra de définir la "véritable" racine de l’arbre entité organisationnelle de la société, ... abstrait - propre à LDAP, top, alias L’arbre est appelé Directory Information Tree, DIT auxiliaire - permettent d’ajouter de l’info complémentaire à un objet L’ensemble des définitions relatives aux données, s’appelle un structurel, mailRecipient, ... schéma Un attribut est défini par un nom un oid ESIlogo syntaxe et règles de comparaison ESIlogo format de valeur Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • LDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access ProtocolClasse d’objet II Classe d’objet III OID objectClass : top Les objets et leur oid sont normalisés (RFC2256) objectClass : person oid est une séquence de nombres entiers objectClass : organizationalPerson objectClass : inetPerson 2.5 - fait reference au service X500 1.3.6.1.4.1.4203 - openLDAP classe person On ne modifie pas les schémas existants (pas propre, risque a comme attributs : d’incompatibilité) commonName, surname, description, seeAlso, telephoneNumber, Notion d’héritage entre objets userPassword Pour l’ESI, (1.3.6.1.4.1.23162) classe organizationalPerson Les classes d’objet forment une hierarchie ajoute les attributs : organizationUnitName, title, ... La racine est l’objet top classe inetPerson Chaque objet hérite de son parent ajoute les attributs : On précise la classe d’un objet à l’aide de objectClass ESIlogo mail, uid, photo, ... ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxLDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access ProtocolDéfinition d’un Schéma Configuration du serveur Lorsqu’une entrée est crée, le serveur vérifie si la syntaxe est Formats différents suivants l’implémentation conforme sur base du schéma associé, c’est le Schema slapd.conf, U-M slapd, OpenLDAP, NEtscape Directory checking ... /etc/lpdap/schema/local.schema Il existe deux objets abstraits particuliers qui permettent de faire objectClass esiPerson des liens entre les noeuds ou entre des annuaires superior inetOrgPerson aliases requires sn , referrals cn Un annuaire LDAP peut être constitué d’un seul serveur ou de allows uidNumber , plusieurs gidNumber , Serveur seul homeDirectory , Service referal dateArrivee , dateDepart Service duplication ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • LDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access ProtocolIdentifiant d’un objet LDIF - LDAP Data Interchange Format LDIF permet de représenter les données L’identifiant unique (clé dans un SGBD) est le DN Utilisé pour DN, Distinguished name est le nom unique dans l’annuaire, il importer / exporter des bds représente le chemin absolu depuis top faire des modifications sur des entrées Exemple : uid=pbt, ou=prof, dc=esi, dc=be dn : cn =PbT , ou = prof , o=esi , c= Be Il se compose objectClass : person objectClass : organizationalPerson des attributs obligatoires objectClass : inetOrgPerson de la liste des ou organisationnal unit cn : PbT des organisations o mail : pbettens@heb . be ... ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxLDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access ProtocolLDIF - LDAP Data Interchange Format II Modèle fonctionnel Permet de faire des modifications, ajouts, suppression, ... Le modèle fonctionnel définit les opérations de bases pouvant être exécutées sur le serveur Exemple d’ajout search, compare, add, modify, delete, rename, bind ... dn : cn = Juste Leblanc , ou = sales , o= Ed Oreilly , c= fr (voir webographie pour les détails) changetype : modify add : telephonenumber Pour une recherche, on devra définir le scope de celle-ci telephonenumber : (408) 123 - 456 search scop = base permet de rechercher un élement Exemple de suppression search scope = onlevel search dn : cn = Juste Leblanc , ou = sales , o= Ed Oreilly , c= fr permet de rechercher sur le niveau enfant changetype : delete search scope = subtree permet la recherche dans tout l’arbre "enfant" ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • LDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access ProtocolDéployer un service LDAP Cas particulier de OpenLDAP Déployer un annuaire nécessite une réflexion au sein de la société. Ces aspects sortent du cadre de cette présentation ... mais en bref Aspects organisationnels Nature des données stockées OpenLDAP est une implémentation libre de LDAP Que doit servir l’annuaire ? http ://openldap.org Maintient des données à jour, sources des données, pérennité Confidentialité, authentification, contrôle d’accès, ... Related software Choix du schéma Transport, OpenSSL ( http ://openssl.org) Choix du modèle de nommage Authentification, Kerberos Nombre d’entrées actuelles et évolution Threads, OpenLDAP supporte POSIX pthreads Type des entrées Nombre de serveurs et répartition des données sur ceux-ci choix du DN Distinghished name choix du suffixe, exemple DC=esi, DC=be Duplication ? Réplication ? ESIlogo ESIlogo ... Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxLDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access ProtocolCas particulier de OpenLDAP Cas particulier de OpenLDAP Installation Configuration Via les packages via le fichier /etc/ldap/slapd.conf slapd Adaptation du fichier de configuration ldap-utils Adresse IP du serveur LDAP Position du DN de l’annuaire Méthode "traditionnelle" SSL yes/no configure ; make ; make install ... Schema(s) supplémentaire(s) éventuel(s) daemons Script slapd, pour la gestion de l’annuaire Gestion du serveur via slurpd, pour la réplication /etc/init.d/slapd start|stoprestart|force-reload ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • LDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access ProtocolCas particulier de OpenLDAP Logiciels LDAP Serveurs OpenLDAP Netscape Directory Server Organisation de l’annuaire Innosoft’s Distributed Directory Server Vérification des schemas ... (probablement), création d’un schema particulier D’autres supportent les requêtes /etc/ldap/schema/local.schema Novell’NetWare Directory Services Microsoft Active Directory Gestion du contenu Lotus Domino (fichier(s) LDIF ) Type de clients Ajout d’utilisateur, ldapadd Logiciels avec accès natif, Netscape Communicator, MS Outlook, Browsers Acces via passerelle Utilisation des API, Java ; Perl, C, Natif ds l’OS, MS Windows NT5, PAM LDAP, NIS versus LDAP ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxServeur web Serveur webApache Apache Script de gestion du(des) daemon(s) Un serveur web permet la propagation de l’information sur un /etc/init.d/apache2 [start|stop...] réseau IP Nombre de daemons (essaim) Apache est un logiciel fournissant le "service" serveru web StartServers 5 Installation MinSpareServers 5 MinSpareServers 5 apt-get install apache2 apache2-doc MaxSpareServers 10 libapache2-mod-php Les pages web ... emplacement Fichier de configuration Directive DocumentRoot httpd.conf (obsolète dans la version apache2) #cat sites-enabled000-default apache2.conf conf.d/ Chargement des modules mod-enabled/ (versusmod-available/) Apache propose des modules logiciels offrant diverses ports.conf fonctionnalités ... bref ls /etc/apache2 voir /etc/apache2/mods_enabled qui contient des liens vers ESIlogo certains fichiers dans mods_available ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des Réseaux
    • Serveur web Serveur webApache Apache Journalisation Préciser l’emplacement des fichiers log - ErrorLog Quantitié d’infos - LogLevel Points NON abordés Format des logs - Logformat Serveurs mandataires (proxy ) Contrôle d’accès Sécurité / encryptage (certificat) Order deny, allow Hôtes virtuels Deny from all Allow from esi.be <br / > Possibilité d’authoriser l’accès sur base de login/password ... voir directive Auth* ESIlogo ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux Pierre BETTENS AGR Administration et Gestion des RéseauxCredits freemind - http ://freemind.sourceforge.net Génération d’un Mind Map Génération des slides sur base du Map freemind Scripts Perl - freemind2s5.pl de Vincent Oberle - freemind2beamer.pl modification incomplète du script Format PDF L TEX A package beamer ESIlogo Pierre BETTENS AGR Administration et Gestion des Réseaux