alphorm.com formation red hat (rh134)
TRANSCRIPT
24/12/2015
1
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Formation Red Hat Entreprise Linux
Administration Système II(RH134)
24/12/2015
2
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Présentation du formateur
• Les certifications Red Hat
• Le plan de la formation
• Publics concernés
• Connaissances requises
• Liens utiles
24/12/2015
3
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Présentation du formateur• Ludovic QUENEC’HDU
• Consultant et expert en Open source, logiciel libre et virtualisation
• Mission de conseil, d’architecture, d’administration, de migration et de formation
• Mes références :
� Mon profil LinkedIn : https://fr.linkedin.com/pub/ludovic-quenec-hdu/47/6bb/550
� Mon profil Alphorm : http://www.alphorm.com/formateur/ludovic-quenechdu
24/12/2015
4
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mes formations sur Alphorm
24/12/2015
5
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les certifications Red Hat
24/12/2015
6
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le plan de formation• Un peu de Shell
• Utilisation d'expressions régulières avec GREP• Utilisation d'expressions régulières avec SED
• Déploiement de serveur• Mise en œuvre d'un serveur PXE• Installation automatique d'un serveur avec
PXE/Kickstart
• Les listes de contrôle d'accès• Comprendre et mettre en œuvre les ACLs
• Gestion du stockage• Comprendre la gestion des volumes logiques• Gérer les volumes logiques à partir de la ligne de
commande• Introduction à BTRFS• Gérer les volumes btrfs à partir de la ligne de
commande
• Planification de tâches Linux• Le cron• La commande AT
• Connexion à des groupes et utilisateurs définis par le réseau
• Introduction aux services d'identification centralisés
• Introduction à PAM – SSSD• Introduction à LDAP• Mise en oeuvre et authentification sur un
serveur LDAP• Mise en oeuvre et authentification avec
kerberos/LDAP• S'authentifier sur un serveur AD
• Stockage distant • NFS Server• Accéder aux partages NFS sécurisé• Partage SMB- CIFS• Autofs
24/12/2015
7
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le plan de formation• Gestion de la sécurité
• Introduction au contrôle d’accès sous Linux• Comprendre et mettre en oeuvre SELinux
• Le Pare feu• Introduction au firewall• Firewalld
• Contrôle et résolution des problèmes du processus de démarrage
• Modifier les paramètres de démarrage• Utilisation de rd.break
24/12/2015
8
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Connaissances requises� Les participants doivent avoir de bonnes connaissances en
informatique et avoir suivi la formation RH124
24/12/2015
9
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Publics concernés� Toute personne souhaitant préparer aux certifications RHEL 7
� Professionnels de l'Informatique ayant besoin d'utiliser Linux dans un contexte professionnel.
� Futur administrateur Linux ayant besoin d'acquérir de bonnes bases sur Linux.
� Passionné d’informatique
� Administrateur Microsoft Windows
� Technicien avec une connaissance de MS Windows
� Débutant Linux ayant suivi la formation RH124
24/12/2015
10
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Liens utiles• http://www.redhat.com
• https://access.redhat.com/documentation
• http://doc.fedora-fr.org/wiki/Accueil
24/12/2015
11
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Are you ready ? ☺
Êtes vous prêt à porter la casquette rouge?
24/12/2015
12
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Utilisation d'expressions régulières avec GREP
Utilisation d'expressions régulières
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
13
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Introduction aux expressions régulières
• Recherche de motif avec Grep
24/12/2015
14
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction aux expressions régulières• Une expression régulière appelée expression rationnelle en français est
une chaîne de caractères ou motif qui représente un ensemble de chaînes de caractères
Bonjour | Salut
• Utilisées en shell et autres langages pour le traitement (recherche/remplacement) de chaines de caractères.
• Vérifier si l’utilisateur a bien spécifié une adresse de messagerie de type [email protected]
• Rechercher une adresse IP : ([0-9]{1,3}\.){3}[0-9]{1,3}
• Supprimer ou remplacer des caractères dans une phrase
24/12/2015
15
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction aux expressions régulières^ représente le début (d'une ligne, d'une chaîne de caractères)
$ représente la fin (d'une ligne, d'une chaîne de caractères)
. représente n'importe quel caractère
* représente 0 ou plus occurrences d'un élément. Donc e* représente soit "" ou "e" ou "ee" ou "eee"
+ représente 1 ou plus occurrences de e. Donc e+ représente soit "e","ee","eee", etc
? représente 0 ou 1 occurrences, comme s? dans villes? qui représente l'ensemble { "ville" , "villes" }
| représente un choix entre chaînes de caractères, comme la|le qui représente l'ensemble { "la" , "le" }
( ) groupage d'expressions, qui permet par ex. d'écrire (e|f)g au lieu de eg|fg. Utile pour les extractions de sous chaines.
[xyz] classes de caractères - un de caractères dans la liste doit être dans la cible représentée, [A-Za-z] représente toutes les lettres.
{m}, {m,}, ou \{m,n} représente le nombre d’occurrences
24/12/2015
16
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Recherche de motif avec Grep• Grep (g/RE/p) permet de rechercher des chaînes de caractères
• Associé avec des expressions régulières, grep permet de rechercher des motifs.
• Recherche la chaine ‘téléphone’ dans le fichier annuaire
#grep téléphone /tmp/annuaire.txt
• Recherche avec expressions régulières
#grep –E ‘tél|tel’ /tmp/annuaire.txt#grep -E 'e{1}.*o{1}' error.msg#ifconfig | egrep '([0-9]{1,3}\.){3}'
24/12/2015
17
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert
• Introduction aux expressions régulières
• Recherche de motif avec Grep
24/12/2015
18
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Utilisation d'expressions régulières avec SED
Utilisation d'expressions régulières
24/12/2015
19
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan
•Sed : Stream Editor
24/12/2015
20
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Sed : Stream Editor• Sed est un éditeur de flux textuel
• Sed permet d’opérer de multiple manipulations sur un flux textuel
• Sed n’est pas un éditeur de texte. Il travaille ligne par ligne.
• Recherche la chaine ‘téléphone’ et la remplacer par ‘tel’
#sed –e ‘s/téléphone/tel/g’ fichier
#cat ville75000 Paris29200 Brest1000 Bruxelles#sed 's/\([0-9]*\)\ \(.*\)/\2\t >\t\1/' villeBruxelles > 1000Paris > 75000Brest > 29200
24/12/2015
21
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert
•Sed : Stream Editor
24/12/2015
22
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre d'un serveur PXE
Déploiement de serveur
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
23
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Introduction au serveur PXE
• Configuration du serveur Red hat :
� dnsmasq
� Syslinux
� Tftp-server
� Pxelinux
� Mirroir FTP
� Activation des services
� Installation du client PXE
24/12/2015
24
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction au serveur PXE
• PXE - Preboot Execution Environment fournit un environnement de démarrage de stations de travail par le réseau
• PXE permet d’installer des machines de différents OS
• PXE effectue l’amorçage en plusieurs étapes :
� La machine recherche une adresse IP DHCP
� La machine recherche le fichier a amorcer pxelinux.0
� La machine peut alors télécharger le fichier “menu” pxelinux/defaut
� Le fichier contient l’information pour installer l’OS
24/12/2015
25
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
dnsmasq• dnsmasq est un petit outil qui offre des fonctionnalités de serveur dhcp
et cache dns
• dnsmasq va permettre d’attribuer des adresse IP et l’accès au serveur pxe
• Installation de dnsmasq
#yum install dnsmasq
24/12/2015
26
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
dnsmasq• Configuration du serveur
#vi /etc/dnsmasq.conf#Interfaces en écoute interface=enp0s3#Nom de domainedomain=alphorm.local# Étendue DHCPdhcp-range= enp0s3,192.168.1.110,192.168.1.253,255.255.255.0,1h# Passerelledhcp-option=3,192.168.1.1# Serveur DNSdhcp-option=6,192.168.1.1, 8.8.8.8server=8.8.4.4# Configuration PXEdhcp-boot=pxelinux.0,pxeserver,192.168.1.100
pxe-prompt="Press F8 for menu.", 30pxe-service=x86PC, "Install Red hat 7 a partir du serveur r 192.168.1.2", pxelinux#activation de trivail ftpenable-tftp#emplacement des fichierstftp-root=/var/lib/tftpboot/
24/12/2015
27
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
SysLinux• Syslinux est un chargeur d’amorçage pour Linux
• Utilisé pour les installations Linux via :
� PXE
� DVD, USB
� Le réseau
• Installation de syslinux
#yum install syslinux#ls /usr/share/syslinux
24/12/2015
28
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Tftp-server• Trivial File Transfer Protocol ou Protocole simplifié de transfert de
fichiers est un protocole de transfert de fichiers pas très évolué
• Tftp est utilisé pour les mises à jour d’équipements réseau, démarrage d’ordinateurs via le réseau.
• Tftp fonctionne sur UDP port 69
• Tftp server utilise xinetd, il faut donc activer tftp-server dans xinetd
• Installation du serveur tftp
#yum install tftp-server#cp -r /usr/share/syslinux/* /var/lib/tftpboot
24/12/2015
29
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Tftp-server• Activation de tfp server
#vi /etc/xinetd.d/tftp
• Configuration de tfpt pour PXE
#mkdir /var/lib/tftpboot/pxelinux.cfg#vi /var/lib/tftpboot/pxelinux.cfg/defaultdefault menu.c32 prompt 0 timeout 300 ONTIMEOUT local
menu title ########## PXE Boot Menu ########## label 1 menu label ^1) Install Red Hat Enterprise Linux 7 x64 with Local Repokernel RHEL7/vmlinuzappend initrd=RHEL7/initrd.img method=ftp://192.168.1.20/pub \devfs=nomount
24/12/2015
30
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
PXE
• Montage des sources
#mount -o loop /dev/cdrom /mnt
• Configuration de tfpt pour PXE
#mkdir /var/lib/tftpboot/RHEL7#cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot/RHEL7# cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot/RHEL7
24/12/2015
31
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mirroir FTP
• Création d’un dépôt local
#mount -o loop /dev/cdrom /mnt
• Configuration du serveur ftp
#yum install vsftpd#cp -r /mnt/* /var/ftp/pub/ #chmod -R 644/var/ftp/pub
24/12/2015
32
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Activation des services
• Création d’un dépôt local
# systemctl start dnsmasq# systemctl status dnsmasq# systemctl start vsftpd# systemctl status vsftpd# systemctl enable dnsmasq# systemctl enable vsftpd
24/12/2015
33
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Installation du client PXE
24/12/2015
34
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Installation du client PXE
24/12/2015
35
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Introduction au serveur PXE
• Configuration du serveur Red hat
� dnsmasq
� Syslinux
� Tftp-server
� Pxelinux
� Mirroir FTP
� Activation des services
� Installation du client PXE
24/12/2015
36
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Installation automatique d'un serveur avec
PXE/Kickstart
Déploiement de serveur
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
37
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Introduction à Kickstart
• Le fichier kickstart
• Installation automatique avec kickstart
24/12/2015
38
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction a Kickstart• Kickstart est une méthode d’installation automatique des systèmes
d’exploitation Linux, développée par Red Hat.
• La méthode Kickstart consiste en un fichier de réponse qui permet d’automatiser l’installation
• Ce fichier est un simple fichier texte contenant les informations d’installation :
� Partitionnement
� Média d’installation
� Paquet logiciel
� Configuration réseau
� ….
24/12/2015
39
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le fichier kickstart#version=RHEL7
# Use network installationurl --url="ftp://192.168.1.100/pub/"# Use graphical installgraphical# Run the Setup Agent on first bootfirstboot --enableignoredisk --only-use=sda# System languagelang fr_FR.UTF-8
# Network informationnetwork --bootproto=static --device=enp0s3 --gateway=192.168.0.1 --ip=192.168.0.100 --nameserver=8.8.8.8 --netmask=255.255.255.0 --ipv6=auto --activatenetwork --hostname=rhel7.alphorm.local# Root passwordrootpw --iscrypted$6$j42/o3y9QasOYi/s$4NdAoyfEmoUuoe9Q/QSIc337ktoc4gfzngzhN6Zk36xN5fVPINi4zBbM.ZdGVrLrtAbu4YmfUC8iZD6Uztnka/%packages@base@core
%end
24/12/2015
40
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Installation automatique avec kickstart• Création du fichier kickstart
• Copie du fichier dans le dépôt
• Ajout de l’entrée dans le ficher pxe defaut
#vi anaconda-ks.cfg#ksvalidator anaconda-ks.cfg
#cp anaconda-ks.cfg /var/ftp/pub/
label 2menu label ^2) Install RHEL 7 x64 with Local Repo using Kickstartkernel rhel7/vmlinuzappend initrd=rhel7/initrd.img inst.ks=ftp://192.168.1.10/pub/anaconda-ks.cfg
24/12/2015
41
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Installation automatique avec kickstart
24/12/2015
42
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Installation automatique avec kickstart
24/12/2015
43
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Installation automatique avec kickstart
24/12/2015
44
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Installation automatique avec kickstart
24/12/2015
45
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Introduction à Kickstart
• Le fichier kickstart
• Installation automatique avec kickstart
24/12/2015
46
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre et mettre en œuvre les ACLs
Les listes de contrôle d'accès
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
47
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Introduction aux listes de contrôle d’accès
• Mise en oeuvre des ACLs
• Héritage des ACLs
• Sauvegarde et restaurer les ACLs
24/12/2015
48
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction aux listes de contrôle d’accès• La norme Posix définit des droits d’accès sur les fichiers et répertoires à
3 et seulement 3 entités
• Les droits de lecture, d’écriture et d’exécution
• Au propriétaire, au groupe propriétaire et tous les autres comptes.
• Ces droits d’accès sont donc limités :
� Un seul utilisateur, un seul groupe d’utilisateurs
• Les listes de contrôle d’accès permettent d’étendre les entités, utilisateurs et groupes d’utilisateurs sur les fichiers.
24/12/2015
49
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en oeuvre des ACLs
• Installation
#yum install –y acl
• Vérifier la configuration
#grep ACL /boot/config-3.10.0-229.14.1.el7.x86_64CONFIG_EXT4_FS_POSIX_ACL=yCONFIG_XFS_POSIX_ACL=yCONFIG_BTRFS_FS_POSIX_ACL=yCONFIG_FS_POSIX_ACL=yCONFIG_GENERIC_ACL=yCONFIG_TMPFS_POSIX_ACL=yCONFIG_NFS_V3_ACL=yCONFIG_NFSD_V2_ACL=yCONFIG_NFSD_V3_ACL=yCONFIG_NFS_ACL_SUPPORT=m
24/12/2015
50
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en oeuvre des ACLs
• Afficher les acls
# getfacl fichier.1# file: fichier.1# owner: root# group: rootuser::rw-group::r--other::r--
• Positionner des acls
#setfacl –m u:ludo:rw fichier1#setfacl –m g:users:rw fichier1#setfacl –m u:ludo:rw,g:users:rw fichier1#setfacl –m u:ludo:6,g:users:6,o:0 fichier1
24/12/2015
51
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en oeuvre des ACLs
• Retirer toutes les acls
#setfacl –b fichier1
• Supprime des acls
#setfacl –x g:users fichier1#setfacl –x u:ludo,g:users fichier1
24/12/2015
52
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Héritage des ACLs• Ajout d’acl par défaut , acl hériter sur les fichiers et répertoires crées dans le répertoire
parent
# setfacl -m d:u:ludo:rw,d:g:ludo:rw rep_acl_d/getfacl rep_acl_d/# file: rep_acl_d/# owner: root# group: rootuser::rwxuser:ludo:rw-group::r-xgroup:ludo:rw-mask::rwxother::r-xdefault:user::rwxdefault:user:ludo:rw-default:group::r-xdefault:group:ludo:rw-default:mask::rwxdefault:other::r-x
24/12/2015
53
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Sauvegarder et restaurer les ACLs• Conserver les acls lors d’une copie du fichier ou répertoire
#cp –a file_acl /home/ludo/
• Sauvegarde des acls dans un fichier
#getfacl -R rep_acl_d/ >acl.save
• Restauration des acls
#setfacl --restore /root/acl.save
24/12/2015
54
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Introduction aux listes de contrôle d’accès
• Mise en oeuvre des ACLs
• Héritage des ACLs
• Sauvegarder et restaurer les ACLs
24/12/2015
55
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre la gestion des volumes logiques
Gestion du stockage
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
56
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Introduction aux Volumes logiques
• Pourquoi utiliser le LVM?
• Structure du LVM
24/12/2015
57
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction aux Volumes logiques • La gestion par volumes logiques : une méthode de gestion du stockage
• La gestion par volumes logiques : des outils de gestion destinés au stockage sur des disque dur.
• Le LVM ou Logical Volume Manager offre bien plus de flexibilité que le traditionel partitionnement
• Le LVM représente l'une des nombreuses formes de virtualisation du stockage, mais pas la seule.
• On parle de Volume de stockage disponible et non plus de partition
24/12/2015
58
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Pourquoi utiliser le LVM?
Plus de flexibilité • Agrandissement et réduction
� Il est possible d'agrandir ou réduire des volumes, mais les filesystems installés dessus doivent prendre en charge cette opération.
24/12/2015
59
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Pourquoi utiliser le LVM
Plus de flexibilité • Agrandissement et réduction
� Il est possible d'agrandir ou réduire des volumes, mais les filesystems installés dessus doivent prendre en charge cette opération.
• Clichés (snapshots)
� La création d'un snapshot consiste à prendre une « photo », un instantané du volume logique cible (ce qui est quasi-immédiat) et on commence alors à enregistrer les modifications apportées au volume logique cible.
� Avantage des snapshots, ils peuvent être utilisés comme une méthode de sauvegarde. Ils permettent de stocker une image statique d'un volume logique à un instant précis. Il faut comprendre une sauvegarde incrémentale
24/12/2015
60
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plus de flexibilité• Volumes agrégés par bandes (striping)
� Les volumes logiques peuvent être « stripés » sur un ensemble de volumes physiques, à l'instar du RAID 0.
� Cette technique est utilisée pour améliorer les performances, mais rends plus vulnérable le volume à une panne de disque.
Pourquoi utiliser le LVM
24/12/2015
61
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plus de flexibilité• Volumes agrégés par bandes (striping)
� Les volumes logiques peuvent être « stripés » sur un ensemble de volumes physiques, à l'instar du RAID 0.
� Cette technique est utilisée pour améliorer les performances, mais rends plus vulnérable le volume à une panne de disque.
• Miroir (mirroring)
� Les volumes logiques peuvent être également mirrorés, à l'instar du RAID 1.
� Cette technique permet de se protéger contre une panne sur un disque dur.
Pourquoi utiliser le LVM
24/12/2015
62
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Structure LVMPartitions
sda1 sdb1 sdc1 sdd1
24/12/2015
63
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Structure LVMPartitions
Groupe de Volumes
sda1 sdb1 sdc1 sdd1
24/12/2015
64
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Structure LVMPartitions
Groupe de Volumes
Volume logique Volume logique Volume logique
sda1 sdb1 sdc1 sdd1
24/12/2015
65
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Structure LVM
LV0 LV2LV1
/home /var /usr
Volumes logiques
24/12/2015
66
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert
• Introduction aux Volumes logiques
• Pourquoi utiliser le LVM?
• Structure LVM
24/12/2015
67
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Gérer les volumes logiques à partir de
la ligne de commande
Gestion du stockage
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
68
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan
• Les commandes LVM
• Création du LVM
• Visualiser le LVM
• Étendre les volumes
• Travailler avec les snapshots
24/12/2015
69
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les commandes LVM
Partitions
Groupe de Volumes
Volume logique Volume logique Volume logique
sda1 sdb1 sdc1 sdd1 pvcreate
vgcreate
lvcreate
24/12/2015
70
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Création du LVM• Installation du LVM
#yum install lvm2
• Création des partitions de type LVM
#fdisk /dev/sdc
• Création des volume physiques
#pvcreate /dev/sdb{1,2,3}
• Création du groupe de volumes
#vgcreate mon_vgroupe /dev/sdb{1,2,3}
• Création des volume logiques
#lvcreate –L 5G –n mon_lvolume mon_vgroupe
24/12/2015
71
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Création du LVM
• Création des volume logiques
#lvcreate –L 5G –n mon_lvolume mon_vgroupe
• Création du FS sur le volume logique
#mkfs.xfs –L volume _var /dev/ mon_vgroupe /mon_lvolume
24/12/2015
72
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Visualiser le LVM
• Vérifier et visualiser les volumes physiques
#pvscan#pvdisplay
• Vérifier et visualiser les groupes de volumes
#vgscan#vgdisplay#vgdisplay mon_vgroupe
• Vérifier et visualiser les volumes logiques
#lvdisplay#lvscan
24/12/2015
73
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Extendre et réduire des volumes
• Ajout d’espace au volume
#lvextend –L +5G /dev/ mon_vgroupe /mon_lvolume
• Agrandir le fs xfs
#xfs_grows /dev/ mon_vgroupe /mon_lvolume
• Reduire l’espace du volume
#lvreduce –L -5G /dev/ mon_vgroupe /mon_lvolume
• Agrandir le fs xfs – Impossible !!
24/12/2015
74
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Extendre et réduire des volumes
• Ajout de nouveau volumes physiques
#pvcreate /dev/sdb7
• Ajout du nouveau PV au groupe de volume
#vgextend mon_vgroupe /dev/sdb7
• Ajout d’espace au volume
#lvextend –L +5G /dev/ mon_vgroupe /mon_lvolume
• Agrandir le fs xfs a chaud
#zfs_grows /dev/ mon_vgroupe /mon_lvolume
24/12/2015
75
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Travailler avec les snapshots
• Prendre un snapshot du volumes logique
# lvcreate -L 5G -s -n snap_00_lv0 /dev/vgroupe/lv0
• Monter le snapshot
# mount -onouuid /dev/vgroupe/snap_00_lv0 /tmp/snap_lv0/
• Fusionner le snapshot
## lvconvert --merge /dev/vgroupe/snap_00_lv0
24/12/2015
76
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert
• Les commandes LVM
• Création du LVM
• Visualiser le LVM
• Étendre les volumes
• Travailler avec les snapshots
24/12/2015
77
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction au BTRFS
Gestion du stockage
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
78
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan
• Introduction au BTRFS
• Pourquoi utiliser BTRFS?
• Structure BTRFS
24/12/2015
79
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction au BTRFS• Btrfs (B-tree file system) est un système de fichiers basé sur le Copy-On-
Write sous licence GNU GPL
• En 2007 Le B-tree « copie-sur-écriture », structure de données fondamentale dans la conception de Btrfs, est proposé par Ohad Rodeh (chercheur chez IBM).
• 2007 Chris Mason, qui travaille à l’époque pour la société SUSE sur un autre système de fichiers appelé ReiserFS, rejoint Oracle et commence le développement de Btrfs.
• 2009 La version 1.0 de Btrfs est intégrée au noyau Linux.
• 2012 Quelques distributions Linux intègrent Btrfs en tant que système de fichiers apte à être utilisé en production.
• 2013 Chris Mason rejoint Facebook où il poursuit le développement de Btrfs.
24/12/2015
80
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction au BTRFS
• Aujoutd’hui BTRFS est développé conjointement par RedHat, Intel, Fujistu, Suse, …
• Btrfs est destiné à devenir le successeur de ext4 et ext3, connus pour être les systèmes de fichiers par défaut des distributions Linux.
• Btrfs a vocation à combler l'absence des fonctionnalités dans les systèmes de fichiers utilisés sous Linux
24/12/2015
81
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
• Énormes capacités de stockage
• Support natif du RAID :
� RAID-0, RAID-1, RAID-5, RAID-10
• Intégrité des données :
� Les données et métadonnées ont de sommes de contrôle vérifiées à chaque lecture de bloc et mise à jour à chaque écriture
� « Autoréparation » via les sommes de contrôle (si miroir)
• Contrôle des périphériques de stockage :
� Lancement périodique de contrôle des disques en ligne
• Compression/décompression à la volée
Pourquoi utiliser BTRFS
24/12/2015
82
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Pourquoi utiliser BTRFS• Gestion des quotas
• Gestion de réservations d’espaces – notion d’extends
• Instantanés et clones, clones “instantanés” (seules les modifications sont stockées)
• Envoi/Réception :
� Permet d’échanger des clichés pour les sauvegardes sur des systèmes distants
• Déduplication
� Permet de détecter des données redondantes et ainsi économiser l’espace disque
• Défragmentation
24/12/2015
83
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Structure BTRFS
sda1
sdb1 sdc sdd
Partitions ou disques
sda2
24/12/2015
84
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Structure BTRFS
Volume BTRFS
sda1
sdb1 sdc sdd
Partitions ou disques
sda2
24/12/2015
85
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Structure BTRFS
Sous-volume FS Autre application
Volume BTRFS
sda1
sdb1 sdc sdd
Partitions ou disques
sda2
24/12/2015
86
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Introduction au BTRFS
• Pourquoi utiliser BTRFS?
• Structure BTRFS
24/12/2015
87
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Gérer les volumes btrfsà partir de la ligne
de commande
Gestion du stockage
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
88
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan
• Installation de BTRFS
• Mise en oeuvre
• Étendre et réduire
24/12/2015
89
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Installation de Btrfs
• Installation
#yum install btrfs-progs.x86_64
24/12/2015
90
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en oeuvre• Création du volume btrfs
# mkfs.btrfs -d raid10 -m raid10 -L btrfs_vol /dev/sd{c,d,e,f}Btrfs v3.16.2See http://btrfs.wiki.kernel.org for more information.
Turning ON incompat feature 'extref': increased hardlink limit per file to 65536adding device /dev/sdd id 2adding device /dev/sde id 3adding device /dev/sdf id 4fs created label btrfs_vol on /dev/sdc
nodesize 16384 leafsize 16384 sectorsize 4096 size 32.00GiB
# btrfs filesystem showLabel: 'btrfs_vol' uuid: be71f5f1-a6dd-4685-ae68-df4695638c19
Total devices 4 FS bytes used 112.00KiBdevid 1 size 8.00GiB used 2.03GiB path /dev/sdcdevid 2 size 8.00GiB used 2.01GiB path /dev/sdddevid 3 size 8.00GiB used 2.01GiB path /dev/sdedevid 4 size 8.00GiB used 2.01GiB path /dev/sdf
24/12/2015
91
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en oeuvre• Création du sous volume btrfs
#btrfs subvolume create btrfs_vol/subvol
• Afficher les sous volume btrfs
#btrfs subvolume list btrfs_vol/ID 258 gen 19 top level 5 path subvol
• Monter le sous volume
#mount -o subvolume=258 /dev/sdc /root/btrfs_sous_vol/
24/12/2015
92
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Étendre et réduire• Ajouter un périphérique
#btrfs device add /dev/sdc btrfs_sous_vol/
• Afficher les sous volume btrfs
#btrfs filesystem showLabel: 'btrfs_vol' uuid: be71f5f1-a6dd-4685-ae68-df4695638c19
Total devices 5 FS bytes used 736.00KiBdevid 2 size 8.00GiB used 1.16GiB path /dev/sdddevid 3 size 8.00GiB used 1.16GiB path /dev/sdedevid 4 size 8.00GiB used 1.16GiB path /dev/sdfdevid 5 size 8.00GiB used 1.16GiB path /dev/sdgdevid 6 size 8.00GiB used 0.00 path /dev/sdc
• Supprimer un périphérique
# btrfs device del /dev/sdc btrfs_vol/subvol/
24/12/2015
93
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Installation de BTRFS
• Mise en oeuvre
• Étendre et réduire
24/12/2015
94
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le cron
Planification de tâches Linux
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
95
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan
• Introduction
• Le cron
24/12/2015
96
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction
• Un administrateur système doit pouvoir mettre en place un certain nombre de tâches
• L’exécution des tâches a besoin d’être automatisée
• Le cron va permettre de lancer ces tâches à des fréquences spécifiées par l’administrateur
24/12/2015
97
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le cron• Cron est un diminutif de crontab qui signifie chrono table ou table de
planification en français
• Cron comprend un “démon” (dragon) crond et une commande d’édition
• Chaque utilisateur peut mettre en œuvre l’exécution automatique des tâches.
• On programme le lancement de commande avec la commande crontaben :
� Minutes, heures, jour du mois, mois et jour de la semaine
24/12/2015
98
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le cron• Une ligne correspond à une tâche à exécuter en mm hh jj MMM JJJ
• mm représente les minutes (de 0 à 59)
• hh représente l'heure (de 0 à 23)
• jj représente le numéro du jour du mois (de 1 à 31)
• MMM représente l'abréviation du nom du mois (jan, feb, ...) ou bien le numéro du mois (de 1 à 12)
� JJJ représente l'abréviation du nom du jour ou bien le numéro du jour dans la semaine :
• 0 = Dimanche, 1 = Lundi, 2 = Mardi, ..., 6 = Samedi , 7 = Dimanche
24/12/2015
99
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le cron• Pour chaque valeur numérique (mm, hh, jj, MMM, JJJ) les notations
possibles sont :
� * : à chaque unité (0, 1, 2, 3, 4...)
� 5,8 : les unités 5 et 8
� 2-5 : les unités de 2 à 5 (2, 3, 4, 5)
� */3 : toutes les 3 unités (0, 3, 6, 9...)
� 10-20/3 : toutes les 3 unités (10, 13, 16, 19)
• Toutes les 5 minutes
*/5 * * * * df >> /tmp/df.log
24/12/2015
100
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le cron
24/12/2015
101
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le cron
• Lister les cron
#crontab –l
• Éditer la liste de cron
#crontab -e
• Supprimer les cron
#crontab -r
• Changer d’éditeur
#export EDITOR=VIM
24/12/2015
102
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert
• Introduction
• Le cron
24/12/2015
103
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
AT
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Planification de tâches Linux
24/12/2015
104
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan
• Introduction à AT
• Utilisation de la commande AT
24/12/2015
105
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction à AT
• Le cron permet d’exécuter des tâches de façon récurrente, tous les jours à 2 heures du matin par exemple
• Parfois, le besoin de lancer une tâche à une heure précise, mais une seule fois
• Pour ce faire la commande at permet de lancer un job une seule fois
24/12/2015
106
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction à AT• at permet d'indiquer l'heure du lancement de manière assez complexe
• at accepte des spécifications de la forme HH:MM pour exécuter un travail à une heure donnée de la journée en cours (ou du lendemain si l'heure mentionnée est déjà dépassée).
• On peut aussi lui fournir l'un des arguments suivants : midnight (minuit), noon(midi), ou teatime (l'heure du thé, soit 16 heures).
• On peut indiquer le jour du lancement, en précisant une date du type nom-du-mois, jour année (en anglais).
• On peut indiquer une heure de la forme now (maintenant) + nombre d'unités, où les unités peuvent être minutes, hours (heures), days (jours), ou weeks(semaines)
• On peut également demander à at de déclencher le travail le jour même en ajoutant le suffixe today ou le lendemain en ajoutant tomorrow
24/12/2015
107
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction à AT• Le super-utilisateur peut toujours employer at.
• Les permissions des utilisateurs sont déterminées par les fichiers /etc/at.allow et /etc/at.deny
• Si le fichier /etc/at.allow existe, seuls les utilisateurs dont les noms sont mentionnés dans ce fichier peuvent utiliser at.
• Si /etc/at.allow n'existe pas, at vérifie si /etc/at.deny existe, et tous les utilisateurs non-mentionnés dans ce fichier ont le droit d'invoquer at.
• Si aucun de ces deux fichiers n'existe, seul le super-utilisateur a le droit d'appeler at.
• Un fichier /etc/at.deny vide signifie que tous les utilisateurs ont le droit d’exécuter at
24/12/2015
108
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
AT• at et batch lisent, depuis l'entrée standard, ou depuis un fichier, des
commandes qu‘elles exécuteront ultérieurement, en utilisant /bin/sh.
• at lance les commandes indiquées à une heure précise.
• atq affiche la liste des commandes en attente d'exécution, sauf si l'appelant est le Super-utilisateur.
• atrm supprime les travaux en attente.
• batch exécute les commandes indiquées lorsque la charge système le permet, c'est à dire lorsque la charge du processeur, obtenue depuis le fichier /proc/loadavg descend en dessous de 1,5 par défaut, ou en dessous d'une valeur mentionnée explicitement durant l'invocation de atrun
24/12/2015
109
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Utilisation de la commande AT
• Lancer une commande a une midi
#at 12:00at> echo "j ecris dans un fichier" >/tmp/at.testat> <EOT>job 1 at Fri Nov 13 12:00:00 2015
• Lancer une commande demain à 11h54
#at 11:54 tomorrowat> echo "j ecris dans un fichier" >/tmp/at.testat> <EOT>job 2 at Sat Nov 14 11:54:00 2015
• Lancer une commande dans 5 minutes
#at now +5 minutes
24/12/2015
110
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Utilisation de la commande AT
• Lister les travaux a exécuter## atq2 Sat Nov 14 11:54:00 2015 a root3 Fri Nov 13 12:03:00 2015 a root4 Tue Nov 17 11:59:00 2015 a root5 Fri Nov 27 11:59:00 2015 a root
• Supprimer un job
# atrm 3#atq2 Sat Nov 14 11:54:00 2015 a root4 Tue Nov 17 11:59:00 2015 a root5 Fri Nov 27 11:59:00 2015 a root
24/12/2015
111
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert
• Introduction à AT
• Utilisation de la commande AT
24/12/2015
112
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Introduction aux services d'identification centralisés
Connexion à des groupes et utilisateurs définis par le réseau
24/12/2015
113
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Introduction
• Ldap - Microsoft Active Directory
• Identity Management
• Comprendre le SSO
• Kerberos
24/12/2015
114
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction
NFS Serveur Service Web Applications Applications Service messagerie Base de données
24/12/2015
115
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ldap - Microsoft Active Directory – Samba4
Applications Service messagerie Base de données
LDAP Active Directory
NFS Serveur Service Web Applications
24/12/2015
116
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Identity Management - IdM
Replica IdM
NFS Serveur Service Web Applications
IdM
24/12/2015
117
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre le SSO
Utilisateur/mot de passe
Applications Service messagerie Base de données
SSO - Single Sign On
NFS Serveur Service Web Applications
24/12/2015
118
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
• Lorsque les utilisateurs accèdent à des services de type différents, comme par exemple la messagerie, l’ouverture de session MS Windows, des applications de Base de données, des outils de gestion informatique, …
• Ils doivent fournir des identifiants de différents types.
• Le SSO Single Sign On permet aux administrateurs de centralisés les informations d’authentification afin d’accéder à différents services.
• Les utilisateurs ne se « loguent » plus qu’une fois et accèdent aux différents services
• Simplicité pour l’utilisateur, simplicité pour les administrateurs pour gérer les authentifications et la mise en place de règles d’accès aux services.
• Le service est centralisé, faiblesse de sécurité, accès à un service donne accès à tous les services.
•
Comprendre le SSO
24/12/2015
119
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Kerberos
Utilisateur/mot de passe
Kerberos/IdMKerberos/LDAPKerberos/MS active Directory
NFS Serveur Service Web Applications Applications Service messagerie Base de données
24/12/2015
120
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Introduction
• Ldap - Microsoft Active Directory – Samba4
• Identity Management - IdM
• Comprendre le SSO
• Kerberos
24/12/2015
121
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Introduction àPAM - SSSD
Connexion à des groupes et utilisateurs définis par le réseau
24/12/2015
122
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• PAM – Plugabble Authentification Module
• NSS – Name Service Switch
• SSSD - System Security Services Daemon
24/12/2015
123
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
PAM – Plugabble Authentification Module• Avant PAM :
� Les programmes login, telnet, rlogin, gdm, devaient être modifiés pour assurer de nouvelles fonctionnalités, modifier la méthode d’authentification, modifier les règles de sécurité.
• Avec PAM :
� Un ensemble de bibliothèques fournissent aux programmes une API pour modifier les méthodes d’authentification et règles de sécurité
� Les programmes login, gdm peuvent maintenant utiliser différentes méthodes (clé USB, biométrie, smartcard, ldap, kerberos, etc)
24/12/2015
124
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
PAM – Plugabble Authentification Module• PAM est une solution développée par SUN en 1995
� Offre un ensemble de bibliothèques, offre diverses stratégies pour l’authentification, vérification des mots de passe, plage horaires, etc. …
• PAM définit des services :
� Login, ssh, ftp, etc..
• PAM définit un type de tâche pour chaque service :
� Auth, account, password et session
• PAM définit une liste de règles pour chaque tâche :
� required , requisite, sufficient
• PAM définit un module pour chaque règle ou stratégie :
� Pam_unix, pam_ldap, pam_krb, pam_sss, pam_security, etc.
24/12/2015
125
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
PAM – Plugabble Authentification Module• Chaque application qui utilise PAM dispose de son propre service
• Les fichiers de configuration des services se trouvent dans /etc/pam.d
• Le fichier de configuration du service system-auth
• Les services
#ls /etc/pam.d/atd smtp system-auth login sshd sudo
• Le services system-auth
#%PAM-1.0# This file is auto-generated.# User changes will be destroyed the next time authconfig is run.auth required pam_env.soauth sufficient pam_unix.so nullok try_first_passauth requisite pam_succeed_if.so uid >= 1000 quiet_successauth sufficient pam_sss.so use_first_pass
24/12/2015
126
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
PAM – Plugabble Authentification Module• PAM est donc une solution qui va permettre d’ajouter simplement et
sans devoir modifier les programmes
� des règles d’authentification
� des fournisseurs d’authentification supplémentaires ldap, Kerberos, usb, …
• PAM n’indique pas aux programmes (login, ssh, etc.) quel service d’authentification utiliser.
• Il fournit des bibliothèques pour y accéder
• Ce rôle est dédié à NSS
24/12/2015
127
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
NSS – Name Service Switch• Name Service Switch est un mécanisme de service de noms
• Il permet aux programmes de savoir à quel service s’adresser pour obtenir de base de données d’authentification, d’alias pour le courrier électronique, des noms d’hôtes, etc...
• NSS spécifie les sources des bases de données et leur ordre de recherche dans le fichier configuration /etc/nsswitch.conf
• Nsswitch.conf
passwd: files sss ldapshadow: files sss ldapgroup: files sss ldap
#hosts: db files nisplus nis dnshosts: files dns ldap
24/12/2015
128
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
SSSD - System Security Services Daemon• Depuis la version 6.4 de Red hat Linux, l’authentification externe des
utilisateurs repose sur SSSD.
• Avant SSSD, Red Hat linux utilisait NSS_LDAP et NSCD pour l’authentification sur les serveurs d’annuaire LDAP (cache avec NSCD)
• WinBind/Samba/Kerberos pour l’authentification Microsoft Active Directory (pas de cache, nombreuses requêtes client/serveur)
• SSSD - System Security Services Daemon fournit une interface commune aux mécanismes d’authentification qui permet de se connecter à de multiples sources de base de données d’identification. LDAP, Active Directory, IdM,…
• SSSD fournit un système de cache, l’accès à des dossiers distants
24/12/2015
129
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
SSSD - System Security Services Daemon• SSSD repose sur un fichier de configuration /etc/sssd.conf
• Il faut configurer SSSD avec NSS et PAM
• Extrait du fichier sssd.conf
[domain/default]
autofs_provider = ldapldap_schema = rfc2307biskrb5_realm = #ldap_search_base = dc=alphorm,dc=localid_provider = ldapauth_provider = ldapchpass_provider = ldapldap_uri = ldap://192.168.1.39ldap_id_use_start_tls = True
24/12/2015
130
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• PAM – Plugabble Authentification Module
• NSS – Name Service Switch
• SSSD - System Security Services Daemon
24/12/2015
131
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Introduction à LDAP
Connexion à des groupes et utilisateurs définis par le réseau
24/12/2015
132
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Les annuaires
• Les annuaires électroniques
• Le protocole LDAP – Lightweight Directory Access Protocole
• Le modèle de nommage
• Le Directory Information Tree DIT
• Structure de l'annuaire
• Pour aller plus loin avec LDAP
� http://www.alphorm.com/formation/formation-en-ligne-linux-lpic-3-environnement-mixte-examen-300
24/12/2015
133
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les annuaires• Le petit Larousse nous dit :
� ANNUAIRE n.m. (du lat. annuus, annuel). Ouvrage publié chaque année, donnant la liste des membres d'une profession, des abonnés à un service, etc. : Annuaire du téléphone, Bottin.
• L'exemple classique d'un répertoire est l’annuaire téléphonique, où les personnes sont classées par ordre alphabétique et en regards leurs numéros de téléphone et adresses.
• Chaque personne (ou famille) représente alors un objet, le numéro de téléphone et l’adresse sont les attributs de cet objet.
• Certains objets peuvent être aussi des entreprises, et leurs attributs peuvent alors inclurent les numéros de fax ou les heures d'ouverture et diverses informations (Logo, adresse de messagerie,…).
� Famille de Ludo 11 rue du paradis Tel : 0033 6 78 45 24 67
� Entreprise a Ludo 11 rue du paradis Tel : 0033 6 78 45 24 67 Fax : 784930202
24/12/2015
134
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les annuaires électroniques• Contrairement à son homologue imprimé, un annuaire électronique a une nature
hiérarchique.
• Ce qui permet aux objets d'être placés sous d'autres objets pour indiquer une relation parent-enfant.
• Par exemple, le répertoire téléphonique pourrait être étendu et avoir des objets représentant des zones de la ville, chacune avec des objets personnes et entreprises se trouvant sous les objets de zone.
• Les objets arrondissement se trouveraient alors sous un objet ville, et qui pourrait encore se trouver sous un objet état ou province, et ainsi de suite.
• Une copie imprimée serait beaucoup plus difficile à utiliser car vous auriez besoin de connaître le nom et localisation géographique, alors qu’il serait peut-être plus simple de rechercher par type d’entreprise. Je recherche un plombier
• En revanche, les ordinateurs sont capables de trier et rechercher des informations dans des fichiers, répertoires et bases de données, cela permet donc une structure plus évoluée.
24/12/2015
135
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les annuaires électroniques
France
Ile de France Provence
Paris Marseille11e arrondissement 8e arrondissementsFamille de Ludo
Adresse : 7 rue du paradis
Tel : 0033 6 78 45 24 67
24/12/2015
136
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les annuaires électroniques• L'utilisation d'annuaire ne se limite pas à la recherche de personnes ou
de ressources. Un annuaire permet de :
� constituer un carnet d'adresse
� authentifier des utilisateurs
� définir les droits de chaque utilisateur
� recenser des informations sur un parc matériel (ordinateurs, serveurs, adresses IP et adresses MAC, ...)
� contenir les informations configuration des services DHCP, DNS, Kerberos …
� décrire les applications disponibles
24/12/2015
137
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les annuaires électroniques• Ils sont dynamiques : la mise à jour d'un annuaire électronique est beaucoup
plus simple à réaliser que celle d'un annuaire papier. Ainsi un annuaire en ligne sera à jour beaucoup plus rapidement, d'autant plus que les personnes recensées dans l'annuaire peuvent elles-mêmes modifier les informations les concernant.
• Ils sont sûrs : les annuaires en ligne disposent de mécanismes d'authentification des utilisateurs grâce à un mot de passe et un nom d'utilisateur ainsi que des règles d'accès permettant de définir les branches de l'annuaire auxquelles l'utilisateur peut accéder
• Ils sont souples : ils permettent ainsi de classer l'information selon des critères multiples contrairement aux annuaires papiers, imprimés une fois pour toute pour permettre de rechercher selon un critère figé (en général l'ordre alphabétique selon le nom)
24/12/2015
138
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les annuaires électroniques• On trouve beaucoup d’implémentations d’annuaires électroniques. Tous
ces serveurs implémentent le protocole LDAP ou sont compatibles :
� Apache Directory Server,
� OpenLDAP,
� 389 Directory Server (Red hat)
� Oracle Directory Server Enterprise Edition, Oracle Internet Directory,
� Microsoft Active Directory
� Open Directory d'Apple,
24/12/2015
139
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Lightweight Directory Access Protocol• Un protocole d'accès aux données dans un annuaire. Il définit comment ajouter,
modifier, supprimer, rechercher des données dans une base de données, quels protocoles de chiffrement utilisés (kerberos, ssl...), et quels mécanismes d'authentification sont utilisés.
• Ce protocole est utilisé dans la relation client/serveur, mais également entre serveurs (serveur/serveur). Les BDs LDAP peuvent être dupliquées et réparties
• LDAP Lightweight Directory Access Protocol, issu de X.500 Directory Access Protocol (DAP)
• Le protocole fut créé par Tim Howes de l'Université du Michigan, Steve Kille du ISODE et Wengyik Yeong de Performance Systems International en 1993
24/12/2015
140
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Lightweight Directory Access Protocol• Initialement LDAP était un protocole d'accès à un annuaire X.500 avant que
l'université du Michigan n'en fasse un annuaire Standalone
• L'annuaire LDAP est une base de données organisée hiérarchiquement qui recense des données sur des objets qui peuvent être des personnes, des serveurs, des imprimantes, …
• Il existe deux versions de LDAP : LDAPv2 et LDAPv3
� LDAP v3 devient un standard pour l'Internet (RFC 2251)
� LDAP v3 permet d’étendre les fonctionnalités
24/12/2015
141
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Lightweight Directory Access Protocol• Usage d'un service d'annuaire LDAP
� un service d'annuaire
� un service d'authentification
� pour la messagerie, carnet d’adresses
� pour les applications internet/intranet, certificats, configuration des applis…
24/12/2015
142
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Lightweight Directory Access Protocol• Un protocole de communication.
• Un modèle de données
• Un modèle de nommage
• Un modèle fonctionnel
• un modèle de sécurité
• Un format d'échange de données, le format LDIF.
• Un modèle de réplication
24/12/2015
143
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le modèle de nommage• Le modèle de nommage définit l'organisation des données et la façon d'y
accéder.
• Il spécifie une structure arborescente appelée le Directory Information Tree (DIT) dans laquelle on trouve des entrées.
• L'arbre est composé d'entrées simples et d'alias.
• Depuis LDAP v3, les entrées d'un annuaire peuvent être réparties entre plusieurs serveurs (referall ) et peuvent être désignées de deux façons, les DN et le RDN.
24/12/2015
144
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le modèle de nommage• Il y a plusieurs approches afin d’organiser le nommage des entrées :
� Par pays : C=FR, C=UK
� Par organisation : O=ALPHORM
� Par nom de domaine : ALPHORM.COM DC=ALPHORM,DC=COM
24/12/2015
145
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le Directory Tree, structure de l’arbre• On peut trouver pour une grande organisation :
24/12/2015
146
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Structure de l'annuaire, Exemples d'arbres • Dans ce cadre, le modèle LDAP peut être plat :
24/12/2015
147
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Structure de l'annuaire, Exemples d'arbres • Découpage par type d'objet :
24/12/2015
148
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Structure de l'annuaire• Au sommet de l’arbre se trouve la racine ou suffixe appelé Directory Infomation Tree (DIT)
• Chaque entrée a un identifiant unique, le Distinguished Name (DN).
• Il est constitué à partir de son Relative Distinguished Name (RDN) suivi du DN de son parent. C'est une définition récursive.
• On peut faire l'analogie avec une autre structure arborescente, les systèmes de fichiers; le DN étant le chemin absolu et le RDN le chemin relatif à un répertoire. En règle générale le RDN d'une entrée représentant une personne est l'attribut cn (common name) :
dc=com
dc=alphorm
ou=people ou=groupe
cn=ludo
• Le RDN est rdn:cn=ludo, son DN est dn: cn=ludo, ou=people, dc=alphorm,dc=com
24/12/2015
149
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Structure de l'annuaire• Au sommet de l’arbre on trouve donc des attributs de différents types qui constituent
donc le DIT.
• dc est l’abréviation de domain component (composante du domaine).
• Dans notre exemple com est le top-level du domaine et alphorm est un sous domaine de com.
• Ils sont alors séparés dans deux entités différentes et sont donc séparés par des virgules dans la norme X500
dc=alphorm, dc=com
24/12/2015
150
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Structure de l'annuaire• On trouvera donc un espace de nom de type :
• On trouve également ObjectClasss
24/12/2015
151
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Formation complète et avancées sur LDAPhttp://www.alphorm.com/formation/formation-en-ligne-linux-lpic-3-environnement-mixte-examen-300
24/12/2015
152
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Les annuaires
• Les annuaires électroniques
• Le protocole LDAP – Lightweight Directory Access Protocole
• Le modèle de nommage
• Le Directory Information Tree DIT
• Structure de l'annuaire
• Pour aller plus loin avec LDAP
� http://www.alphorm.com/formation/formation-en-ligne-linux-lpic-3-environnement-mixte-examen-300
24/12/2015
153
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
S'authentifier sur un serveur LDAP
Connexion à des groupes et utilisateurs définis par le réseau
24/12/2015
154
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Mise en œuvre serveur Openldap
• Authentification client ldap
� Méthode nss-pam-ldap nscd
� Méthode SSSD
24/12/2015
155
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre serveur Openldap
• Installation des pasquets openldap server et client
#yum-y install openldap-servers openldap-clients
• Installation de la base de données
# cp /usr/share/openldap-servers/DB_CONFIG.example \/var/lib/ldap/DB_CONFIG# chown ldap. /var/lib/ldap/DB_CONFIG#systemctl enable slapd#systemctl start slapd
24/12/2015
156
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre serveur Openldap
• Mise en place du mot de passe pour l’administrateur ldap
#slappasswdNew password:Re-enter new password:{SSHA} ZNSXX9tIF7aNJlcaqZfvE04gbI/3+YHX
• Insertion dans la base de données
#vi passwdRoot.ldifdn: olcDatabase={0}configchangetype: modifyadd: olcRootPWolcRootPW: {SSHA} ZNSXX9tIF7aNJlcaqZfvE04gbI/3+YHX
#ldapadd -Y EXTERNAL -H ldapi:/// -f chrootpw.ldif
24/12/2015
157
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre serveur Openldap
• Ajout des schéma ldap
#ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif#ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif#ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
24/12/2015
158
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre serveur Openldap
• Création du domaine ldap alphorm.local
#vi domain_alphorm.ldifdn: olcDatabase={1}monitor,cn=config changetype: modifyreplace: olcAccess olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.base="cn=Manager,dc=alphorm,dc=local" read by * none
dn: olcDatabase={2}hdb,cn=config changetype: modify….dn: olcDatabase={2}hdb,cn=config changetype: modifyreplace: olcRootDNolcRootDN: cn=Manager, dc=alphorm,dc=local
• Insertion de domain_alphorm.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -f domain_alphorm.ldif
24/12/2015
159
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre serveur Openldap• Création de l’arborscence pour le domaine alphorm.local
# vi domain.ldifdn: dc=alphorm,dc=localobjectClass: top objectClass: dcObjectobjectclass: organizationo: alphorm formationdc: alphorm
dn: cn=Manager,dc=alphorm,dc=local objectClass: organizationalRolecn: Manager description: Directory Manager
dn: ou=People,dc=alphorm,dc=localobjectClass: organizationalUnitou: People
• Création de l’arborscence pour le domaine alphorm.local
#ldapadd -x -D cn=Manager,dc=alphorm,dc=local -W -f domain.ldif
24/12/2015
160
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre serveur Openldap• Ajout des utlisateurs ldap
#vi ldapuser.ldifdn: uid=ludovic,ou=People,dc=server,dc=world objectClass: inetOrgPersonobjectClass: posixAccountobjectClass: shadowAccountcn: ludovicsn: formateur userPassword: {SSHA}xxxxxxxxxxxxxxxxxloginShell: /bin/bashuidNumber: 10000gidNumber: 10000 homeDirectory: /home/ludovic
dn: cn=formateur,ou=Group,dc=server,dc=world objectClass: posixGroupcn: ludovicgidNumber: 10000memberUid: formateur
#ldapadd -x -D cn=Manager,dc=salphorm,dc=local -W -f ldapuser.ldif
24/12/2015
161
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Méthode nss-pam-ldap - nscd
• Installation des pasquets nss-pam-ldap et nscd
#yum-y install openldap-clients nss-pam-ldapd
• Configuration du client avec authconfig
#authconfig --enableldap \--enableldapauth \--ldapserver=ldap.alphorm.local \--ldapbasedn="dc=alphorm,dc=local" \--enablemkhomedir \--update
24/12/2015
162
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Méthode SSSD
• Installation des pasquets sssd sssd-ldap
#yum-y install sssd sssd-ldap
• Configuration du client avec authconfig
#authconfig --enablesssd --enablesssdauth \--enablelocauthorize --enableldap --enableldapauth \--ldapserver=ldap://ldap.alphorm.local \--ldapbasedn=dc=alphorm,dc=local --enablerfc2307bis \--enablemkhomedir --enablecachecreds --enableldaptls --update
24/12/2015
163
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert
• Mise en œuvre serveur Openldap
• Méthode nss-pam-ldap nscd
• Méthode SSSD
24/12/2015
164
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
S'authentifier avec kerberos
Connexion à des groupes et utilisateurs définis par le réseau
24/12/2015
165
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Introduction Kerberos
• Principes de fonctionnement
• Royaume Kerberos
• Architecture Kerberos
• Mise en œuvre du serveur de temps
• Mise en œuvre d’un serveur Kerberos
• Intégration Red Hat Linux
24/12/2015
166
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction Kerberos• Protocole développé au MIT dans le cadre du projet Athena au début
des années 1980
• Permet l’authentification forte a des services dit “kerbérisé”
• Standardisé par 2 RFC : RFC 1510 et RFC 1964
• Kerberos est aujourd’hui en version 5.
• A la base de l’authentification MS Windows 200X
• Kerberos permet l’authentification des utilisateurs et gère ensuite l’accès aux différents services.
24/12/2015
167
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Principe de fonctionnement
24/12/2015
168
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Royaume Kerberos• L’architecture Kerberos est constituée de serveurs Kerberos,
d’utilisateurs, de postes de travail et de serveurs hébergeant des services, le tout rassemblés dans un ROYAUME kerberos (REALM)
• Les “principals”
• Le KDC – Key Distribution Center – Centre de Distributions des Clés
24/12/2015
169
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Architecture Kerberos� Les principals : Un utilisateur, un client, un serveur
• nom/instance@KRB-REALM
• ldap/[email protected]
• ludo/[email protected]
• host/[email protected]
� Chaque principal dispose de clés secrètes
• Mot de passe pour les utilisateurs
• Fichier keytab pour les serveurs et hôtes
24/12/2015
170
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Architecture Kerberos
• Le service Kerberos est constitué de plusieurs entités regroupé dans un KDC – Key Distribution Center
� Un serveur d’authentification AS
� Contient une base de données avec les utilisateurs, les services et leurs clés associées
• Module kadmin d’administration, utilisateurs, services, hôtes, ACL, méthode de chiffrement, ...
� Un service de délivrèrent de Ticket TGS
� Fournit l’accès aux services “kerbérisé”
24/12/2015
171
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Principes de fonctionnement
• Afin d’accéder aux services “Kerbérises” un utilisateur obtient un ticket d’accès aupres du KDC (TGT –Ticket Granting Ticket)
� Commande kinit ludo/[email protected]
• Avec le TGT le client envoie une demande de ticket auprès du TGS
� Klist pour visualiser les tickets
� Le client inclue l’identifiant du service demandé et le TGT obtenue du KDC
• Le TGS vérifie la validité du TGT et envoie alors les informations d’accès au service
• Le TGT permet donc à l’utilisateur authentifié de récupérer des tickets d’accès aux services auprès du TGS
24/12/2015
172
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre du serveur de temps
• Sélection de la « timezone »
#timedatectl#timedatectl list-timezone#timedatectl set-timezone Europe/Paris
• Synchronisation avec chrony
#yum install -y chrony#systemctl enable chronyd#systemctl start chronyd#chronyc tracking#chronyc sources –v#ntpdate pool.ntp.org
24/12/2015
173
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre d’un serveur Kerberos
• Installation des paquets kerberos server et client
#yum install -y krb5-server krb5-workstation pam_krb5
• Configuration du server
Remplacer EXAMPLE.COM et example.com par le royaume
#vi /etc/krb5.conf# vi /var/kerberos/krb5kdc/kadm5.acl# vi /var/kerberos/krb5kdc/kdc.conf
• Création de la base de données Kerberos
# kdb5_util create -s –r ALPHORM.LOCAL
24/12/2015
174
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre d’un serveur Kerberos
• Activation des services kerberos
#systemctl enable krb5kdc kadmin#systemctl start krb5kdc kadmin
#systemctl enable krb5kdc.service#systemctl start krb5kdc.service
24/12/2015
175
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre d’un serveur Kerberos• Ajout du principal utilisateur root
#kadmin.localaddprincs root/admin
• Ajout du principal hôte client – pas de mot de passe un fichier keytab
#kadmin.localaddprinc –randkey host/kbserver.alphorm.local
#kadminaddprinc –randkey host/client.alphorm.localktadd –k /tmp/client.keytab host/client.alphorm.local
• Lister les principal
#kadmin.locallistprincs
24/12/2015
176
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Intégration Red Hat Linux
• Installation du paquet client kerberos 5
#yum-y install krb5-workstation pam_kbr5
• Ajout du ficher keytab et du fichier krb5.conf
client#scp kbserver:/tmp/client.keytab /tmpclient#scp kbserver:/etc/krb5.conf /etc/
#ktutilktutil: rkt /tmp/client.keytabktutil: wkt /etc/krb5.keytabktutil: listslot KVNO Principal---- ---- ---------------------------------------------------------------- 1 2 host/[email protected] 2 host/[email protected]
24/12/2015
177
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Intégration Red Hat Linux
Authconfig-gui
System-authconfig
24/12/2015
178
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Introduction Kerberos
• Principes de fonctionnement
• Royaume Kerberos
• Architecture Kerberos
• Mise en œuvre du serveur de temps
• Mise en œuvre d’un serveur Kerberos
• Intégration Red Hat Linux
24/12/2015
179
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Connexion à des groupes et utilisateurs définis par le réseau
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
S'authentifier sur un serveur AD
24/12/2015
180
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Introduction à Microsoft Active Directory
• Introduction Kerberos
• Royaume Kerberos
• Architecture Kerberos
• Principes de fonctionnement
• Intégration Red Hat Linux dans AD
24/12/2015
181
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction Microsoft Active Directory• Microsoft Active Directory (AD) est le service d'annuaire compatible
LDAP pour les systèmes d'exploitation Microsoft Windows
• AD fournit des services d'identification et d’authentification, d’application de stratégies, de distribution de logiciels
• AD permet d’administrer les comptes utilisateurs, les serveurs, les postes de travail, les dossiers partagés, les imprimantes, etc.
• Active Directory utilise comme Openldap, la notion de hiérarchie de type X500
• Un utilisateur disposera donc d’un DN (distinguishedName) :
� CN=Ludovic Quenec, OU=UTILISATEURS, DC=ALPHORM, DC=LOCAL
24/12/2015
182
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Formations AD sur Alphorm
24/12/2015
183
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction Kerberos• Protocole développé au MIT dans le cadre du projet Athena au début
des années 1980
• Permet l’authentification forte à des services dites “kerbérisé”
• Standardisé par 2 RFC : RFC 1510 et RFC 1964
• Kerberos est aujourd’hui en version 5
• A la base de l’authentification MS Windows 200X
• Kerberos permet l’authentification des utilisateurs et gère ensuite l’accès aux différents services.
24/12/2015
184
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Royaume Kerberos• L’architecture Kerberos est constituée de serveurs Kerberos,
d’utilisateurs, de postes de travail et de serveurs hébergeant des services, le tout rassemblés dans un ROYAUME kerberos (REALM)
• Les “principals”
• Le KDC – Key Distribution Center – Centre de Distribution des Clés
24/12/2015
185
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Architecture Kerberos• Les principals : Un utilisateur, un client, un serveur
� nom/instance@KRB-REALM� ldap/[email protected]
� ludo/[email protected]
� host/[email protected]
• Chaque principal dispose de clés secrètes
� Mot de passe pour les utilisateurs
� Fichier keytab pour les serveurs et hôtes
24/12/2015
186
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Architecture Kerberos• Le service Kerberos est constitué de plusieurs entités regroupées dans
un KDC – Key Distribution Center
� Un serveur d’authentification AS
� Contient une base de données avec les utilisateurs, les services et leurs clés associées
• Module kadmin d’administration, utilisateurs, services, hôtes, ACL, méthode de chiffrement, ...
� Un service de mise à disposition de Ticket TGS
� Fournit l’accès aux services “kerbérisé”
24/12/2015
187
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Principes de fonctionnement• Afin d’accéder aux services “Kerbérisés” un utilisateur obtient un ticket
d’accès auprès du KDC (TGT –Ticket Granting Ticket)
� Commande kinit ludo/[email protected]
• Avec le TGT le client envoie une demande de ticket auprès du TGS
� Klist pour visualiser les tickets
� Le client inclut l’identifiant du service demandé et le TGT obtenu du KDC
• Le TGS vérifie la validité du TGT et envoie alors les informations d’accès au service
• Le TGT permet donc à l’utilisateur authentifié de récupérer des tickets d’accès aux services auprès du TGS
24/12/2015
188
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Principe de fonctionnement
24/12/2015
189
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Intégration Red Hat Linux dans AD• Installation des pasquets sssd sssd-ad
#yum-y install sssd sssd-ad
• Découverte et jonction au realm (royaume kerberos AD )
#realm discover rh134.alphorm.localrh134.alphorm.localtype: kerberosrealm-name: RH134.ALPHORM.LOCALdomain-name: rh134.alphorm.localconfigured: kerberos-memberserver-software: active-directoryclient-software: sssd…#realm join rh134.alphorm.local –U RH134.ALPHORM.LOCAL\administrateur
24/12/2015
190
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Intégration Red Hat Linux dans AD• Extrait du fichier sssd.conf
#cat /etc/sssd/sssd.conf[domain/rh134.alphorm.local]ad_domain = rh134.alphorm.localkrb5_realm = RH134.ALPHORM.LOCALrealmd_tags = manages-system joined-with-sambacache_credentials = Trueid_provider = adkrb5_store_password_if_offline = Truedefault_shell = /bin/bashldap_id_mapping = Trueuse_fully_qualified_names = False
• Se loguer avec l’administrateur
#su - [email protected]#su 'RH134.ALPHORM.LOCAL\administrateur'
24/12/2015
191
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Intégration Red Hat Linux dans AD
• Afficher le ticket kerberos
# klistTicket cache: KEYRING:persistent:1828200500:krb_ccache_9QuDDC0Default principal: [email protected]
Valid starting Expires Service principal11/19/2015 07:36:11 11/19/2015 17:36:11 krbtgt/[email protected]
renew until 11/26/2015 07:36:10
24/12/2015
192
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Introduction Microsoft Active Directory
• Introduction Kerberos
• Royaume Kerberos
• Architecture Kerberos
• Principes de fonctionnement
• Intégration Red Hat Linux dans AD
24/12/2015
193
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
NFS Server
Stockage distant
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
194
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Introduction au NFS
• Mise en oeuvre simple d’un serveur NFS
• Accéder à un serveur NFS
24/12/2015
195
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction a NFS• NFS – Network File System est un système de fichiers réseau
• Développé par SUN Microsystem dans les années 1980
• NFS offre l’export de répertoires pour des machines distantes
• NFS V1,2 et 3 s’appuie sur les RPC - appels de procédure distante
• Plusieurs versions :
� NFS version 1 et 2 utilise le protocole UDP, n’est pas sécurisé
� NFS V3 supporte le transport sur TCP, mais n’est pas toujours sécurisé
� NFS V4.x est une réecriture totale du protocole NFS
• Support de Kerberos, chiffrement des communications, reprise sur incident, parallélisation des transferts (stripping).
24/12/2015
196
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en oeuvre simple d’un serveur NFS
• Installation des paquets nfs pour le server et le client
#yum install nfs-utils#rpm –ql nfs-utils
• Configuration du server
#vi /etc/exports/nfs *(rw,no_root_squash,anonuid=2000,anongid=2000)#exportfs -avrexporting *:/nfs
• Montage de l’export nfs du client
#mount.nfs4 nfs-server:/nfs /mnt/
24/12/2015
197
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les options nfs• Droits sur les exports
� rw : Read = Lecture, Write = Écriture
� ro : Read Only = Lecture seulement (option par défaut)
• Gestion des performances :
� Async : ne synchronise pas les écritures immédiatement
• Améliore grandement les performances, incohérences des données lorsde “crash” serveur
� Sync : le contraire de async, synchronise les requêtes
� Rsize, wsize : taille des blocs de données en lecture et écriture
24/12/2015
198
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les options nfs• Mapping utilisateurs :
� root_squash : mappe l’utilisateur vers un utilisateur anonyme (option par défaut)
� No_root_squash : n'effectue pas de mapping pour l'utilisateur root
� anonuid : indique au serveur NFS l'UID de l'utilisateur anonyme
� anongid : indique au serveur NFS le GID de l'utilisateur anonyme
• Autres options :
� subtree_check: vérifie l’existence des sous répertoires de l’export
� no_subtree_check: Ne vérifie pas l’existence des sous répertoires de l’export
24/12/2015
199
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Introduction au NFS
• Mise en oeuvre simple d’un serveur NFS
• Accéder a un serveur NFS
24/12/2015
200
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Accéder aux partages NFS sécurisé
Stockage distant
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
201
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Introduction
• Mise en œuvre du serveur NFS secure
• Mise en oeuvre du serveur Kerberos
• Ajout du serveur NFS au royaume kerberos
• Ajout du client NFS au realm kerberos
• Test du client nfs avec kerberos authentification
24/12/2015
202
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction
serveur Kerberos
Client NFS
serveur NFS secure
1 Demande NFS mount
2 demande authentification dans le royaume
3 krb5.keytab
4 krb5.keytab
5 autorisation du montage nfs
24/12/2015
203
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre du serveur NFS secure
• Installation des paquets nfs pour le server et le client
nfs-server#yum groupinstall –y file-server
• Configuration du server avec kerberos
nfs-server#/etc/exports/nfs *(rw,no_root_squash, sec=krb5)
nfs-server#exportfs -avrexporting *:/nfs
nfs-server#showmount -e localhost
• Démarrage des services
nfs-server#systemctl enable nfs-server && systemctl start nfs-secure-server
24/12/2015
204
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en oeuvre du serveur Kerberos
• Installation des paquets kerberos serveur et client
kbserver#yum install -y krb5-server krb5-workstation pam_krb5
• Configuration du server
Remplacer EXAMPLE.COM et example.com par le royaume
kbserver#vi /etc/krb5.confkbserver# vi /var/kerberos/krb5kdc/kadm5.aclkbserver# vi /var/kerberos/krb5kdc/kdc.conf
• Création de la base de données Kerberos
kbserver# kdb5_util create -s –r ALPHORM.LOCAL
24/12/2015
205
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en oeuvre du serveur Kerberos
• Activation des services kerberos
kbserver# systemctl start krb5kdc kadminkbserver# systemctl enable krb5kdc kadmin
• Ajout des principals
kbserver#kadmin.localkadmin.local : addprinc root/adminkadmin.local : addprinc -randkey host/kbserver.alphorm.localkadmin.local : ktadd host/kbserver.alphorm.local
24/12/2015
206
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ajout du serveur NFS au royaume kerberos
• Installation des paquets kerberos client pour nfs-server
nfs-server#yum install -y krb5-workstation pam_krb5
• Configuration du nfs-server dans kerberos
nfs-server# scp kbserver:/etc/krb5.conf /etc/
• Ajout du principals nfs server
nfs-server#kadminAuthenticating as principal root/[email protected] with password. Password for root/[email protected] : xxxxxxkadmin: addprinc -randkey nfs/nfs-server.alphorm.localkadmin : ktadd nfs/nfs-server.alphorm.localkadmin: addprinc –randkey host/nfs-server.alphorm.local
24/12/2015
207
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ajout du client NFS au royaume kerberos
• Installation des paquets kerberos client
nfs-client#yum install -y krb5-workstation pam_krb5
• Configuration du nfs-server dans kerberos
nfs-client# scp kbserver:/etc/krb5.conf /etc/
• Ajout du principals nfs server
nfs-client#kadminAuthenticating as principal root/[email protected] with password. Password for root/[email protected] : xxxxxxkadmin: addprinc -randkey nfs/nfs-client.alphorm.localkadmin : ktadd nfs/nfs-client.alphorm.localkadmin: addprinc -randkey host/nfs-client.alphorm.local
24/12/2015
208
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ajout du client NFS au royaume kerberos
• Démarrage des services secure nfs
nfs-client#systemctl start nfs-secure
• “Montage” de l’export sécurisé Kerberos
nfs-client# mount -t nfs4 -o sec=krb5 nfs-server.alphorm.local:/nfs /mnt
• Vérification ☺
nfs-client#mount | grep krb5nfs-client#su – usernfs-client$ kinitnfs-client $ cd /mntnfs-client $ echo “Ca marche !!" >testFile
24/12/2015
209
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Introduction
• Mise en œuvre du serveur NFS secure
• Mise en oeuvre du serveur Kerberos
• Ajout du serveur NFS au royaume kerberos
• Ajout du client NFS au realm kerberos
• Test du client nfs avec kerberos authentification
24/12/2015
210
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Partage SMB/CIFS
Stockage distant
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
211
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Introduction
• Partage méthode MS Windows
• Partage méthode Samba 4
• “Montage” des partages
24/12/2015
212
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction• SMB – Server Message Block est le protocole utilisé par Microsoft pour
partager des ressources sur les réseaux
• Créé en 1985 par IBM sous le nom de LAN Manager pour OS/2
• Microsoft a considérablement modifié le protocole pour ses réseaux
• SMB utilisait l’architecture NetBios (service de nom, de message, ..)
• SMB utilise maintenant TCP/IP, port TCP 445. TCP/UDP 137, 138
• SMB était appelé CIFS (Common Internet File System) jusque Windows 2000
• Il existe une implémentation pour Unix/Linux de SMB : SAMBA
24/12/2015
213
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction
24/12/2015
214
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Partage méthode MS Windows
24/12/2015
215
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Partage méthode MS Windows
24/12/2015
216
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Partage méthode MS Windows
24/12/2015
217
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Partage Méthode Samba 4• Créer un partage dans le fichier smb.conf
# vi /etc/samba/smb.conf[public]comment = Public Stuffpath = /home/publicpublic = yeswritable = yeswrite list = root
• Démarrer les service samba
#systemctl restart smb.service#systemctl restart nmb.service#systemctl enable smb.service#systemctl enable smb.service
24/12/2015
218
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Partage Méthode Samba 4• Ajout d’un utilisateur SAMBA
#smbpasswd –a rootNew SMB password:Retype new SMB password:Added user root.
• Affciher les partages du serveur
#smbclient –L samba.alphorm.local –U rootEnter root's password:
Domain=[SMB-SERVER] OS=[Unix] Server=[Samba 4.1.12]
Sharename Type Comment--------- ---- -------
public Disk Dossier Public
24/12/2015
219
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Partage Méthode Samba 4
• Montage des partages SMB
#mount -t cifs //192.168.1.20/public /mnt/ -o username=rootpassword:
#vi /root/.pwdusername=rootpassword=Mot de passe
#mount -t cifs //192.168.1.20/public /mnt/ -o \credentials=/root/.pwd
24/12/2015
220
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Introduction
• Partage méthode MS Windows
• Partage méthode Samba 4
• “Montage” des partages
24/12/2015
221
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Autofs
Stockage distant
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
222
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• autoFS - montage automatique de systèmes de fichiers
• Mise en oeuvre de autofs
24/12/2015
223
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
AutoFS - montage automatique de systèmes de fichiers
• Lors d’un montage manuel ou via /etc/fstab d’un système de fichiers réseau, nfs, smb ou autres
� Les FS restent montés et consomment donc des ressources
� Lors d’un arrêt brutale de la machine, les ressources peuvent se retrouvées bloquées pour les autres utilisateurs
• autofs va permettre de monter et démonter les FS réseau, lors de l’accès à ces derniers.
• autofs s’appuie sur des fichiers de configuration et un démon automountd qui se charge de monter lors d’une requête et de démonter lors d’inactivité
24/12/2015
224
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en oeuvre autofs• Installation autofs
#yum install –y autofs
• Configuration autofs
#vi /etc/auto.master…/dir_autofs /etc/auto.test --timeout=60/home /etc/auto.home --timeout=60
#vi /etc/auto.testtest nfsserver:/autofs/
#vi /etc/auto.home* nfsserver:/home/&
24/12/2015
225
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en oeuvre autofs• Accès au montage via autofs
#]# ls /dir_autofs/testdir1 dir2 dir3
• Accès au repertoire home sur le serveur nfs via autofs
#su – ludoDf –hT/dev/sda1 204580 9992 194588 5% /boot/efinfsserver:/home/ludo 6817792 2393024 4424768 36% /home/ludo
24/12/2015
226
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• autoFS - montage automatique de systèmes de fichiers
• Mise en oeuvre de autofs
24/12/2015
227
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction aux contrôles d'accès sous Linux
Gestion de la sécurité
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
228
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Le contrôle d’accès sous linux
• Les modèles de sécurité sous linux
� DAC - Discretional Access Control
� MAC - Mandatory Access Control
� RBAC - Role-Based Access Control
� DTE – Type Enforcement
• Les implémentations sous Linux
24/12/2015
229
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le contrôle d’accès sous linux• Le système doit fournir :
� La disponibilité : continuité de services, fournir l’accès aux services
� L’intégrité : Les données ne doivent pas être altérées
� La confidentialité : utilisable que par des personnes identifiées
24/12/2015
230
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les modèles de sécurité sous linux - DAC• Le modèle DAC - Discretional Access Control est le mode de sécurité
classique sous Unix/Linux
• Les utilisateurs et les groupes d’utilisateur sont propriétaires des fichiers et répertoires sur le système
� Les propriétaires et root peuvent modifier la politique d’accès aux données.
� Confiance en l’utilisateur, pas de type de données (secret d’états, secret, confidentiel, public, ..), pas de rôle utilisateur (admin, DSI, chef, …)
• Les processus ou programmes sont exécutés par un propriétaire ou un groupe propriétaire :
� Accès à toutes les données du propriétaire
• Les listes de contrôle d’accès, ACL permettent une gestion plus fine des autorisations sur les fichiers, pas les processus
24/12/2015
231
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les modèles de sécurité sous linux - MAC
• Le modèle MAC - Mandatory Access Control - Contrôle d’accès obligatoire
• Dans ce modèle on labélise (on pose une étiquète sur) les données (fichiers, socket, ..) et les processus :
� Top secret
• Un utilisateur accrédité public ne pourra donc pas avoir accès aux données top secret
� Confidentiel
� Départements (marketing, direction, …)
� public
• La politique interdit tous sauf si on autorise
24/12/2015
232
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les modèles de sécurité sous linux - RBAC
• Le modèle RBAC - Role-Based Access Control - Contrôle d’accès par rôle
• Définit des rôles pour les utilisateurs, processus :
� Administrateur internet
� Administrateur de base de données
� Voir la commande sudo (RH124)
• Définit des contrôles d’accès à ces rôles
24/12/2015
233
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les modèles de sécurité sous linux - DTE• Le TE – Domain and Type Enforcement utilisé par Selinux
• Sur le même principe que le MAC.
• Le DTE labélise des objets
� Contrôles d'accès entre les sujets (processus, domaines) et les objets (fichiers, répertoires, sockets, ..)
� les confine dans un domaine qui limite les actions
• Un serveur Web qui s’exécute en root n’aura accès qu’aux domaines HTTPD (libraires, pages web, fichier de configuration du serveur)
24/12/2015
234
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les implémantations sous Linux• Linux security modules
� Intégré au noyau depuis la version 2.6, LSM est une API qui vérifie la conformité des règles de sécurité
� Introduit initialement pour SELinux, il est utilisé également par AppArmor
• Security-Enhanced Linux :
� SELinux permet de définir des politiques de sécurité de type DTE
• AppArmor
� Permet de définir des politiques de sécurité de types MAC (concurrent de SELinux)
24/12/2015
235
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Le contrôle d’accès sous linux
• Les modèles de sécurité sous linux
� DAC - Discretional Access Control
� MAC - Mandatory Access Control
� RBAC - Role-Based Access Control
� DTE – Type Enforcement
• Les implémentations sous Linux
24/12/2015
236
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre SeLinux
Gestion de la sécurité
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
237
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan• Comprendre SELinux
• Les modes Selinux
• Comprendre les stratégies (policy)
• Comprendre les labels et les booléens
• Comprendre semanage, fcontext
• Analiser les log SELinux
• Mise en oeuvre de SELinux avec SSH et apache
24/12/2015
238
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre SELinix• Security-Enhanced Linux (ou SELinux) est une architecture de sécurité :
� De type MAC
� Intégrée dans le noyau 2.6.x à l'aide des modules LSM
� Projet de la NSA (National Security Agency)
� Activement développée par Red Hat
� Disponible sur Red hat, Debian, Gentoo, Ubuntu …
24/12/2015
239
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre SELinix
SELinux
Policy Auditd
Enforcing
Permissive
/var/log/auditd/audit.log
24/12/2015
240
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre SELinix
Context http
Httpd process
/var/www
Httpd.conf
/home/ludo/www
Context home
24/12/2015
241
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les modes Selinux• Enforcing : Application des règles SeLinux
• Permissive : mode de déboguage. Les règles sont logguées. Mais ne bloquent pas les accès
• Disabled : SELinux Désactivé
• Modification des modes
#getenforce
#setenforce 1 #setenforce 0
#vi /etc/selinux/config
24/12/2015
242
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les modes Selinux• Les context SELinux avec l’option –Z
� Utilisateurs
� Roles
� Labels
#ls- Z-rw-------. 1 system_u:object_r:admin_home_t:s0 root root 1558 23 nov. 09:56 anaconda-ks.cfg
#ps -auxZsystem_u:system_r:sshd_t:s0-s0:c0.c1023 root Ss 11:19 0:00 /usr/sbin/sshd -D
#netstat –Zatunptcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1356/sshd system_u:system_r:sshd_t
24/12/2015
243
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre Les stratégies (policy)
# cat /etc/selinux/config
# This file controls the state of SELinux on the system.# SELINUX= can take one of these three values:# enforcing - SELinux security policy is enforced.# permissive - SELinux prints warnings instead of enforcing.# disabled - No SELinux policy is loaded.SELINUX=enforcing# SELINUXTYPE= can take one of three two values:# targeted - Targeted processes are protected,# minimum - Modification of targeted policy. Only selected processes are protected.# mls - Multi Level Security protection.
SELINUXTYPE=targeted
24/12/2015
244
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre les labels et les booléens
#Ps auxZ | grep httpdsystem_u:system_r:httpd_t:s0 root 2984 5.0 1.4 213224 4864 ? Ss 11:39 0:00 /usr/sbin/httpd
# ls -Zl /var/www/total 0drwxr-xr-x. 2 system_u:object_r:httpd_sys_script_exec_t:s0 root root 6 24 août 20:12 cgi-bindrwxr-xr-x. 2 system_u:object_r:httpd_sys_content_t:s0 root root 6 24 août 20:12 html
# ls -lZ /tmp/drwx------. root root system_u:object_r:tmp_t:s0 systemd-private-3TwuKG
# touch file_selinux[root@client ~]# ls -Zl file_selinux-rw-r--r--. 1 unconfined_u:object_r:admin_home_t:s0 root root 0 8 déc. 11:41 file_selinux
24/12/2015
245
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre les labels et les booléens
#man semanage
#cp /etc/hosts .# ls -aZ /etc/hosts-rw-r--r--. root root system_u:object_r:net_conf_t:s0 /etc/hosts#ls -Z hosts-rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 hosts
#mv hosts /etc/# ls -Z /etc/hosts#ls -Z /etc/hosts-rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 /etc/hosts
# restorecon /etc/hosts# ls -Z /etc/hosts-rw-r--r--. root root unconfined_u:object_r:net_conf_t:s0 /etc/hosts
24/12/2015
246
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre les labels et les booléens
#getsebool -a | grep ftpftp_home_dir --> offftpd_anon_write --> offftpd_connect_all_unreserved --> offftpd_connect_db --> offftpd_full_access --> offftpd_use_cifs --> offftpd_use_fusefs --> offftpd_use_nfs --> offftpd_use_passive_mode --> off
#ftp localhostUsing binary mode to transfer files.ftp> mkdir test.selinux550 Create directory operation failed.
type=AVC msg=audit(1449571653.944:433): avc: denied { create } for pid=3308 comm="vsftpd" name="test.selinux" scontext=system_u:system_r:ftpd_t:
24/12/2015
247
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre les labels et les booléens
#setsebool ftp_home_dir on
# ftp localhostTrying ::1...Password:ftp> mkdir est.selinux257 "/home/ludo/est.selinux" createdftp>
24/12/2015
248
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre semanage, fcontext
#ls -Zl /var/www/total 0drwxr-xr-x. 2 system_u:object_r:httpd_sys_script_exec_t:s0 root root 6 24 août 20:12 cgi-bindrwxr-xr-x. 2 system_u:object_r:httpd_sys_content_t:s0 root root 6 24 août 20:12 html
# semanage fcontext -l | morecontexte fichier SELinux type Contexte/ directory system_u:object_r:root_t:s0/.* all files system_u:object_r:default_t:s0/[^/]+ regular file system_u:object_r:etc_runtime_t:s0/\.autofsck regular file system_u:object_r:etc_runtime_t:s0/\.autorelabel regular file system_u:object_r:etc_runtime_t:s0/\.ismount-test-file regular file system_u:object_r:sosreport_tmp_t:s0/\.journal all files <<None>>/\.suspended regular file system_u:object_r:etc_runtime_t:s0
24/12/2015
249
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre semanage, fcontext
# semanage fcontext -l | grep httpd
/etc/WebCalendar(/.*)? all files system_u:object_r:httpd_sys_rw_content_t:s0/etc/apache(2)?(/.*)? all files system_u:object_r:httpd_config_t:s0/etc/apache-ssl(2)?(/.*)? all files system_u:object_r:httpd_config_t:s0/etc/cherokee(/.*)? all files system_u:object_r:httpd_config_t:s0/etc/drupal.* all files system_u:object_r:httpd_sys_rw_content_t:s0/etc/glpi(/.*)? all files system_u:object_r:httpd_sys_rw_content_t:s0/etc/horde(/.*)? all files system_u:object_r:httpd_sys_rw_content_t:s0/etc/htdig(/.*)? all files system_u:object_r:httpd_sys_content_t:s0/etc/httpd(/.*)? all files system_u:object_r:httpd_config_t:s0
24/12/2015
250
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre semanage, fcontext
#man –k _selinux
#yum install –y policycoreutils-devel
#sepolicy manpage –a –p /usr/share/man/man#mandb
#man –k _selinux
24/12/2015
251
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre semanage, fcontext
# mkdir /ludo_www#touch /ludo_www/index.html
# chcon -t httpd_sys_content_t /ludo_www/ -R#ls -Zl /ludo_www/total 0-rw-r--r--. 1 unconfined_u:object_r:httpd_sys_content_t:s0 root root 0 8 déc. 12:09 index.html
mais pas de façon permanente !!
#restorecon -R /ludo_www/# ls -ZdlR /ludo_www/drwxr-xr-x. 2 unconfined_u:object_r:default_t:s0 root root 23 8 déc. 12:09 /ludo_www/
#semanage –a –t httpd_sys_content_t “/ludo_www(/*)?”
24/12/2015
252
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Analiser les log SELinux
# grep AVC /var/log/audit/audit.log
#vi /var/log/message/sealert
client setroubleshoot: SELinux is preventing /usr/sbin/vsftpd from create access on the directory test.selinux. For complete SELinux messages. run sealert -l bc38489e-bd09-495d-aed4-013ec1e22414Dec 8 11:47:37 client python: SELinux is preventing /usr/sbin/vsftpd from create access on the directory test.selinux.
#sealert -l bc38489e-bd09-495d-aed4-013ec1e22414SELinux is preventing /usr/sbin/vsftpd from create access on the directory test.selinux.
If vous souhaitez allow ftp to home dirThen vous devez en informer SELinux en activant le booléen « ftp_home_dir ».Vous pouvez lire la page de manuel « None » pour plus de détails.Dosetsebool -P ftp_home_dir 1
24/12/2015
253
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en oeuvre de SELinux avec SSH
#vi /etc/ssh/sshd_configPort 8888
# systemctl restart sshd# systemctl status sshd
#grep AVC /var/log/audit/audit.log | tail -1type=AVC msg=audit(1449574323.517:393): avc: denied { name_bind } for pid=2844 comm="sshd" src=8888 scontext=system_u:system_r:sshd_t:s0-s0:c0.c1023 tcontext=system_u:object_r:unreserved_port_t:s0 tclass=tcp_socket
#semanage port -l | grep ssh
# semanage port -a -t ssh_port_t -p tcp 9998 # systemctl restart sshd# systemctl is-active sshd
24/12/2015
254
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en oeuvre de SELinux avec apache
#mkdir /ludo_www#vi /ludo_www/index.html<html> <h2>SELinux test</h2> </html>
#semanage fcontext -a -t httpd_sys_content_t « /ludo_www(/.*)? »#restorecon -R -v /ludo_www/#ls –Zl /ludo_www
#vim /etc/httpd/conf/httpd.confDocumentRoot /ludo_www/<Directory “/ludo_www”>
AllowOverride NoneRequire all granted
<Directory “/ludo_www”>
#systemctl httpd restart
24/12/2015
255
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Comprendre SELinix
• Les modes Selinux
• Comprendre les stratégies (policy)
• Comprendre les labels et les booléens
• Comprendre semanage, fcontext
• Analiser les log SELinux
• Mise en oeuvre de SELinux avec SSH et apache
24/12/2015
256
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Introduction au firewall
Le Pare feu
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
257
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan
• Firewall ?
• Netfilter
• Firewalld
24/12/2015
258
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Firewall ?• Un firewall ou un pare feu en français permet de filtrer le trafic qui
passe par les interfaces réseaux
Adresse IPports TCP/UDPInterface réseau, etc.
Applicatifs.
24/12/2015
259
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Netfilter• Netfilter est le pare-feu Linux depuis la version 2.4 du noyau
• Netfilter est un module noyau qui intercepte et manipule les paquetsréseaux
• Netfileter fournit :
� Un pare feu
� Du NAT –Network Adress Translation
� Historisation
• Netfilter est un pare feu à états
24/12/2015
260
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Firewalld• FirewallD est LE service qui permet la mise en place d’un pare-feu sous
RedHat
• Il s’appuie sur Netfilter
• Firewalld impose que les règles de filtrage ne soient gérées que par lui –même
• FirewallD est un service SystemD de type dbus
• FirewallD utilise, en interne, les commandes iptables, ip6tables et ebtables pour configurer les règles
• Firewalld s’appuie sur la notion de zone : home, public, trusted, etc
• Chaque ZONE applique des règles
24/12/2015
261
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Firewalld
24/12/2015
262
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert
• Firewall ?
• Netfilter
• Firewalld
24/12/2015
263
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Firewalld
Le Pare feu
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
264
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan
• Les Zones Firewalld
• Mise en œuvre de firewalld
24/12/2015
265
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
• Firewalld introduit le concept de zones
• Ces Zones sont définies par des fichiers XML
Les zones Firewalld
trusted zoneInterfacesServiceports
Public zone
Block zone
enp0s3dhcp ssh
InterfacesServiceports
InterfacesServiceports
Work zone
24/12/2015
266
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre de firewalld• Vérifier l’installation de Firewalld
#yum info firewalld firewall-config#systemcl enable firewalld.service#systemcl status firewalld.service
• Lister la zone actuelle
#firewall-cmd --get-active-zones
• Lister les services disponibles dans la zone
# firewall-cmd --zone=work --list-all
• Lister les services supporté
#firewall-cmd --get-services
24/12/2015
267
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Mise en œuvre de firewalld
• Lister les services supporté
#firewall-cmd --get-services
• Ajout d’un service dans une zone
#firewall-cmd --add-service https#firewall-cmd --zone =work --add-service https#firewall-cmd --zone =work --permanent --add-service https#firewall-cmd –reload
• Lister les services disponibles dans la zone
# firewall-cmd --zone=work --list-all
• Lister les services supporté
#firewall-cmd --get-services
24/12/2015
268
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les services Firewalld• Lister les services xml
#ls /usr/lib/firewalld/services
• Modifier un service
# vi /usr/lib/firewalld/services/samba.xml<service><short>Samba</short><description>This option allows you to access and participate in Windows file and
printer sharing networks. You need the samba package installed for this option to be useful.</description><port protocol="udp" port="137"/><port protocol="udp" port="138"/><port protocol="tcp" port="139"/><port protocol="tcp" port="445"/><module name="nf_conntrack_netbios_ns"/>
</service>
24/12/2015
269
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Les services Firewalld
• Créer un service
#cp / /usr/lib/firewalld/services/telnet.xml /usr/lib/firewalld/services/mon_service.xml<?xml version="1.0" encoding="utf-8"?><service>
<short>Mon service</short><description>Mon service est un protocole qui ne fait rien, il attends , dis
bonjour et se repose</description><port port=« 8888" protocol="tcp"/>
</service>
• Activer les service
#firewall-cmd –zone=work --ad-service=mon_service#firewalld-cmd –list-all#firewall-cmd –zone=work --permanent --ad-service=mon_service
24/12/2015
270
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Les zones Firewalld
• Mise en œuvre de firewalld
24/12/2015
271
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Modifier les paramètres de démarrage
Contrôle et résolution des problèmes
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
272
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan
• Démarrage Red Hat Linux 7
• Grub2 – Grand Unified BootLoader
• Modifier des paramètres de démarrage
24/12/2015
273
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Processus de démarrage
BIOS/EFINoyau
GRUB
Systemd
Initrd
runlevel3.target, multi-user runlevel5.target, graphical
runlevel1.target, rescue.target
NetworkManager.service
systemd-logind.service
firewalld.service
systemd-journald.service
24/12/2015
274
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Grub2 – Grand Unified BootLoader• GRUB - Grand Unified Boot Loader est un chargeur de système
d’exploitation multiboot
• Il permet l’amorçage des systèmes Linux, BSD, Windows, …
• Grub gère aussi bien le MBR que EFI, également coreboot (BIOS libre)
• Grub fournit un environnement de type Shell
• Aujourd’hui on utilise Grub2
• Grub s’installe automatiquement lors de l’installation du système
• On peut toutefois avoir besoin de modifier la configuration initiale, démarrage réseau, chiffrement du disque,
• On peut avoir besoin de réparer un boot loader
24/12/2015
275
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Grub2 – Grand Unified BootLoader
• La configuration de Grub2 s’appuie sur plusieurs répertoires :
� /boot/efi/EFI/centos/grub.cfg : le fichier de configuration GRUB 2, non modifiable
� /etc/grub.d/ : le répertoire contenant les scripts de création du menu
� /etc/default/grub : le fichier contenant les paramètres du menu
• Faisons un petit tour
24/12/2015
276
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Modifier des paramètres de démarrage
BIOS/EFI
GRUB ESC
Modifications des options de BootSystemd.unit = rescue.target
Modification dans /etc/default/grub
/etc/grub.d
grub2-mkconfig
Kernel/Initrd
SystemdSystemd
rescue mode
24/12/2015
277
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Modifier des paramètres de démarrage
• Modifier les options de démarrage
#vi /etc/default/grub
• Modifier la configuration de grub2
#grub2-mkconfig
24/12/2015
278
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Modifier des paramètres de démarrage
24/12/2015
279
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert
• Démarrage Red Hat Linux 7
• Grub2 – Grand Unified BootLoader
• Modifier des paramètres de démarrage
24/12/2015
280
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Utilisation de rd.break
Contrôle et résolution des problèmes
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
281
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Plan
• Comprendre Rd.break
• Booter avec rd.break
• Modifier le mot de passe root avec rd.break
24/12/2015
282
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Comprendre Rd.break
• Avant grub2, pour modifier le mot de passe root. Il y avait le mode single
• Depuis grub2, on utilise rd.break
• Rd.break interrompt la procédure de boot avant initramfs et systemd
• Le système est alors disponible pour faire des modifications
• Toutes modifications nécessitent une “relabélisation” des fichiers avec SELinux
24/12/2015
283
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Booter avec rd.break
24/12/2015
284
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Booter avec rd.break
24/12/2015
285
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Modifier le mot de passe root avec rd.break
• Remonter le root fs en mode rw
#mount –o remount,rw /sysroot
• « Chrooter » sysroot
#chroot /sysroot
• Modifier le mot de passe root
#passwd
• « Relabiser » avec SELinux
#touch /.autorelabel
24/12/2015
286
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Ce qu’on a couvert• Comprendre Rd.break
• Booter avec rd.break
• Modifier le mot de passe root avec rd.break
24/12/2015
287
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le mot de la fin
Conclusion
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
24/12/2015
288
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le plan de formation• Un peu de Shell
• Utilisation d'expressions régulières avec GREP• Utilisation d'expressions régulières avec SED
• Déploiement de serveur• Mise en œuvre d'un serveur PXE• Installation automatique d'un serveur avec
PXE/Kickstart
• Les listes de contrôle d'accès• Comprendre et mettre en œuvre les ACLs
• Gestion du stockage• Comprendre la gestion des volumes logiques• Gérer les volumes logiques à partir de la ligne de
commande• Introduction à BTRFS• Gérer les volumes btrfs à partir de la ligne de
commande
• Planification de tâches Linux• Le cron• La commande AT
• Connexion à des groupes et utilisateurs définis par le réseau
• Introduction aux services d'identification centralisés
• Introduction à PAM – SSSD• Introduction à LDAP• Mise en oeuvre et authentification sur un
serveur LDAP• Mise en oeuvre et authentification avec
kerberos/LDAP• S'authentifier sur un serveur AD
• Stockage distant • NFS Server• Accéder aux partages NFS sécurisé• Partage SMB- CIFS• Autofs
24/12/2015
289
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Le plan de formation• Gestion de la sécurité
• Introduction au contrôle d’accès sous Linux• Comprendre et mettre en oeuvre SELinux
• Le Pare feu• Introduction au firewall• Firewalld
• Contrôle et résolution des problèmes du processus de démarrage
• Modifier les paramètres de démarrage• Utilisation de rd.break
24/12/2015
290
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Avez-vous des Questions /Remarques /Commentaires ?
24/12/2015
291
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
Reprise sur les certifications Red Hat
24/12/2015
292
Formation Red Hat, Administration Système II (RH134) alphorm.com™©
A bientôt ☺
Pour une nouvelle formation sur Linux Red Hat.
RH254 Red Hat Administration III
pour obtenir votre RHCE