Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Agr2 slides 2x2
1. 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éseaux
Organisation - 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
2. 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éseaux
Au 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
3. 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éseaux
Introduction à 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
4. 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éseaux
Introduction à 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
5. 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éseaux
Introduction à 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
6. 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éseaux
Introduction à 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
7. 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éseaux
Rappels 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
8. 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éseaux
Rappels 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
9. 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éseaux
DNS - 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
10. 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éseaux
DNS - 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
11. 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éseaux
DNS - 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
12. 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éseaux
DNS - 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
13. 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éseaux
DNS - 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
14. 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éseaux
DNS - 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
15. 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éseaux
NFS - 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
16. 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éseaux
NFS - 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
17. NIS - Network Information Service NIS - les daemons
yellow 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éseaux
NIS - 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
18. 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éseaux
Samba - 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
19. 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éseaux
Samba - 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
20. 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éseaux
PAM - 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
21. 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éseaux
PAM - 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
22. PAM - Plugable Authentification Module LDAP - Lightweight Directory Access Protocol
Linux-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éseaux
LDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access Protocol
Annuaire 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
23. LDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access Protocol
Le 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éseaux
LDAP - Lightweight Directory Access Protocol LDAP - Lightweight Directory Access Protocol
Modè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