Red Hat Enterprise Linux 6 Guide de réglage des performances
Alphorm.com Support Formation Red Hat Administration Système III RHCSE-(Rh254)
-
Upload
alphormcom -
Category
Technology
-
view
5.539 -
download
33
Transcript of Alphorm.com Support Formation Red Hat Administration Système III RHCSE-(Rh254)
26/02/2016
1
Formation Red Hat, Administration Système III RHCE (RH254) 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 7
Administration Système IIICours RH 254
Certification RHCE
26/02/2016
2
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan• Présentation du formateur
• Les certifications Red Hat
• Le plan de la formation
• Publics concernés
• Connaissances requises
• Liens utiles
26/02/2016
3
Formation Red Hat, Administration Système III RHCE (RH254) 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
26/02/2016
4
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Mes formations sur Alphorm
26/02/2016
5
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les certifications Red Hat
26/02/2016
6
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le plan de formation• Administration système
• Systemd• Retour sur Systemd• Gestion avancée systemd
• Administration réseau
• Administrer IP V6 • NetworkManager• Le protocole IPV6• Configuration des interfaces réseaux
• NIC Teaming et Bridging• Comprendre l'agrégation de lien• Configurer le NIC Teaming• Gérer les interfaces Team• Comprendre les pont réseau – Bridge• Configurer un bridge• Configurer un bridge "teaming"
• Sécurité • Retour sur Firewalld• Comprendre les "Rich Rules" • Le Masquerading• Le port Forwarding• Gérer les ports avec SELinux
• Le service DNS • Comprendre le Domain Name System – DNS• Comprendre les recherches DNS• Comprendre les enregistrements DNS• Le service de cache DNS• Configurer un serveur de cache sécurisé• Mise en œuvre d'un serveur DNS local Bind9
• Le service Web • Configurer le serveur apache • Configurer des hôtes virtuels • Configurer l'authentification des utilisateurs • Créer des certificats • Apache mod_ssl• Gérer du contenu dynamique
26/02/2016
7
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le plan de formation• Le service de courier
• Le serveur Postfix• Configurer Postfix en Null-client
• Base de données• Introduction aux bases de données• Maria DB• Installation de MariaDB• Gérer une base de données MariaDB• Administrer les utilisateurs et les permissions
sous MariaDB• Sauvegarder et restaurer des bases données
MariaDB
• Stockage réseau• Les technologies SAN – NAS• Le protocole ISCSI• Créer des Target ISCSI avec targetcli• Iscsiadm - accéder aux Targets
• Programmation Shell
• Écrire des scripts simples• Créer et exécuter des scripts• Les sorties• Les variables• Les variables spéciales
• Test, Boucles et structures de contrôles• Les codes de retour, exit• Les test• If, then , else, .., case• Les boucles
• Configurer l'environnement du shell• L’environnement de travail
26/02/2016
8
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le plan de formation• Virtualisation
• Linux containers et Dockers• Virtualisation par isolation• LXC - Linux containers • Gestion d'un container• Docker• Docker création et manipulation des conteneurs• Red Hat Linux Atomic Host
26/02/2016
9
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Publics concernés� Administrateurs Linux expérimentés
� Administrateurs Linux désirant devenir RHCE
� Administrateurs Linux désirant maitriser les nouveautés de RHEL7 et des technologies avancés
26/02/2016
10
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Connaissances requises� Il faut avoir suivi les deux formations :
� Red Hat System Administration I (RH124)
� Red Hat System Administration II (RH134)
26/02/2016
11
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Liens utiles• http://www.redhat.com
• https://access.redhat.com/documentation
• http://doc.fedora-fr.org/wiki/Accueil
26/02/2016
12
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Are you ready ? ☺
Êtes vous prêt à porter le chapeau d’ingénieur Red Hat ?
26/02/2016
13
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Retour sur systemdSystemd
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
14
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Systemd
• Les units de Systemd
• Gestion des services
• Gestion des cibles (targets)
26/02/2016
15
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Sysytemd• Systemd est un gestionnaire de services qui remplace Sys init depuis
RedHat 7 :
� Il démarre comme premier processus lancé par le noyau
� Assure l’initialisation des services
� Gère les démons Linux : démarre, stoppe, désactive, active
� Il démarre les services en parallèle
� Il suit les services avec les groupes de contrôle (gestion des ressources)
� Gère la journalisation et peut transmettre les journaux à Syslog
� La configuration des noms d’hôtes, des montages de fs
� Gère les sessions utilisateurs et gère les ressources des utilisateurs avec les cgroups
� Gère les machines virtuelles et conteneurs avec les cgroups et libvirt
26/02/2016
16
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les units de Systemd• Systemd se base sur une notion d’unités.
• Ces unités ont un type et un nom :
� Le type Service : Gestion des démons
� Le type Target : regroupe plusieurs unités et permet de définir des notions de niveau d’exécution
� Le type mount : gestion des systèmes de fichiers en relation avec fstab
� Le type snapshot : permet de sauvegarder et restaurer l’états des services
• Lister toutes les unités
#systemctl list-units
26/02/2016
17
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Gestion des services• Systemd fournit la commande systemctl pour gérer les services
• Lister toutes les unités de type service
#systemctl list-units –t service
• Visualiser l’état d’un service
#systemctl status NetworkManager.service#systemctl status NetworkManager
• Démarrer , arrêter un service
#systemctl start sshd.service#systemctl start sshd
#systemctl stop sshd.service
26/02/2016
18
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Gestion des services• Systemd fournit la commande systemctl pour gérer les services
• Activer un service au démarrage
#systemctl enable NetworkManager.service
• Désactiver un service au démarrage
#systemctl disable NetworkManager.service
• Masque des services
#systemctl stop iptables#systemctl mask iptables.services
26/02/2016
19
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Gestion des cibles (target)• Systemd fournit la commande systemctl pour gérer les cibles
• Changer de niveau de cible temporairement
#systemctl isolate rescue.target
• Obtenir le niveau de fonctionnement par défaut
#systemctl get-defaultmulti-user.target
• Modifier le niveau de fonctionnement par défaut
#systemctl set-default graphical.targetrm '/etc/systemd/system/default.target'ln -s '/usr/lib/systemd/system/graphical.target' '/etc/systemd/system/default.target‘
26/02/2016
20
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Systemd
• Les units de Systemd
• Gestion des services
• Gestion des cibles (targets)
26/02/2016
21
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Gestion avancée de systemd
Systemd
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
22
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Oubliez /etc/fstab monter des FS avec Systemd
• Automount avec Systemd
• Les groupes de contrôle avec Systemd
26/02/2016
23
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Oubliez /etc/fstab monter des FS avec Systemd
• Systemd introduit depuis Red hat Enterprise Linux 7 n’est pas seulement un gestionnaire de services :
� Il est aussi utilisé pour monter des systèmes de fichiers au démarrage de la machine
• Lister les systèmes de fichiers montés par Systemd
#find / -name "*.mount«
• Jetons un œil sur tmp.mount
#cat /usr/lib/systemd/system/tmp.mount[Mount]What=tmpfsWhere=/tmpType=tmpfs
26/02/2016
24
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Oubliez /etc/fstab monter des FS avec Systemd
• Utilisons Systemd pour monter un volume logique
• Création d’un fichier de montage dans /etc/systemd/system/
#vi /etc/systemd/system/test.mount[Unit]Description = montage du lv test[Mount]What = /dev/test/systemd.testWhere = /testType = ext4[Install]WantedBy = multi-user.target
• Création d’un fichier de montage dans /etc/systemd/system/
#systemctl start test.mount && systemctl enable test.mount#mount | grep test
26/02/2016
25
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Automount avec Systemd• Autofs est un programme qui permet de monter et démonter des
systèmes de fichiers « à la volée »
• Lors de l’accès au répertoire le système de fichiers est monté, lors d’inactivité sur ce dernier, autofs démonte le FS
• Systemds utilise autofs pour monter et démonter des FS en mode autofs
26/02/2016
26
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Automount avec Systemd• Création d’un fichier d’automontage dans /etc/systemd/system/test.automount
#vi /etc/systemd/system/test.automount[Unit]Description = montage automatique de test[Automount]Where = /test[Install]WantedBy = multi-user.target
• Création d’un fichier de montage dans /etc/systemd/system/
#systemctl start test.automount && systemctl enable test.automount#mount | grep testsystemd-1 on /test type autofs#cd /test/# mount | grep testsystemd-1 on /test type autofs/dev/mapper/test-systemd.test on /test type ext4
26/02/2016
27
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les groupes de contrôles avec Systemd• Les groupes de contrôle permettent de limiter, comptabiliser et isoler les
ressources (mémoire, cpu, réseau, périphériques, …)
• Systemd découpe les services et utilisateurs en slice/scope/service
• 4 slices : -.slice (top cgroups). user.slice, system.slice, machine.slice (vm, ct)
#systemd-cglsuser.slice│ ├─user-1000.slice│ │ └─session-36.scope│ │ ├─9896 sshd: ludo [priv]│ │ ├─9898 sshd: ludo@pts/2│ │ ├─9899 –bash─system.slicedocker-109a80f37cc97fd279258703e33243309baa639877ba294277ba64ad852011aa.scope│ ├─6960 /bin/bash│ ├─6999 httpd│ ├─7000 httpd
26/02/2016
28
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les groupes de contrôles avec Systemd• Gestion des groupes de contrôles avec systemctl
#system-cgtop
#systemctl set-property user-1000.slice CPUQuota=5%#cat /etc/systemd/system/user-1000.slice.d/50-CPUQuota.conf[Slice]CPUQuota=5%
#systemctl set-property user-1000.slice MemoryLimit=500Mcat /etc/systemd/system/user-1000.slice.d/50-MemoryLimit.conf[Slice]MemoryLimit=524288000
26/02/2016
29
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les groupes de contrôles avec Systemd• Gestion des groupes de contrôles avec systemctl
#cat /etc/systemd/system/test.service[Unit]Description=Test daemon [Service] Type=notifyExecStart=/usr/bin/test.sh –DBACKGROUND
[Install] WantedBy=multi-user.target
26/02/2016
30
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les groupes de contrôles avec Systemd• Gestion des groupes de contrôles avec systemctl
#systemctl set-property test.service MemoryLimit=500M
#cat /etc/systemd/system/test.service.d/50-MemoryLimit.conf[Slice]MemoryLimit=524288000
#systemctl daemon-reload
#systemctl start test.serviceJob for test.service failed because the control process…..
26/02/2016
31
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Oubliez /etc/fstab monter des FS avec Systemd
• Automount avec Systemd
• Les groupes de contrôle avec Systemd
26/02/2016
32
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
NetworkManagerIPV6
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
33
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Les scripts de configuration
• NetwokManager
• nmcli (NetworkManager Command Line Interface)
• Nom d'hôte – hostnamectl
26/02/2016
34
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les scripts de configuration• Depuis longtemps Redhat utilise des scripts de
configuration pour les interfaces réseaux
• Scripts /etc/sysconfig/network-script/
#cat /etc/sysconfig/network-script/ifcfg-ens192TYPE=EthernetBOOTPROTO=noneDEFROUTE=yesNAME=ens192UUID=6d286278-4265-413b-b4ee-7e22a011418fDEVICE=ens192ONBOOT=yesDNS1=8.8.8.8IPADDR=192.168.10.200PREFIX=24GATEWAY=192.168.10.25
26/02/2016
35
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
NetworkManager• Avec la version 7 de Red Hat Enterprise Linux , le réseau est administré
par L’outil NetworkManager
• NetworkManager est un service
• NetworkManager fourni des outils de configuration :
� Nmcli, nm-tool, nmtui, nmgui
• NetworkManager peut gérer des périphériques :
� Ethernet, Wifi, Team, Bond, Bridge, Cellulaire, VPN, ...
26/02/2016
36
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
NetworkManager
• Pour NetworkManager :
� Device est une interface réseau
� Connection est un ensemble de paramètres afin de configurer un device
� Chaque connection a un nom, un UID, un type et un device
• Pour configurer des interfaces, on utilise l’outil nmcli
• Nmcli modifie les fichiers de scripts ifcfg-eno20
26/02/2016
37
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
nmcli -NetworkManager Command Line Interface• Lister les périphériques
#nmcli dev statusPÉRIPHÉRIQUE TYPE ÉTAT CONNEXIONdocker0 bridge connecté docker0ens192 ethernet connecté ens192veth0630f70 ethernet connecté veth0630f70
• Afficher la configuration d’un périphérique
#nmcli dev showGENERAL.PÉRIPHÉRIQUE: ens192GENERAL.TYPE: ethernetGENERAL.ADR.-MAT.: 00:0C:29:4D:7F:85GENERAL.ÉTAT: 100 (connecté)GENERAL.CONNEXION: ens192WIRED-PROPERTIES.PORTEUSE: marcheIP4.ADRESSE[1]: 192.168.10.200/24IP4.PASSERELLE: 192.168.10.25IP4.DNS[1]: 8.8.8.8
26/02/2016
38
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
nmcli -NetworkManager Command Line Interface
• Ajouter une connexion
#nmcli con add con-name eno2 type ethernet ifname eno2
• Ajouter des paramètres ipv4 a une connexion
#nmcli con add con-name eno2 type ethernet ifname eno2 \ip4 192.168.10.99/24 gw4 192.168.10.254
• Activer une connexion
#nmcli con up eno2
• Afficher l’état de la connexion
#nmcli con show eno2
26/02/2016
39
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
nmcli -NetworkManager Command Line Interface
• Modifier les paramètres d’une connexion
#nmcli con mod eno2 ipv4.adresses “192.168.10.99/24 192.168.10.254”
• Modifier les paramètres DHCP d’une connexion
#nmcli con mod eno2 ipv4.method auto
• Supprimer une connexion
#nmcli connection delete ens224Connection 'ens224' (d26705f7-321e-4566-879e-8416700f7aef) successfully deleted.
26/02/2016
40
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Nom d'hôte• Afficher le nom d'hôte
#hostnamegateway.alphorm.lan
• Modifier le nom d'hôte
#hostnamectl set-hotnme router.alphorm.lan
• Afficher l’état
#hostnamectl statusStatic hostname: gateway.alphorm.lan
Icon name: computer-vmChassis: vm
Machine ID: 21b7ec026e894bfcb70152956ba35a6bBoot ID: dc360b0999e24f909c3f32b29c24dfc3
26/02/2016
41
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Les scripts de configuration
• NetwokManager
• nmcli (NetworkManager Command Line Interface)
• Nom d'hôte – hostnamectl
26/02/2016
42
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le protocole IPV6 IPV6
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
43
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Pourquoi IPv6?
• L’adressage
• Le prefixe ou sous réseau
• Les types d’adresses réservées
26/02/2016
44
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Pourquoi IPv6?• L’insuffisance d’adresse ipv4
• Simplifier le protocole
• Régler la fragmentation des routeurs
• Support de la sécurité et de la qualité de service
• Prévoir les évolutions
• La fin de la translation d’adresse IP
• Fournir une passerelle ipv4 vers ipv6
• IPv4 n’est pas TCPv4, ip6 n’est donc pas TCPv6
26/02/2016
45
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
L’adressage • IPv6 utilise des adresses beaucoup plus longues qu’iPv4
• IPv4 code les adresses sont codées sur 4 octets, 32 bits
• IPv6 code les adresses sur 16 octects, 128 bits
� Permet de fournir des adresses presque illimitées
� Codé en Hexadécimale en blocs de 16 bits
2001:0db8:0000:85a3:0000:0000:ac1f:8001
2001:db8:0:85a3:0:0:ac1f:8001
2001:db8:0:85a3::ac1f:8001
26/02/2016
46
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
L’adressage 2000:0000:0000:000:0000: 0000:0000:0001 2000::1
0002:0000:0000:0000:0000:0000:0000:0001 2: :1
2001:0db8:0000:0007:0000:0000:0000:0002 2001:db8:0:7::2
2000:0003:0000:0000:0000:0007:0000:0002 2001:3::7:0:2
2001:0003:0700 :0000: :0000: :0000: 0000 :0002
2001:3:700::2
ff02 :0000:0000:0000:0000: 0001:0000:0000 ff02::1:0:0
0000:0000:0000:0000:0000: 0000:0000:0000 ::
2001:db8::7::2 Adresse invalide
26/02/2016
47
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
L’adressage• L’adresse se compose d’un Network ID et d’un Interface ID
26/02/2016
48
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le prefixe ou sous réseau• Le préfixe d’une adresse IPv6 correspond à la partie réseau de l’adresse
IP. Il est noté comme cela :
� L’interface ethernet 20c:29ff:fe0a:15d sur le réseau 2001:0:9d38:6abd:0015: sera noté :
• 2001:0:9d38:6abd:0015: 20c:29ff:fe0a:15d
� Un préfixe est attribué a l’adresse
• 2001:0:9d38:6abd:0015: 20c:29ff:fe0a:15d/64
� Les préfixe spécifie les sous réseaux
2001:0:9d38:6abd:0015: /64
2001:0:9d38:6abd::/48
26/02/2016
49
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le prefixe ou sous réseau
• Des préfixes sont réservés à un usage spécial :
� 2002::/16 indique un préfixe de routage 6to4 , fe80::/10 est une adresse lien-local, ff00::/8 une adresse multidiffusion.
• Les préfixes sont attribués par l'IANA par blocs de /12 à /23 aux registres Internet régionaux,
� RIPE-NCC Réseaux IP Européens,
� ARIN American Registry for Internet Numbers
� Les RIR attribuent des préfixes /32 aux registres Internet locaux, Un LIR est généralement un opérateur de télécommunications, qui les attribuent ensuite sous forme de bloc /48 à /64 aux utilisateurs finaux.
26/02/2016
50
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les types d’adresses réservées• Unicast global – adresse public
� 2000 : : /3
• Lien local – Valable uniquement sur le lien local
� fe80 : : /64
• Multicast - Plus de Braodcast
� ff00 : : /8
• Les adresses privés
� fd00 : : /8
• La route par défaut
� : : 10
26/02/2016
51
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Pourquoi IPv6?
• L’adressage
• Le prefixe ou sous réseau
• Les types d’adresses réservées
26/02/2016
52
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configuration des interfaces réseaux
IPV6
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
53
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• SLAAC - Stateless Address Autoconfiguration
• Adressage statique
• Service DHCPV6
26/02/2016
54
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
SLAAC - Stateless Address Autoconfiguration
• Pas de serveur DHCP, Neighbor Discovery
• La machine est découvre la partie réseau auquel elle appartient, Network ID avec un Neighbor Solicitation, un routeur réponds par un Advertisement
• La parte Interface ID est soit basé sur l’adresse MAC de l’interface ethernet utilisée
• Ou Génération « aléatoire » des 64 derniers bits.
26/02/2016
55
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
SLAAC - Stateless Address Autoconfiguration
• Configuration avec nmcli
#nmcli connection add con-name ens192IP6 type ethernet ifname ens192#nmcli connection modify ens192IP6 ipv6.method auto#nmcli con down ens192IP6#nmcli con down ens192IP6
# nmcli connection show ens192IP6 | grep ipv6ipv6.method: manualipv6.dns:ipv6.dns-search:ipv6.addresses: 2001:db8:0:1::c000:207/64ipv6.gateway: 2001:db8:0:1::1
26/02/2016
56
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Adressage statique
• Configuration avec nmcli
#nmcli connection add con-name ens192IP6 type ethernet ifname ens192 ip6 2001:db8:0:1::c000:207/64 gw6 2001:db8:0:1::1#nmcli connection modify ens192IP6 ipv6.addresses 2001:db8:0:1::c000:207/64 ipv6.gateway 2001:db8:0:1::1#nmcli con mod ens192IP6 ipv6.dns 2001:4860:4860::8888
# nmcli connection show ens192IP6 | grep ipv6ipv6.method: manualipv6.dns:ipv6.dns-search:ipv6.addresses: 2001:db8:0:1::c000:207/64ipv6.gateway: 2001:db8:0:1::1
26/02/2016
57
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Adressage statique• Comme pour IPV4, On attribue une adresse IPV6 et sa passerelle
#vi /etc/sysconfig/network-scripts/ifcfg-ens192IP6TYPE=EthernetBOOTPROTO=noneDEFROUTE=yesIPV6INIT=yesIPV6_AUTOCONF=noIPV6ADDR=2001:db8:0:1::c000:207/64IPV6_DEFAULTGW=2001:db8:0:1::1IPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noNAME=ens192IP6UUID=c885b267-9916-4b9d-9b45-cef11d2726adDEVICE=ens192ONBOOT=yesPEERDNS=yesPEERROUTES=yesDNS1=2001:4860:4860::8888
26/02/2016
58
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Service DHCPV6• Le service DHCP pour IPV6 est un peu différent d’IPV4.
• IPV6 n’utilise pas le broadcast
• Le client envoie des requêtes sur le port 547/udp a l’adresse ff02::1:2
• Cette dernière est le groupe multicast DHCPv6-server
• Le serveur DHCP répond sur le port 546/udp
• Deux types de DHCP
• DHCP Statefull, DHCP Stateless (uniquement les options, dns, …)
26/02/2016
59
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Service DHCPV6
• Configuration avec nmcli
#nmcli connection add con-name ens192IP6 type ethernet ifname ens192#nmcli connection modify ens192IP6 ipv6.method dhcp#nmcli con down ens192IP6#nmcli con down ens192IP6
# nmcli connection show ens192IP6 | grep ipv6ipv6.method: dhcpipv6.dns:ipv6.dns-search:ipv6.addresses: 2001:db8:0:1::c000:207/64ipv6.gateway: 2001:db8:0:1::1
26/02/2016
60
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• SLAAC - Stateless Address Autoconfiguration
• Adressage statique
• Service DHCPV6
26/02/2016
61
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Comprendre l'agrégation de lien
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
NIC Teaming et Bridging
26/02/2016
62
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction à l’agrégation de lien réseaux
• Le channel bonding
• Le Teaming
26/02/2016
63
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
• L’agrégation de lien consiste à lier plusieurs interfaces réseaux :
� Fournir plus de bande passante
� Fournir de la redondance sur les interfaces
• L’agrégation de liens est connue sous les termes :
� Channel Bonding
� Link agregation
� Port truking
� NIC teaming
� Etc.
Introduction a l’agrégation de lien réseaux
eth0 eth1 eth2
team0
26/02/2016
64
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le channel bonding• Le Channel Bonding était la technologie utilisée par Red Hat pour
l’agrégation de liens
• Le Channel bonding ou agrégation de cartes réseau permet d’appliquer des stratégies sur les cartes réseaux
• Avec plusieurs cartes, un groupe d’interface est créé. Une seule interface, représente un groupe de cartes
• Parmi les stratégies disponibles :
� L’équilibrage de charge
� La tolérance aux pannes
� L’amélioration des performances
eth0 eth1 eth2
Bond0
26/02/2016
65
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le channel bonding• L’équilibrage de charge - Balance rr
� Ce mode fait transiter séquentiellement les paquets sur chaque interface
• La sauvegarde active – Active backup
� Seule une interface est en fonctionnement, si elle tombe en panne, l’autre interface s‘active et reçoit donc les paquets
• La balance tdb
� Le trafic sortant est distribué selon la vitesse de chaque carte réseau, permet également le Fail-Over
• La balance XOR
� Ce mode est basé sur une politique de hachage de transmission. Une interface affectée à l’envoie vers une adresse MAC (adresse de la source XOR adresse MAC de destination modulo du nombre d’interface)
• La balance alb, le broadcast, le 802.3
26/02/2016
66
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le Teaming• Depuis Red hat Enterprise Linux 7, l’agrégation de liens est gérée par le
service Network teaming
• Ne remplace pas le Channel Bonding, c’est une alternative choisi par Red Hat
• Network Teaming ou Teaming est architecturé autour :
� D’un “driver” qui possède une API, une librairie LibTeam et un démon Teamd
� Des outils en espace utilisateur peuvent utiliser cette API pour discuter avec le driver. La librairie LibTeam n’interagie pas directement avec l’api (libnl)
� Un utilisateur peut par exemple écrire un programme pour interagir avec la LibTeam
26/02/2016
67
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le Teaming• A l’instar du Channel bonding, le Teaming propose des stratégies.
• Dans le jargon Team, une stratégie est appelée un “runner”
• Différents runners sont disponibles :
� Broadcast
• (Les données sont transmises sur tous les ports)
� round-robin
• (Les données sont tour à tour transmises sur les ports)
� active-backup
• (Une interface est utilisée. La suivante est réservée en cas de défaillance)
� loadbalance
• (Algorithme d’équilibrage de charge)
� lacp (implémentation du 802.3ad Link Aggregation Control Protocol)
eth0 eth1 eth2
team0
26/02/2016
68
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction à l’agrégation de liens réseau
• Le channel bonding
• Le Teaming
26/02/2016
69
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configurer le NIC Teaming
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
NIC Teaming et Bridging
26/02/2016
70
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan• Installation du service Teamd
• Création de l’interface team avec nmcli
• Ajout adressage IP
26/02/2016
71
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Installation du service Teamd
• Installation de teamd
#yum install teamd
• Activation du service teamd !!
26/02/2016
72
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Création de l’interface team avec nmcli
• Création d une interface team
#nmcli con add type team con-name Interface_team0 ifname team0 \config '{ "runner": {"name": "loadbalance"}}‘
• Fichier /etc/sysconfig/network-scripts/ifcfg-Interface_team0
#cat /etc/sysconfig/network-scripts/ifcfg-Interface_team0DEVICE=team0 TEAM_CONFIG="{ \"runner\": {\"name\": \"loadbalance\"}}" DEVICETYPE=Team NAME=Interface_team0ONBOOT=yes
26/02/2016
73
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ajout adressage IP
• Ajout méthode manuelle, adresse IP, route, et dns
#nmcli con add type team con-name Interface_team0 ifname team0 \config '{ "runner": {"name": "loadbalance"}}‘
• Fichier /etc/sysconfig/network-scripts/ifcfg-Interface_team0
# nmcli con mod Interface_team0 ipv4.addresses 192.168.1.10/24 # nmcli con mod Interface_team0 ipv4.gateway 192.168.1.1# nmcli con mod Interface_team0 ipv4.method manual
26/02/2016
74
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert• Installation du service Teamd
• Création de l’interface team avec nmcli
• Ajout adressage IP
26/02/2016
75
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Gérer les interfaces Team
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
NIC Teaming et Bridging
26/02/2016
76
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Ajout des interfaces réseau avec nmcli
• Gestion de l’interface teaming
26/02/2016
77
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ajout des interfaces réseaux avec nmcli
• Ajout de l’interface enp0s3
# nmcli con add type team-slave con-name team0-enp0s3 ifname enp0s3 \master team0 team0: Port device eth0 addedIPv6: ADDRCONF(NETDEV_CHANGE): team0: link becomes readyConnection ' team0-enp0s3 ' (d3…..) successfully added
• Fichier /etc/sysconfig/network-scripts/ifcfg-Interface_team0-enp0s3
#cat /etc/sysconfig/network-scripts/ifcfg- team0-enp0s3NAME= team0-enp0s3DEVICE= enp0s3ONBOOT=yes TEAM_MASTER=team0 DEVICETYPE=TeamPort
26/02/2016
78
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ajout des interfaces réseaux avec nmcli
• Ajout de l’interface enp1s3
# nmcli con add type team-slave con-name team0-enp1s3 ifname enp1s3 \master team0 team0: Port device eth0 addedIPv6: ADDRCONF(NETDEV_CHANGE): team0: link becomes readyConnection ' team0-enp1s3 ' (d3…..) successfully added
• Fichier /etc/sysconfig/network-scripts/ifcfg-Interface_team0-enp1s3
#cat /etc/sysconfig/network-scripts/ifcfg- team0-enp1s3NAME= team0-enp1s3DEVICE= enp0s3ONBOOT=yes TEAM_MASTER=team0 DEVICETYPE=TeamPort
26/02/2016
79
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Gestion de l’interface teaming
• Activation de l’interface
#nmcli con up Interface_team0
• Afficher les connexions
#nmcli con show
• Afficher la configuration du Teaming
#teamdctl team0 state#teamdctl team0 config dump
26/02/2016
80
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Ajout des interfaces réseau avec nmcli
• Gestion de l’interface teaming
26/02/2016
81
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Comprendre les pont réseau - Bridge
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
NIC Teaming et Bridging
26/02/2016
82
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction aux pont réseau -Bridge
• Installation et découverte de bridge-utils
26/02/2016
83
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction aux Bridge• Un bridge ethernet est l'équivalent d'un switch virtuel au niveau
système
• Permet donc d’avoir des fonctions :
� de commutation,
� spanning tree,
� multiple port ethernet,
� port de type channel bonding, team
� VLAN, ...
• Pour partager une connexion internet
• Surtout pour les machines virtuelles
eth0 eth1
TCPI/IP
Noyau
B r i d g e
br0
promiscuousmode
promiscuousmode
26/02/2016
84
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Installation de bridge-utils• Le paquet bridge-utils fourni sur Red hat EL 7
• Créer et administrer des ponts• Installation de bridge-utils
#yum install bridge-utils
#rpm –ql bridge-utils..
• La commande brctl
#brctl show#brctl showmacs bridge0#brctl add-br bridge0#brctl add-if bridge0 enp0s3
26/02/2016
85
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert• Introduction aux pont réseaux -Bridge
• Installation et découverte de bridge-utils
26/02/2016
86
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configurer un bridge
NIC Teaming et Bridging
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
87
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Configurer un bridge avec nmcli
• Les scripts ifcfg
26/02/2016
88
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configurer un bridge avec nmcli• Création du bridge
#nmcli con add type bridge con-name br0 ifname br0#nmcli con mod br0 ipv4.addresse 192.168.1.10/24#nmcli con mod br0 ipv4.gateway 192.168.1.1#nmcli con mod br0 ipv4.method manual
• Ajout de deux ports attaché s aux cartes Ethernet
#nmcli con add type bridge-slave con-name br0-port1 ifname enp0s3#nmcli con add type bridge-slave con-name br0-port2 ifname enp0s8
• Visualiser le bridge
#brctl show#brctl showstp br0
26/02/2016
89
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les scripts ifcfg• Contenu des fichiers /etc/sysconfig/network-script/ifcfg-br0….
#cat /etc/sysconfig/network-script/ifcfg-br0DEVICE=br0STP=yesTYPE=BridgeBOOTPROTO=noneNAME=br0UUID=d32d5d35-0032-48d4-ac05-bfd762ec0a70ONBOOT=yesBRIDGING_OPTS=priority=32768IPADDR=192.168.1.10
#cat /etc/sysconfig/network-script/ifcfg-br0-port1TYPE=EthernetNAME=br0-port1UUID=b5145422-5b3a-4561-9066-c2f07054c72eDEVICE=enp0s3ONBOOT=yesBRIDGE=br0
26/02/2016
90
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Configurer un bridge avec nmcli
• Les scripts ifcfg
26/02/2016
91
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configurer un bridge "teaming"
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
NIC Teaming et Bridging
26/02/2016
92
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan• Mise en oeuvre d’une interface teaming
• NetworkManager
• Mise en oeuvre du Bridge
26/02/2016
93
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Mise en oeuvre d’une interface teaming• Création du teaming
#nmcli con add type team con-name team0 ifname team0 \
Config ‘{“runner”:{“activebackup”}}’
• Ajout de deux ports au teaming
#nmcli con add type team-slave con-name team0-port0 ifname enp0s3 \
Master team0
#nmcli con add type team-slave con-name team0-port1 ifname enp0s8 \
Master team0
• Visualiser l’interface team0
#teamdctl team0 state
26/02/2016
94
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
NetworkManager• NetworkManager ne supporte pas le mélange Teaming sur Bridge
• Il faut donc désactiver NetworkManager !
• Travailler avec les scripts réseaux
• Désactivation de NetworkManager
#systemctl stop NetworkManager
#systemctl disable NetworkManager
26/02/2016
95
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Mise en oeuvre du bridge• Modification des scripts périphériques bridge et team
#vi /etc/sysconfig/network-script/ifcfg-brteam0DEVICE=br0
TYPE=Bridge
BOOTPROTO=none
DEFROUTE=no
NAME=brteamo
ONBOOT=yes
IPADDR=192.168.1.50
PREFIX=24
#vi /etc/sysconfig/network-script/ifcfg-team0DEVICE=team0
DEVICETYPE=Team
BOOTPROTO=none
NAME=team
UUID=4d21f010-b7d1-48a2-9ef9-5897161fee6e
ONBOOT=yes
TEAM_CONFIG="{\"runner\": {\"name\": \"activebackup\"}}"
BRIDGE=brteam0
26/02/2016
96
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Mise en oeuvre du bridge• Redémarrage du serveur !!!
#reboot
• Afficher l’état du périphériques teaming
#teamdctl team0 config dump
#teamdctl team0 state
setup:
runner: activebackup
ports:
eth2
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
26/02/2016
97
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert• Mise en oeuvre d’une interface teaming
• NetworkManager
• Mise en oeuvre du Bridge
26/02/2016
98
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Retour sur Firewalld
Sécurité
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
99
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Retour sur Firewalld
� Les Zones Firewalld
� La commande firewall-cmd
26/02/2016
100
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Retour sur Firewalld• Firewalld est le programme employé par RHEL 7 pour administrer le firewall
• Le service Firewalld est une interface qui manipule le sous système noyauNetfilter
• Firewalld utilise les commandes iptables, iptables6 et ebtables pour manipulerles règles de firewall
• Les services iptables6.service, iptables.service et ebtables.service sont en conflitavec le service firewalld.
26/02/2016
101
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les Zones Firewalld
Public DMZ
sshwww
dns
26/02/2016
102
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La commande firewall-cmd• Pas de commande CLI (targetcli, nmcli, …)
• Firewall-cmd pour ajouter, supprimer, modifier des zones, des accès
• Manipuler les zones
#firewall-cmd --get-active-zonespublic
interfaces: eth0
#firewall-cmd –set-default-zones =work
#firewall-cmd --list-all –zone=work
26/02/2016
103
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La commande firewall-cmd• Pas de commande CLI (targetcli, nmcli, …)
• Firewall-cmd pour ajouter, supprimer, modifier des zones, des accès
• Manipuler les zones
#firewall-cmd --get-active-zonespublicinterfaces: eth0
#firewall-cmd --get-zonesblock dmz drop external home internal public trusted work
#firewall-cmd –set-default-zones =work
26/02/2016
104
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La commande firewall-cmd• Manipuler les zones
#firewall-cmd --list-allwork (default, active)interfaces: br0 eth0sources:services: dhcpv6-client ipp-client sshports:masquerade: noforward-ports:icmp-blocks:rich rules:
#firewall-cmd --zone=internal --change-interface=eth0
# firewall-cmd --permanent --zone=internal --change-interface=eth0
#firewall-cmd --permanent --new-zone=test success
26/02/2016
105
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La commande firewall-cmd• Manipuler les services et ports
#firewall-cmd --permanent --zone=work --add-service=httpservices: dhcpv6-client ipp-client ssh httpports:
#firewall-cmd --permanent --zone=work --remove--service=http
#firewall-cmd --zone=work --list-all
#firewall-cmd --permanent --zone=work --add-port=80/tcpservices: dhcpv6-client ipp-client sshports: 80/tcp
#firewall-cmd --reload
26/02/2016
106
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La commande firewall-cmd• Manipuler les sources
#firewall-cmd --permanent --zone=work --add-source=192.168.10.0/24
#firewall-cmd --permanent --zone=work --remove-source=192.168.10.0/24
#firewall-cmd --zone=work --list-sources192.168.10.0/24
#firewall-cmd --zone=work --add-service=ssh --permanent#firewall-cmd --zone=work --add-source=10.0.0.10/32 --permanent
26/02/2016
107
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La commande firewall-cmd• Manipuler les sources
#firewall-cmd --permanent --zone=work --add-source=192.168.10.0/24
#firewall-cmd --permanent --zone=work --remove-source=192.168.10.0/24
#firewall-cmd --zone=work --list-sources192.168.10.0/24
#firewall-cmd --zone=work --add-service=ssh --permanent#firewall-cmd --zone=work --add-source=10.0.0.10/32 --permanent
26/02/2016
108
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Retour sur Firewalld
� Les Zones Firewalld
� La commande firewall-cmd
26/02/2016
109
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Comprendre les "Rich Rules"
Sécurité
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
110
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Concept de “Rich Rules”• Travailler avec les “Rich rules”
26/02/2016
111
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Concept de “Rich Rules”• Firewalld offre aux administrateurs deux autres méthodes qui ne sont pas
couvertes par les notions de zone et service pour ajouter des règles : les Direct rules et les Rich rules
• Les Direct rules acceptent une syntaxe très proche d’iptables
• Les Rich rules permettent de mettre en œuvre des configurations complexes :�Liste d’accès au service par port, par protocole, par adressage ip, etc.�Limite du nombre de connexions par minute�Journaliser toutes les connexions�Redirection de port
#firewall-cmd --direct - - permanent --add-rule ipv4 raw INPUT 0 – s 192 . 168 . 0 . 0/24 - j DROP
26/02/2016
112
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Travailler avec les “Rich rules”• Les rich rules offre quatre options pour manipuler les règles riches.
• Une règles riche fait partie d’une zone (par défaut)
•Ajouter, supprimer ,lister et interroger les regles
#firewall-cmd --add-rich-rules=‘La regle a mettre en place’
#firewall-cmd --remove-rich-rules=‘La regle mise en place’
#firewall-cmd --query-rich-rule=‘La regle mise en place’
#firewall-cmd --list-rich-rules
26/02/2016
113
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Travailler avec les “Rich rules”
•Syntaxe d’une règle riches
Rule[source][destination]Service l port l protocol l icmp-block l masquerade l forward-port[log][ audit][ accept l rejectl drop]
# firewall-cmd --add-rich-rule='rule family=ipv4 source address=192.168.10.30/32 log accept‘
26/02/2016
114
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Travailler avec les “Rich rules”
• Logue les connexions venant de la machine 192.168.10.30
# firewall-cmd --add-rich-rule='rule family=ipv4 source address=192.168.10.30/32 log accept'
• Accepte deux connexions par minutes sur le service http venant du réseau 192.168.10.0/24
# firewall-cmd --add-rich-rule='rule service name=http family=ipv4 source address=192.168.10.0/24\limit value=2/m accept‘
• Accepte trois nouvelles connexions par secondes sur le service http venant du réseau 10.0.0./24, journaliser avec un prefixe NEW HTTP
#firewall-cmd --permanent --add-rich-rule= ' rule family=ipv4 source address=10.0.0/24 \service name= "http" log level=notice prefix="NEW HTTP" limit value="3/s" accept‘
26/02/2016
115
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Concept de “Rich Rules”• Travailler avec les “Rich rules”
26/02/2016
116
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le Masquerading
Sécurité
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
117
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction au Masquerading
• Mise en place
26/02/2016
118
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction au Masquerading
Internet
• Une machine du réseau local souhaite atteindre une machine sur internet
• La machine du réseau local possède une adresse privée non routable
• La machine locale envoie les paquets à sa Gateway – Destination externe
• Le routeur/firewall transforme l’adresse source de la machine et tient une table de correspondance – Table NAT (Network Translation Address)
• Le paquet retour d’internet est analysé par le routeur qui modifie l’adresse de destination
NAT
26/02/2016
119
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Mise en place
• Ajouter, supprimer le masquerade
#firewall-cmd --zones=work --add-masquerade --permanent
#firewall-cmd --zones=work --permanent --add-rich-rule='rule family=ipv4 sourceaddress=192.168.10.0/24 masquerade‘
#firewall-cmd --reload
#firewall-cmd --zones=work --remove-masquerade --permanent
26/02/2016
120
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction au Masquerading
• Mise en place
26/02/2016
121
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Sécurité
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Le port Forwarding
26/02/2016
122
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction au Port forwarding
• Mise en place du transfert de port
26/02/2016
123
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction au Port forwarding
Internet@IP privéePort 80
• Une machine externe ou interne souhaite accéder a un service http, ftp, smtp,…
• Vers une machine interne au réseau
• On va donc “forwarde” les paquets avec Firewalld vers une destination
• On fait donc du transfere de paquet
PORT FW
@IP privéePort ftp
26/02/2016
124
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Mise en place
• Utilisation du transfert de port
#firewall-cmd --permanent --zone=public --add-forward \-port=port=80:proto=tcp:toport=8080:toaddr=192.168.10.10
#firewall-cmd --permanent --zone=worrk --add-rich-rule=‘rule family=ipv4 \source address=192.168.10.0/24 forward-port port=80 protocol=tcp to-port=8080’
#firewall-cmd --add-forward-port=port=22:proto=tcp:toaddr=192.168.10.202 --permanent
26/02/2016
125
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction au Port forwarding
• Mise en place du transfert de port
26/02/2016
126
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Sécurité
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Gérer les ports avec SELinux
26/02/2016
127
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction
• Gestion des ports réseau avec Semanage
• Comprendre auditd et SELinux
26/02/2016
128
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
• SELinux ne se limite pas à labéliser les fichiers et programmes
• SELinux permet de gérer le trafic réseau en labélisant les ports réseaux
• Le port SSH labélisé SELinux est le port 22, un autre service ne pourra pas utiliser ce port, il est labélisé port 22 service SSH
• Lors d’un changement de port pour un service, SELinux devra être mis à jour pour accepter les connexions sur ce dernier.
• La commande semanage est l’outil de Policy Management
Introduction
• Lister les ports
#semanage port –lhttp_port_t tcp 80, 81, 443, 488, 8008, 8009, 8443, 9000ssh_port_t tcp 22
26/02/2016
129
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Gestion des ports réseaux avec Semanage• Semanage n’est pas toujours installé par défaut sur le serveur
• Semanage fait partie du paquet policycoreutils-python, installation avec yum
#grep targeted /etc/selinux/config…SELINUXTYPE=targeted
#yum provides semanage…#yum install –y policycoreutils-python
26/02/2016
130
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
• La stratégie targeted utilise un nombre important de types de ports.
• Il faut parfois lire la documentation des ports, le paquet selinux-policy-level contient les pages de man de chaque type de ports
Gestion des ports réseaux avec Semanage• Autoriser le service SSH sur le port 8080
#semanage –a –t ssh_port_t –p tcp 8080
• Autoriser le service SSH sur le port 8080
#yum -y install selinux-policy–devel#mandb#man –k _selinux
26/02/2016
131
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Gestion des ports réseaux avec Semanage• Autoriser le service SSH sur le port 8080
#semanage –a –t ssh_port_t –p tcp 8080
• Supprime le service SSH sur le port 8080
#semanage –d –t ssh_port_t –p tcp 8080
• Modifier le service SSH sur le port 8888
#semanage –m –t ssh_port_t –p tcp 8888
26/02/2016
132
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Comprendre auditd et SELinux
SELinux
Policy
/var/log/auditd/audit.log
Auditd
26/02/2016
133
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Comprendre auditd et SELinux
# semanage port -a -t ssh_port_t -p tcp 9998
#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
26/02/2016
134
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction
• Gestion des ports réseau avec Semanage
• Comprendre auditd et SELinux
26/02/2016
135
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Comprendre le DNS (Domain Name System)
Le service DNS
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
136
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Le rôle du service DNS (Domain Name System)
• L'espace de noms
• Les serveurs de noms
26/02/2016
137
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
• Chaque ordinateur connecté au réseau possède une adresse IP.
• Le système DNS permet de résoudre le nom en adresse IP et inversement
• Avant 1983, les recherches se réalisaient au travers d’un fichier HOST.TXT. Copier et recopier par le transfert de fichiers
• En 1983 Paul Mockapetris publie le design du système DNS RFC882, 883
• En 1987 la norme est publié RFC1034 et RFC1035
Le rôle du service DNS (Domain Name System)
www.alphorm.com A78.34.59.1
www.alphorm.com
78.34.59.1
26/02/2016
138
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
L'espace de noms
comorg frnet edu
alphorm
blogforum www
www.alphorm.com.
racine
TLD
Domaine
Hôte
26/02/2016
139
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les serveur de noms
comorg frnet edu
alphorm
blogforum www
www.alphorm.com.
.root.servers
a0.com.servers
ns01.alphorm
Noms de domainesSous domaines
Serveur DNS
ns02.alphorm
26/02/2016
140
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Le rôle du service DNS (Domain Name System)
• L'espace de noms
• Les serveurs de nom
26/02/2016
141
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Comprendre les recherches DNS
Le service DNS
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
142
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Résolution du nom par un hôte
26/02/2016
143
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Résolution du nom par un hôtea.root.servers
Com NS A0.com.afilias-nst.info 2.3.4.5
Ns01.alphorm.com
www.alphorm.com A ?
www.alphorm.com A ?A0.com.afilias-nst.info
www.alphorm.com A78.34.59.1
26/02/2016
144
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Résolution du nom par un hôte
26/02/2016
145
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Comprendre les enregistrements DNS
Le service DNS
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
146
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Qu’est-ce qu’un enregistrement DNS
• Les enregistrement de type SOA et NS
• Les enregistrement de type A et AAAA
• Les enregistrement CNAME
• Les enregistrement de “service” MX, SRV
• L’enregistrement PTR
26/02/2016
147
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Qu’est-ce qu’un enregistrement DNS?• Un DNS est une base de données répartie contenant des
enregistrements.
• Ces enregistrement sont appelés RR (Resource Records).
� FQDN : Le nom de domaine pleinement qualifié. Se termine par un POINT.
� TTL : Durée de vie, utile pour les serveurs de cache.
� Type : Définit le type de ressources. Adresse IPv4, IPv6, service de messagerie. …
� RessourceData : Données correspondant à l'enregistrement selon le type
Nom de alphorm (FQDN) TTL Type Classe RData
alphorm.com. 3600 A IN (internet) 23.97.208.18
26/02/2016
148
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les enregistrement de type SOA et NSa.root.servers
A0.com.afilias-nst.info
SOA (Start Of Authority) : le champ SOA permet de décrire le serveur de nom ayant autorité sur la zone.fournit les informations générales de la zone : le serveur principal, messagerie de contact, différentes durées dont celle d'expiration, numéro de série de la zone
NS : correspond au serveur de noms ayant autorité sur le Alphorm.
Ns01.alphorm.com
$TTL 60480086400 IN SOA a.root-servers.net. nstld.verisign-grs.com.2016010600 ; Serial1800 ; Refresh900 ; Retry604800 ; Expire86400 ; Negative Cache TTL
. IN NS a.root-servers.net.
. IN NS b.root-servers.net.
. IN NS c.root-servers.net.
$TTL 60480086400 IN SOA d.service.afiliasdns.com.2016010600 ; Serial1800 ; Refresh900 ; Retry604800 ; Expire86400 ; Negative Cache TTL
1.34.5.6 IN NS alphorm.com.
$TTL 60480086400 IN SOA alphorm.com..2016010600 ; Serial1800 ; Refresh900 ; Retry604800 ; Expire86400 ; Negative Cache TTL
1.34.5.6 IN NS ns01.alphorm.com.2.4.67.4 IN A www
$TTL 60480086400 IN SOA alphorm.com..2016010600 ; Serial1800 ; Refresh900 ; Retry604800 ; Expire86400 ; Negative Cache TTL
1.34.5.6 IN NS ns01.alphorm.com.2.4.67.4 IN A www
26/02/2016
149
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les enregistrement de type A et AAAAA0.com.afilias-nst.info
A - address record : le type A décrit simplement une correspondance entre l’adresse IP et le non canonique, nom d'hôte
AAAA - IPv6 address record : décrit simplement une correspondance entre l’adresse IP V6 et le non canonique, nom d'hôte
Ns01.alphorm.com
$TTL 60480086400 IN SOA d.service.afiliasdns.com.2016010600 ; Serial1800 ; Refresh…
Ns01alphorm.com. IN A 6.78.65.90Ns0.alphorm.com. IN AAAA 2001:500:a5:0:0:0:0:1
$TTL 60480086400 IN SOA alphorm.com..2016010600 ; Serial….
1.34.5.6 IN NS ns01.alphorm.com.www IN A 6.78.65.89forum. IN A 6.78.65.88ftp IN A 6.78.65.87www IN AAAA 201:500:a5:0:0:1forum. IN AAAA 201:500:a5:0:0:2 ftp
IN AAAA 201:500:a5:0:0:3
26/02/2016
150
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les enregistrement CNAME
CNAME – Canonical Name: décrit un alias sur un FQDN, un nom canonique.
Ns01.alphorm.com
$TTL 60480086400 IN SOA alphorm.com..2016010600 ; Serial….
1.34.5.6 IN NS ns01.alphorm.com.www IN A 6.78.65.89forum IN CNAME www.alphorm.com. ftp IN CNAME www.alphorm.com.
26/02/2016
151
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les enregistrement de “service” MX, SRV
SRV– Enregistrement de service: indique des services disponibles. Kerberos, ldap. On trouve le service _sip, le protocole _tcp, le nom de alphorm, TTL, type SRV, priorité, poids, port et le serveur. Permet l’équilibrage de charge.
MX – Mail Exchanger : fournit les noms d’hôtes et le poids des serveurs de messagerie
Ns01.alphorm.com
$TTL 60480086400 IN SOA alphorm.com..
2016010600 ; Serial….1.34.5.6 IN NS ns01.alphorm.com.alphorm.com. 86400 IN MX 50 alt2.aspmx.l.google.com.alphorm.com. 86400 IN MX 100 aspmx2.googlemail.com.
aspmx2.googlemail.com. 175 IN A 74.125.68.27aspmx2.googlemail.com. 54 IN AAAA 2404:6800:4003:c02::1b
_sip._tcp.alphorm.com. 86400 IN SRV 0 33 5060 SRV sip1.alphorm.com.._ldap._tcp.alphorm.com. 86400 IN SRV 0 33 5060 SRV ldap.alphorm.com._kerberos._tcp.alphorm.com. 86400 IN SRV 0 33 5060 SRV kerberos.alphorm.com.
26/02/2016
152
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
L’enregistrement PTR
PTR– Pointer reccord: fournit les noms d’hôtes à partir de l’adresse IP, il y a une zone particulière, in-addr.arpa, qui permet la résolution inverse d'adresses IP
Ns01.alphorm.com
$TTL 60480086400 IN SOA alphorm.com..2016010600 ; Serial….
1.34.5.6 IN NS ns01.alphorm.com.0.168.192.in-addr.arpa. IN NS ns1.alphorm.com. 0.168.192.in-addr.arpa. IN NS ns2.alphorm.com.
2 IN PTR www.alphorm.com. 3 IN PTR ftp.alphorm.com. 4 IN PTR ldap.alphorm.com..
26/02/2016
153
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Qu’est-ce qu’un enregistrement DNS
• Les enregistrement de type SOA et NS
• Les enregistrement de type A et AAAA
• Les enregistrement CNAME
• Les enregistrement de “service” MX, SRV
• L’enregistrement PTR
26/02/2016
154
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le service de cache DNS
Le service DNS
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
155
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Le serveur de cache ?
• Les serveurs de cache DNS
• DNSSEC
• Configuration d’un serveur de cache sécurisé - Unbound
26/02/2016
156
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le serveur de cache ?a.root.servers
Com NS A0.com.afilias-nst.info 2.3.4.5
Ns01.alphorm.com
www.alphorm.com A ?
www.alphorm.com A ?A0.com.afilias-nst.info
www.alphorm.com A78.34.59.1
26/02/2016
157
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le serveur de cache ?
www.alphorm.com A ?
www.alphorm.com A78.34.59.1
www.alphorm.com A ?
J’ai la réponse conservé dans mon cache
www.alphorm.com A 78.34.59.1
• Le client demande une résolution de nom pour le serveur www.alphorm.com
• La réponse à la requête :
� Le serveur ne possède pas l’information, il demande au serveur de redirection la résolution de nom. Le serveurle mets en cache
� Dans le cache du serveur
On peut donc configurer un serveur en serveur de cache
26/02/2016
158
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les serveur de cache DNS
https://www.unbound.net/
Petit serveur de validation, récursive et cache sécurisé avec DNSSEC
Sous licence BSD
Le serveur DNS utilisé sous Linux et le plus utilisé dans le monde
Serveur d’Autorité de noms de domaines
26/02/2016
159
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
DNSSEC• DNSSEC – Domain Name System Security Extensions :
� Protocole standardisé IETF
� Permet de sécuriser l’envoi des données du système DNS
� Pas comme SSL, pas un “simple” canal chiffré, ne chiffre pas les données DNS
� Signe les enregistrements DNS et garantit la validité des données
� Permet de déléguer dans les domaines et zones DNS
� Permet de créer une chaine de confiance depuis la racine
26/02/2016
160
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configuration d’Ubound• Installation du serveur de noms bind
#yum install –y unbound
#cp /etc/unbound/unbound.conf /etc/unbound/unbound.conf.original# vim /etc/unbound/unbound.confauto-trust-anchor-file: "/var/lib/unbound/root.key"verbosity: 1 interface: 192.168.0.1 logfile: /var/log/unbound hide-identity: yes hide-version: yes harden-glue: yes use-caps-for-id: yesaccess-control: 192.168.0.0/24 allowforward-zone:
name: "." forward-addr: 208.67.222.222 forward-addr: 208.67.220.220 forward-addr: 8.8.8.8 forward-addr: 8.8.4.4
26/02/2016
161
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Le serveur de cache ?
• Les serveurs de cache DNS
• DNSSEC
• Configuration d’un serveur de cache sécurisé - Unbound
26/02/2016
162
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Mise en œuvre d'un serveur DNS local Bind9
Le service DNS
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
163
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Le service Bind
• Installation de bind9
• Configuration du serveur named
• Création des zones de recherche
• Test !
26/02/2016
164
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le service Bind• Le service DNS - Berkeley Internet Name Daemon
• Le logiciel est actuellement développé par l'Internet Systems Consortium.
• Le serveur le plus utilisé sur Internet 80% des serveurs DNS
• Presque un standard
• Développé Paul Vixie, à l’université de Berkeley
• Aujourd’hui Bind est en version 9 :
� DNSSEC, TSIG (authentification, identification des extrémités)..
26/02/2016
165
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Installation de bind9
• Installation du serveur de noms bind
#yum install –y bind bind-utils
#rpm –ql bind9/etc/named.conf/etc/sysconfig/named
26/02/2016
166
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configuration du serveur named
• Configuration du service bind avec le fichier /etc/named.conf
#vim /etc/named.conflisten-on port 53 { any; };allow-query { any; };dnssec-validation no;forward only; forwarders { 8.8.8.8; };
• Déclaration des zones dans le fichier named.cond
#cat /etc/named.confzone "alphorm.lan" { type master; file "alphorm.lan.zone"; allow-update { none; };};zone "1.168.192.in-addr.arpa" ….
26/02/2016
167
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Création des zones de recherches
• Ouverture du service dns
#vi /var/log/named/alphorm.lan.db$TTL 86400 @ IN SOA dns.alphorm.lan. root.alphorm.lan. (
2014080601 ; Serial 1d ; refresh2h ; retry4w ; expire 1h ) ; min cache
IN NS dns.alphorm.lan. IN MX 10 mail.alphorm.lan. gateway IN A 192.168.1.1 dns IN A 192.168.1.5 master IN CNAME dns.alphorm.lan. mail IN A 192.168.1.10 client IN A 192.168.1.15
26/02/2016
168
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Création des zones de recherches
• Ouverture du service dns
#vi /var/log/named/0.1.168.192.db$TTL 86400 @ IN SOA dns.alphorm.lan. root.alphorm.lan. (
2014080601 ; Serial 1d ; refresh2h ; retry4w ; expire 1h ) ; min cache
IN NS dns.alphorm.lan. 1 IN PTR gateway.alphorm.lan. 5 IN PTR dns.alphorm.lan. 10 IN PTR mail.alphorm.lan. 15 IN PTR client.alphorm.lan.
26/02/2016
169
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Test
• Test du service dns
#dril dns.alphorm.lan;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 1996;; flags: qr aa rd ra ; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0;; QUESTION SECTION:;; dns.alphorm.lan. IN A
#dig mail.alphorm.lan;; QUESTION SECTION:;mail.alphorm.lan. IN A
;; ANSWER SECTION:mail.alphorm.lan. 86400 IN A 192.168.10.10
26/02/2016
170
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert• Le service Bind
• Installation de bind9
• Configuration du serveur named
• Création des zones de recherche
• Test !
26/02/2016
171
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configurer le serveur apache
Le service Web
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
172
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction au serveur HTTP apache
• Installation d’apache
• Configuration du serveur HTTP
26/02/2016
173
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction au serveur HTTP apache
• Le serveur Apache est un serveur http
• Le serveur le plus populaire sur Internet
• Développé et maintenu par la fondation Apache
� https://fr.wikipedia.org/wiki/Apache_Software_Foundation
• En 1995 la première version d’apache, basée sur le NCSA HTTPd
• Entièrement réécrit, Apache est aujourd’hui en version 2.xx.
26/02/2016
174
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction au serveur HTTP apache
• Apache est conçu de façon modulaire, il est facile de lui ajouter de nombreuses fonctionnalités :
� TLS, SSL,
� Authentification des utilisateurs et des répertoires
� Langage : perl, python, php, ruby, etc..
� Réécriture d’urls,
� Proxy,
� Multi sites (Virtual host), etc..
26/02/2016
175
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Installation d’apache
• Installation du serveur http
#yum groupinstall -y "Web server"#rpm –ql apache-2….
• Activation du service http et configuration du firewall
# systemctl enable httpd# systemctl start httpd
#firewall-cmd --permanent --add-service=https Success # firewall-cmd --reload Success
26/02/2016
176
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configuration du serveur HTTP
• Configuration du service HTTP avec le fichier /etc/http/conf/httpd.conf
#vim /etc/http/conf/httpd.conf
ServerAdmin [email protected] www.alphorm.lan:80
• Rechargment de la configuration
# systemctl restart httpd
• Créer un page html
#vim /var/www/html/index.html<html><body>Test Page</body></html>
26/02/2016
177
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction au serveur HTTP apache
• Installation d’apache
• Configuration du serveur HTTP
26/02/2016
178
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configurer des hôtes virtuels
Le service Web
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
179
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction aux hôtes virtuels
• hôtes virtuels par nom
• hôtes virtuels par port
• hôtes virtuels par IP
26/02/2016
180
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction aux hôtes virtuels
• Le serveur Apache permet de gérer plusieurs sites web indépendants sur le même serveur
• Chaque site est indépendant, avec sa propre configuration
• Il existe plusieurs méthodes afin d’héberger des VirtualHost :
� VirtualHost par nom
� VirtualHost par port
� VirtualHost par IP
26/02/2016
181
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
hôtes virtuelles par nom
• Créer un fichier /etc/httpd/conf.d/vhost.conf
#vim /etc/httpd/conf.d/vhost.conf<VirtualHost *:80>ServerAdmin [email protected] /var/www/html/www2.alphorm.lanServerName www2.alphorm.lanErrorLog logs/www2.alphorm.lan-error_logCustomLog logs/www2.alphorm.lan-access_log common</VirtualHost>
• Vérification de la configuration
# httpd -D DUMP_VHOSTS
26/02/2016
182
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
hôtes virtuelles par port
• Configuration du service HTTP avec le fichier /etc/http/conf/httpd.conf
#vim /etc/http/conf/httpd.conf
Listen 80Listen 81
• Créer un fichier /etc/httpd/conf.d/vhost.conf
#vim /etc/httpd/conf.d/vhost.conf<VirtualHost 192.168.20.10:81>ServerName server81DocumentRoot /var/www/html/www81</VirtualHost>
26/02/2016
183
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
hôtes virtuelles par IP
• Créer un fichier /etc/httpd/conf.d/vhost.conf
#vim /etc/httpd/conf.d/vhost.conf<VirtualHost 192.168.30.30:80>ServerName server1DocumentRoot /var/www/html/www1</VirtualHost>
<VirtualHost 192.168.20.10:80>ServerName server2DocumentRoot /var/www/html/www2</VirtualHost>
26/02/2016
184
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction aux hôtes virtuels
• hôtes virtuels par nom
• hôtes virtuels par port
• hôtes virtuels par IP
26/02/2016
185
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
L'authentification des utilisateurs
Le service Web
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
186
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Les dossiers privés
• L’authentification avec htpasswd
26/02/2016
187
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les dossiers privés
• Configuration du service HTTP avec le fichier /etc/http/conf/httpd.conf
#vim /etc/http/conf/httpd.conf
<Directory "/var/www/html/private"> AuthType Basic AuthName “espace protegé par mot de passe" AuthUserFile /etc/httpd/conf/password Require user ludo</Directory>
# apachectl configtestSyntax OK
26/02/2016
188
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
L’authentification avec htpasswd
• Créer le fichier /etc/httpd/conf/password
#htpasswd -c /etc/httpd/conf/passwd ludoNew password: mot de passeRe-type new password: ******** Adding password for user ludo
#chmod 600 /etc/httpd/conf/password #chown apache:apache /etc/httpd/conf/password
• Rechargement de la configuration
#systemctl restart httpd
26/02/2016
189
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Les dossiers privés
• L’authentification avec htpasswd
26/02/2016
190
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Transport Layer Security
Le service Web
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
191
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• TLS introduction
• Introduction au Certificat
• Créer des certificats
26/02/2016
192
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
TLS introduction • Transport Layer Security est un protocole d’échange
sécurisé à clé publique/privé
• TLS est le successeur de SSL (Netscape)
• TLS permet :
� L’authentification des serveurs
� La confidentialité des échanges
� L’intégrité des échanges
26/02/2016
193
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction au Certificat• Dans le cas des serveurs web sécurisé avec TLS.
• L’identification est réalisée avec des certificats numériques X509
• Ces certficats contiennent :
� Une clé publique
� Des informations : société, adresse, pays, FQDN.
� Une signature
• Les certificats sont validés par des AC (Autorité de certification).
• On peut utiliser des certificats auto-signés
26/02/2016
194
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction au Certificat
Client Web Serveur Web
connexion TLS est établie
26/02/2016
195
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Créer des certificats
• Installation des outils crypto
#yum install crypto-utils
• Création du certificat
#genkey www.alphorm.lan
ATTENDRE !!
#ping –f www.alphorm.lan
26/02/2016
196
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Créer des certificats
• Attribuer les permissions sur les certificats
#chmod 0644 /etc/pki/tls/certs/www.alphorm.lan.crt#chmod 0644 /etc/pki/tls/private/www.alphorm.lan.key
• Afficher le certifcats
#openssl x509 -in /etc/pki/tls/certs/www.alphorm.lan.crt -noout –textCertificate:
Data:Version: 3 (0x2)Serial Number: 2770634487 (0xa52486f7)
Signature Algorithm: sha1WithRSAEncryptionIssuer: C=FR, ST=Ile de france, L=Paris, O=alphorm.com, OU=formation, CN=www.alphorm.lanValidity
Not Before: Jan 12 14:53:34 2016 GMTNot After : Feb 12 14:53:34 2016 GMT
26/02/2016
197
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• TLS introduction
• Introduction au Certificat
• Créer des certificats
26/02/2016
198
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Apache mod_sslLe service Web
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
199
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction à Apache mod_ssl
• Configuration d’un hôte virtuel SSL
26/02/2016
200
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction a Apache mod_ssl• Le module SSL fournit le support SSL v3 et TLS v1 au
serveur Apache
• Comme beaucoup d’outils de chiffrement, il s’appuie sur OpenSSL
• Le module ssl permet des connexions https sur le port 443
• Le module SSL pour Apache fournit un virtualHost SSL
26/02/2016
201
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configuration d’un hôte virtuel SSL
• Installation du module ssl pour apache
#yum install mod_ssl
• Configuration du virtualHost SSL
#vi /etc/httpd/conf.d/ssl.conf
<VirtualHost *:443> ServerName wwws.alphorm.lanDocumentRoot /var/www/alphorm.lan.sslSSLEngine on SSLCertificateFile /etc/pki/tls/certs/www.alphorm.lan.crt SSLCertificateKeyFile / /etc/pki/tls/private/www.alphorm.lan.key</VirtualHost>
26/02/2016
202
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configuration d’un hôte virtuel SSL
• Vérifiction de la configuration
#httpd –t Syntax OK
#apachectl configtestSyntax OK
#httpd -D DUMP_VHOSTSVirtualHost configuration: *:443 is a NameVirtualHostport 443 namevhost wwws.alphorm.lan (/etc/httpd/conf.d/ssl.conf….
26/02/2016
203
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Test avec Openssl
• Vérification de la connexion SSL
#openssl s_client -connect localhost:443 -state SSL_connect:before/connect initialization SSL_connect:SSLv2/v3 write client hello A SSL_connect:SSLv3 read server hello A….….
26/02/2016
204
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction à Apache mod_ssl
• Configuration d’un hôte virtuel SSL
• Test avec Openssl
26/02/2016
205
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Gérer du contenu dynamique
Le service Web
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
206
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction
• Common Gateway Interface
• Common Gateway Interface et perl
• PHP
• SELinux et la connexion aux Base de données
26/02/2016
207
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction • Aujourd’hui les sites web ne se contentent plus de fournir
des pages statiques
• Les sites web modernes proposent des contenus dynamiques
• Un administrateur Red hat Linux doit être en mesure de fournir, de configurer des modules pour des contenus dynamiques.
• Common Gateway Interface, du PHP, du Python, …
26/02/2016
208
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Common Gateway Interface
• CGI - Commom Gateway Interface, en français Interface de passerelle commune.
• La plus vieille méthode qui permet à Apache d’exécuter des programmes.
• L’avantage de CGI est l’indépendance par rapport aux programmes.
• Plus souvent utilisé avec le langage PERL, CGI est capable d’exécuter des programmes en C, Java, VB, Shell, …
• Le langage doit respecter des contraintes d’entrées/sorties
26/02/2016
209
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Common Gateway Interface et PERL• Créons un petit, tout petit programme en Perl
#vi /var/www/cgi-bin/hello.pl#!/usr/bin/perlprint "Content-type: text/html\n\n"; print "Hello, World!";
#chmod 755 /var/www/cgi-bin/hello.pl
• Configuration d’Apache pour le CGI
#yum install –y perl perl-CGI#vi /etc/httpd/conf.d/cgi-enabled.conf<Directory "/var/www/html/cgi-enabled">
Options +ExecCGIAddHandler cgi-script .cgi .pl
</Directory>
26/02/2016
210
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
PHP• PHP Hypertext Preprocessor
• Est un langage de script créé par Rasmus Lerdorf
• Il est utilisé pour fournir des contenus Web dynamiques
• PHP est surement le langage le plus utilisé sur le Web
• Facebook utilise PHP, mais aussi Wikipédia et de très nombreux sites sur internet.
• On peut utiliser PHP avec CGI, mais on utilise plutôt les modules PHP Apache : meilleures performance, sécurité, …
26/02/2016
211
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
PHP• Installation du module php
#yum install –y php.x86_64
• Créons un petit script php
#vi /var/www/html/hello.php<html> <head><title>Exemple</title></head> <body> <?php
echo "Hello world"; ?> </body> </html>
26/02/2016
212
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
SELinux et la connexion aux Base de données
• La plupart des données des sites web dynamiques sont conservées dans des bases de données.
� Contenus des sites
� Structure des sites
� Données des utilisateurs, etc, …
• Si la base de données est installée localement, il n’y pas de configuration à mettre en place
• Lorsque la base données est distante, il faut modifier un booléen SELinux :
� httpd_can_network_connect_db
26/02/2016
213
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction
• Common Gateway Interface
• Common Gateway Interface et perl
• PHP
• SELinux et la connexion aux Base de données
26/02/2016
214
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le serveur PostfixLe service de courier
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
215
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction à Postfix
• Les différentes configurations de Postfix
• Architecture de Postfix
26/02/2016
216
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction • Postfix est un serveur de messagerie développé par Wietse
Venema et plusieurs contributeurs.
• Postfix est conçu comme une alternative au serveur Sendmail (difficulté de configuration).
• Postfix est LE serveur de messagerie par défaut de nombreux systèmes de types Unix. Linux, MacOsx, BSD, …
• Postfix est publié sous licence IBM Public License 1.0. C'est une licence libre, mais incompatible avec la GPL.
26/02/2016
217
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les differentes configurations de Postfix• Postfix peut gérer la plupart des configurations professionnelles :
� Postfix sur une machine Internet autonome – Site internet
� Postfix en client sans rôle (null-client) – Internet avec “smarthost”
� Postfix sur un réseau local – Local uniquement
� Postfix sur une passerelle/pare-feu – Système Satellite
• Possède de nombreuse fonctionnalités :
� Réécriture d’adresse, Gestion du contenu (spam)
� Multi sites (sites virtuels), gestion de backends ldap, SGBD, …
� Support d’IPV6, support de TLS (authentification, sasl, chiffrement), etc.
26/02/2016
218
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Architecture de Postfix• Composé d'une série de sous-démons :
� Qmgr : gestionnaire des files d'attente . Il contacte les agents de livraison
� SMTP transfère les courriers vers les serveurs de messagerie
� LMTP : Livre les messages aux différents services de messagerie POP, IMAP
� LOCAL : Livre les messages dans les fichiers de boites de types Unix
26/02/2016
219
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Architecture de Postfix
• Principaux fichiers de configuration
• Les fichiers les plus importants se trouvent dans le répertoire /etc/postfix :
� main.cf : fichier de configuration générale du serveur
� Virtual : réécriture des adresses
� Aliases : les alias locaux
� Access : contrôle d’accès des clients SMTP
� master.cf : Informe les démons à lancer
26/02/2016
220
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction à Postfix
• Les différentes configurations de Postfix
• Architecture de Postfix
26/02/2016
221
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configurer Postfixen Null-client
Le service de courier
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
222
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction
• Null-client Configuration
• Test de la configuration
26/02/2016
223
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction • Plusieurs configurations sont possibles avec postfix
• Null-client Configuration :
� Ne reçoit pas les messages des clients, les tranfère sur un serveur central
• Distribution de message locaux
• Serveur central de messagerie (réception, délivrance, relaisEtc..)
26/02/2016
224
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Null-client Configuration• Configuration de postfix
#vi /etc/postfix/main.cfmyhostname = mail.alphorm.lanmydomain = alphorm.lanmyorigin = $mydomaininet_interfaces = loopback-onlymydestination = relayhost = 192.168.10.1
• Vérification de la configuration
#postfix check
• Rechargement du service
#systemctl restart postfix
26/02/2016
225
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Null-client Configuration• Envoi d’un message électronique
#echo "This is a test." | mail -s "Test“ [email protected]
• Visualiser, recharger et supprimer des messages dans la file d’attente (queue)
#mailq-Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------C2EE98CEE3* 443 Fri Jan 15 12:25:00 [email protected]
#postsuper -r 733F88CEE5postsuper: 733F88CEE5: requeuedpostsuper: Requeued: 1 message
#postsuper -d 733F88CEE5postsuper: 733F88CEE5 : removedpostsuper: Deleted: 1 message
26/02/2016
226
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction
• Null-client Configuration
• Test de la configuration
26/02/2016
227
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction aux bases de données
Base de données
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
228
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction
• SGDB - SGBDR
• Structure des SGBDR
• SQL - Structured Query Language
• Le marché des SGBDR
26/02/2016
229
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction • Une base de données est un ensemble de données
organisées et structurées (support papier, support électronique)
• Le but est de facilement consulter et modifier ces données
• Il faut un système pour gérer ces données
• Il faut un langage pour effectuer des opérations(consultation, suppression, modification, etc.)
• On appelle cela un SGDB – système de Gestion de Base de Données
26/02/2016
230
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
SGDB - SGBDR• Un SGDB est un logiciel ou suite de logiciels destiné à
manipuler des informations dans une base de données
� Sélectionner, trier, afficher, ajouter, supprimer, mettre à jour
• Les SGBD sont basés sur un modèle Client - Serveur
• Un SGBDR est un système de gestion de base de donnéesRELATIONNELLE
26/02/2016
231
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Structure des SGBDR • Dans un SGBDR, les données sont stockées sous format de
tablesIdenifiantformateur
Prénom Nom Email Pays
1 Ludovic Quenec hdu [email protected] Belgique
2 André Deloin [email protected] France
3 Hamid Harrabazan Hharrabazzan@alphor..
Maroc
Idenifiantformation
Formation Type
13 RHCE OpenSource
26 Vsphere 6 Virtualisation
12 CCNA Réseaux
Éditeur
Red Hat
Vmware
Cisco
Formateur
1
3
2
Table FORMATEUR
Table FORMATION
26/02/2016
232
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
SQL - Structured Query Language• Structured Query Language est un langage de requête structuré
1. SQL langage de manipulation de données des SGBDR
� Rechercher, d'ajouter, de modifier ou de supprimer des données dans les bases de données relationnelles
2. SQL langage de définition des données
� Créer, modifier, supprimer l’organisation des données (tables)
3. SQL langage de transaction
� Contrôle les données, autorise ou interdit l’accès aux données (utilisateurs)
26/02/2016
233
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
SQL - Structured Query Language• Rechercher un formateur ludovic
SELECT nomFROM `FORMATEUR` WHERE nom = ludovic
• Rechercher tous les formateurs
SELECT nomFROM `FORMATEUR`
• Insérer un nouveau formateur
INSERT INTO `FORMATEUR` VALUES (`Vicky`, `Super`, `[email protected]`, `Italie`)
• Supprimer les formateurs
DELETE * FROM `FORMATEUR`
26/02/2016
234
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le marché des SGBDR
# SGBDR
1. Oracle
2. MySQL
3. Microsoft SQL Server
4. PostgreSQL
5. DB2
6Microsoft Access
… MariaDB
26/02/2016
235
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Formations complètes sur les BDD
26/02/2016
236
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction
• SGDB - SGBDR
• Structure des SGBDR
• SQL - Structured Query Language
• Le marché des SGBDR
26/02/2016
237
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
MariaDBBase de données
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
238
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction à MariaDB
• Fonctionnalités de MariaDB
26/02/2016
239
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction MariaDB• MariaDB est un “fork” de MySQL
• MySQL est racheté par Sun Microsystem et ensuite Sun estracheté par Oracle Corporation
• Michael Widenius, fondateur de MySQL, lance le projet MariaDB dans le but de le conserver sous licence Libre via la fondation Open Database Alliance
• Depuis 2013 Wikipédia, Google, les distributions Linux Red Hat, Fedora, Ubuntu ont tous migré vers MariaDB
• MariaDB reste compatible avec MySQL
26/02/2016
240
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction à MariaDB• MariaDB est un système de gestion de bases de données
relationnelles
• MariaDB est sous licence GPL
• MariaDB est maintenu par la fondation MariaDB et la société Monty Program AB
• La fondation assure que le produit reste libre
26/02/2016
241
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction MariaDB
• Les numéros de versions suivent ceux de MySQL
Version dateLatestversion
date Status
5.1 2009-10-29[12] 5.1.67 2013-01-30[13] Stable (GA)
5.2 2010-04-10[14] 5.2.14 2013-01-30[15] Stable (GA)
5.3 2011-07-26[16] 5.3.12 2013-01-30[17] Stable (GA)
5.5 2012-02-25[18] 5.5.47 2015-12-10[19] Stable (GA)
10.0 2012-11-12[20] 10.0.23 2015-12-18[21] Stable (GA)
10.1 2014-06-30[22] 10.1.10 2015-12-24[23] Stable (GA)
26/02/2016
242
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Fonctionnalités de MariaDB• Améliorations de performances
� Réplication parallèle, Réplication plus rapide et plus sure
� Le moteur de stockage Aria permet d'effectuer plus rapidement des requêtes
• Tests plus rigoureux
• Moins d'alertes et de bugs
• Véritablement Open Source
• Disponible pour MS Windows, GNU/Linux, Unix, BSD.
26/02/2016
243
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction à MariaDB
• Fonctionnalités de MariaDB
26/02/2016
244
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Installation Maria DB
Base de données
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
245
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Installation du MariaDB
• Sécuriser MariaDB
• Configuration du réseau
26/02/2016
246
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Installation du MariaDB• MariaDB est un système client/Serveur
• Il faudra donc installer le serveur et les clients
• ariadb-server : Le serveur MariaDB
• MySQL-python : Interface pour le langage Python
• Mysql-connector-odbc : Les “drivers” ODBC
• Perl-DBD-MySQL : Interface pour le langage Perl
26/02/2016
247
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Installation MariaDB• Installation de MariaDB client et serveur
#yum groupinstall mariadb mariadb-client -y
• Activer et démarrer le service Mariadb
#systemctl enable mariadb.service#systemctl start mariadb.service
#systemctl status mariadb.service
26/02/2016
248
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
• Le programme Mysql_secure_installation permet d’améliorer la sécurité de l’installation :
� Suppression du compte root
� Suppression du compte Anonymous
� Suppresion de la base de données Test
Sécuriser MariaDB
• Sécurisation de MariaDB serveur
#mysql_secure_installation….#firewall-cmd --permanent add-service=mysql#firewall-cmd –reload#ss -tulpn I grep mysql
26/02/2016
249
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Configuration réseau• MariaDB peut être configuré pour être accessible à distance
• Par défaut MariaDB est limité à des connexions locales
• Une petite structure peut avoir les services et la base de données sur le même serveur.
• Ce n’est généralement pas le cas.
• Le fichier /etc/my.cnf permet de modifier le comportement par défaut
26/02/2016
250
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Installation du MariaDB
• Sécuriser MariaDB
• Configuration du réseau
26/02/2016
251
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Gérer une base données MariaDB
Base de données
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
252
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Travailler avec des bases de données
� Connexion
� Créer, afficher, utiliser des bases
� Créer, afficher, utiliser des tables
� Insérer, mettre à jour, supprimer des données
26/02/2016
253
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Travailler avec des bases de données• Il existe plusieurs outils qui permettent de manipuler MariaDB
� En mode cli : le shell mysql
� En mode graphique
26/02/2016
254
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Connexion
• Se connecter avec mysql cli
#mysql –user root –host mydbserverWelcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 7Server version: 5.5.44-MariaDB MariaDB Server
Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
26/02/2016
255
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Créer, afficher, utiliser des bases
• Afficher les bases de données
MariaDB [(none)]>show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || test |+--------------------+4 rows in set (0.00 sec)
26/02/2016
256
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Créer, afficher, utiliser des bases
• Créer des bases de données
MariaDB [(none)]> CREATE DATABASE inventaire;Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> show databases;+--------------------+| Database |+--------------------+| information_schema || inventaire || mysql || performance_schema || test |+--------------------+5 rows in set (0.00 sec)
26/02/2016
257
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Créer, afficher, utiliser des bases
• Utiliser la base de données inventaire
MariaDB [(none)]> USE inventaireDatabase changedMariaDB [inventaire]>
• Supprimer la base de données inventaire
MariaDB [inventaire]>DROP DATABASE inventaire;Query OK, 0 rows affected (0.01 sec)MariaDB [(none)]> show databases;
26/02/2016
258
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Créer, afficher, utiliser des tables
• Créer une table server
MariaDB [inventaire]> CREATE TABLE IF NOT EXISTS server (id int(5) NOT NULL AUTO_INCREMENT, type varchar(50) DEFAULT NULL, Server_name varchar(250) DEFAULT NULL, Date_achat DATE DEFAULT NULL, Systeme varchar(20) DEFAULT NULL, actif bool DEFAULT NULL, fqdn varchar(250) DEFAULT NULL, PRIMARY KEY(id) );
26/02/2016
259
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Créer, afficher, utiliser des tables
• Visualiser la table
MariaDB [inventaire]> SHOW TABLES ;
• Visualiser le contenu de la table
MariaDB [inventaire]> DESCRIBE server ;+-------------+--------------+------+-----+---------+----------------+| Field | Type | Null | Key | Default | Extra |+-------------+--------------+------+-----+---------+----------------+| id | int(5) | NO | PRI | NULL | auto_increment || type | varchar(50) | YES | | NULL | || Server_name | varchar(250) | YES | | NULL | || Date_achat | date | YES | | NULL | || Systeme | varchar(20) | YES | | NULL | || actif | tinyint(1) | YES | | NULL | || fqdn | varchar(250) | YES | | NULL | |+-------------+--------------+------+-----+---------+----------------+7 rows in set (0.00 sec)
26/02/2016
260
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Insérer, mettre à jour, supprimer des données
• Insérer de nouvelles données
MariaDB [inventaire]> INSERT INTO server (type, server_name, Date_achat, Systeme, actif, fqdn) VALUES ('xeon','mariadb',Now(),'RedHat',1,'mydbserver.alphorm.lan');
• Afficher les nouvelles données
MariaDB [inventaire]> SELECT * FROM server;+----+------+-------------+------------+----------+-------+------------------------+| id | type | Server_name | Date_achat | Systeme | actif | fqdn |+----+------+-------------+------------+----------+-------+------------------------+| 1 | xeon | mariadb | 2016-01-18 | RedHat | 1 | mydbserver.alphorm.lan |+----+------+-------------+------------+----------+-------+------------------------+1 row in set (0.00 sec)
26/02/2016
261
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Insérer, mettre à jour, supprimer des données
• Mettre à jour des entrées dans la table server
MariaDB [inventaire]> UPDATE server SET Systemte='RedHat' WHERE id=4;MariaDB [inventaire]> SELECT * FROM server;| 4 | xeon | dns_server | 2016-01-18 | MS WINDOWS | 1 | dns.alphorm.lan |+----+------+--------------+------------+------------+-------+------------------+
• Supprimer des entrées dans la table server
MariaDB [inventaire]> DELETE From server WHERE fqdn='dns.alphorm.lan' ;Query OK, 1 row affected (0.00 sec)
26/02/2016
262
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Travailler avec des bases de données
� Connexion
� Créer, afficher, utiliser des bases
� Créer, afficher, utiliser des tables
� Insérer, mettre à jour, supprimer des données
26/02/2016
263
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Administrer les utilisateurs et les permissions
Base de données
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
264
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Créer des utilisateurs
• Afficher les utilisateurs
• Les permissions des utilisateurs
26/02/2016
265
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Créer des utililsateurs
• Ajouter, supprimer des utilisateurs
#mysql –user root –host mydbserverMariaDB [(none)]>CREATE USER ludo@localhost IDENTIFIED BY ‘password‘;
MariaDB [(none)]> USE mysql; MariaDB [mysql]> SHOW TABLES;+---------------------------+| Tables_in_mysql |+---------------------------+| user |+---------------------------+
MariaDB [mysql]> DROP USER 'ludo@localhost‘ ;
26/02/2016
266
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Afficher les utilisateurs
• Afficher les utilisateurs
MariaDB [mysql]> SELECT host,user,password FROM user ;….| netservice.alphorm.lan | root | % | ludo@localhost | 802E6B1616DCEC08935FC0036EE04229EA+--------------------+----------------+-------------------------------------------+
• Afficher l’utilisateur ludo
MariaDB [mysql]> SELECT host,user,password FROM user WHERE user='ludo';+-----------+------+-------------------------------------------+| host | user | password +-----------+------+-------------------------------------------+| localhost | ludo | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E1+-----------+------+-------------------------------------------+
26/02/2016
267
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Vérifier les permissions de l’utilisateur
• Se connecter avec le nouvel utilisateur
#mysql –user ludo –p Password:
• Créer une base de données avec l’utilisateur ludo
MariaDB [(none)]> CREATE DATABASE inventory ;ERROR 1044 (42000): Access denied for user 'ludo'@'localhost' to database 'inventory‘
26/02/2016
268
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les permissions des utilisateurs
• Autoriser le user ludo a Afficher, mettre a jour et insérer de nouvelles entrées dans la table server de la base inventaire
MariaDB [inventaire]> GRANT SELECT,UPDATE,INSERT ON inventaire.server TO ludo@localhost ;
• Modifier des entrées avec le user ludo
MariaDB [inventaire]> UPDATE server SET Systemte='RedHat' WHERE id=4 ;Query OK, 0 rows affected (0.01 sec)
• Supprimer des entrées avec le user ludo
MariaDB [inventaire]> DELETE From server WHERE id=1;;ERROR 1142 (42000): DELETE command denied to user 'ludo'@'localhost' for table 'server’
26/02/2016
269
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les permissions des utilisateurs
• Ajout de la suppression pour l’utilisateur ludo sur la DB inventaire
MariaDB [inventaire]> GRANT DELETE ON inventaire.server TO ludo@localhost ;
• Affichage des permissions pour l’utilisateur ludo sur la DB inventaire
MariaDB [inventaire]> SHOW GRANTS FOR ludo@localhost ;+---------------------------------------------------------------------------------------| Grants for ludo@localhost+---------------------------------------------------------------------------------------| | GRANT SELECT, INSERT, UPDATE, DELETE ON `inventaire`.`server` TO 'ludo'@'localhost' +---------------------------------------------------------------------------------------
26/02/2016
270
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les permissions des utilisateurs
• Supprimer des permissions pour l’utilisateur ludo sur la DB inventaire
MariaDB [inventaire]> REVOKE SELECT, DELETE ON inventaire.server FROM ludo@localhost ;Query OK, 0 rows affected (0.00 sec)
MariaDB [inventaire]> SHOW GRANTS FOR ludo@localhost ;+---------------------------------------------------------------------------------------| Grants for ludo@localhost+---------------------------------------------------------------------------------------GRANT INSERT, UPDATE ON `inventaire`.`server` TO 'ludo'@'localhost' +---------------------------------------------------------------------------------------
• Appliquer les modifications
MariaDB [inventaire]> FLUSH PRIVILEGES ;
26/02/2016
271
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Créer des utililsateurs
• Afficher les utilisateurs
• Les permissions des utilisateurs
26/02/2016
272
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Sauvegarder et restaurer des bases données
Base de données
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
273
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction
• Sauvegarder des bases de données
• Restaurer des bases de données
26/02/2016
274
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction
• Les bases de données contiennent généralement des informations critiques pour l’entreprise :
� Données clients, Données utilisateurs
� Configuration des machines et programmes
� Sites web
• Deux méthodes de sauvegarde :
� Logique : Requêtes SQL, portable (Postgres, ..), à chaud, pas de log, pas de fichier de configuration, plus lente
� Physique : Log et fichier de configuration, à froid, plus rapide
26/02/2016
275
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Sauvegarder des bases de données
• Sauvegarde logique de toutes les bases de données
#mysqldump –-user root –password –all-databases > /backup/DB.sql
• Sauvegarde logique de la base de données INVENTAIRE
#mysqldump –-user root –password inventaire > /backup/invetaire-$(date +%F).sql
26/02/2016
276
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Restaurer des bases de données
• Restauration de la base de données INVENTAIRE
#mysql –-user rootMariaDB [(none)]> CREATE DATABASE inventaire;MariaDB [(none)]> show databases ;…| inventaire |….
MariaDB [(none)]> exit
#mysql –-user root inventaire </backup/invetaire-xxx.sql
#mysql –-user rootMariaDB [(none)]> use inventaireMariaDB [inventaire]> SELECT * FROM server ;
26/02/2016
277
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction
• Sauvegarder des bases de données
• Restaurer des bases de données
26/02/2016
278
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les technologies SAN & NAS
Stockage réseau
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
279
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan• Comprendre le NAS
• Comprendre le SAN
• Le Fibre channel
• Le FCoE – Fibre Channel over Ethernet
• Le ISCSI - Internet Small Computer System Interface
26/02/2016
280
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Comprendre le NAS• Network Attached Storage
• Propose des services de mise en réseau de fichiers sur TCP/IP
• Les clients accèdent aux données via des systèmes de fichiers réseau
• Les NAS utilisent les protocoles :
� Server Message Block - SMB fournit par Microsoft
� Network File System - NFS pour le monde Unix/Linux
26/02/2016
281
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Comprendre le NAS• Avantages ☺
� Administration simple de la baie de stockage
� Un prix faible pour de grandes capacités
� Un accès par plusieurs postes clients aux mêmes données
� Administration simple des postes clients
� Utilisation des protocoles standardisés depuis longtemps
• Inconvénients �
� Différents types clients (Microsoft, linux, Apple)
� Pas les meilleures performances
26/02/2016
282
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Comprendre la SAN• L’accès au stockage de type NAS est de type fichier.
• Les données sont des volumes partagés sur le réseau
• Le SAN – Storage Aera Network – réseau stockage
• L’accès au données est de type “block”
• Les volumes de stockage apparaissent comme des disques durs
• Plusieurs technologies de stockage réseau :
� Fibre Channel
� Fibre Channel over ethernet
� iSCSI
26/02/2016
283
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Comprendre le SAN• Avantages ☺
� La Qualité de service : en fonction du média (la fibre optique assure la transmission des données)
� La disponibilité : Le SAN assure la redondance du stockage, la haute disponibilité des données
� L'hétérogénéité : Le SAN n’est pas lié à un environnement particulier : les serveurs Unix, Windows, Linux, Apple peuvent tous rejoindrent un SAN.
� Performances : La performance de l'accès aux disques n’est pas à comparer avec un NAS.
• Inconvénients �
� Le coût : en fonction du type de SAN (Fibre Channel, FCoE, iSCSI), le coût devient un élément de rejet d’une architecture SAN (réseau dédié aux stockages).
� L’administration : est bien plus complexe qu’un NAS. Il faut souvent un administrateur dédié au stockage.
26/02/2016
284
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le Fibre channel• Il existe plusieurs types de SAN :
Fibre Channel Connexion très haut débit 16Go/s actuellement.32 Gb/s, 128Gb bientôt.
Protocole série, peut donc fonctionner sur de la paire torsadée, du câble coaxial ou de la fibre optique.
Nécessite un réseau (commutateur, routeur, carte) dédié à FC, d’où un coût important.
26/02/2016
285
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le FCoE – Fibre Channel over Ethernet• Il existe plusieurs types de SAN :
Fibre Channel Over EthernetSimplification de l'architecture, et la réduction des coûts.
Encapsule les trames Fibre Channeldans des trames jumbo Ethernet.
26/02/2016
286
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le ISCSI • Il existe plusieurs types de SAN :
iSCSIProtocole de stockage en réseau basé sur le protocole IP.
Transporte les commandes SCSI sur les réseaux IP.
Se composent de cible (LUN des disques) et d’initiateur (logiciels clients ISCSI)
26/02/2016
287
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert• Comprendre le NAS
• Comprendre le SAN
• Le Fibre channel
• Le FCoE – Fibre Channel over Ethernet
• Le ISCSI - Internet Small Computer System Interface
26/02/2016
288
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le protocole iSCSI
Stockage réseau
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
289
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan• Le protocole ISCSI – Internet Small Computer Interface
• Les Logicals Units Numbers - LUN
• Notion de cibles – Targets
• Notion d’initiateur – Initiator
26/02/2016
290
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le protocole ISCSI – Internet Small Computer Interface
• Dans les années 1990 IBM lance des recherches pour transporter des commandes SCSI par le réseau, sur Ethernet, IP et TCP/IP.
• Au début des années 2000, IBM et Cisco s’allient pour proposer une première version d’ISCSI sur TCP. Transport de commandes SCSI sur TCP/IP.
• IETF publie des RFC pour ISCSI
� RFC 3720 - Internet Small Computer Systems Interface (iSCSI), avril 2004.
� RFC 3721 - Internet Small Computer Systems Interface (iSCSI) Naming and Discovery, avril 2004.
� RFC 3722 - String Profile for Internet Small Computer Systems Interface (iSCSI) Names, avril 2004.
26/02/2016
291
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les Logicals Units Numbers - LUN
Raid
/dev/sda
LVM
Une unité logique ou LUN est un domaine de stockage
LUN 0
LUN 1
LUN 2
Les LUNs identifient des unités de stockage SAN
26/02/2016
292
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Notion de cibles – TargetsOn mappe les LUN sur des “targets” iscsi
Iqn.2015-04-02.com.alphorm.home• ACL• Identification
Iqn.2015-04-02.com.alphorm.rhel7• ACL• Identification
Iqn.2015-04-02.com.alphorm.var• ACL• Identification
Raid
/dev/sda
LUN 0
LUN 1
LUN 2LVM
26/02/2016
293
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Notion de d’initiateur – initiatorPortal : 192.168.1.10
Raid
/dev/sda
LVM
LUN 0
LUN 1
LUN 2
Iqn.2015-04-02.com.alphorm.var
Iqn.2015-04-02.com.alphorm.home
Iqn.2015-04-02.com.alphorm.rhel7
initiateur ISCSI
Découverte du portailConnexion aux cibles
26/02/2016
294
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert• Le protocole ISCSI – Internet Small Computer Interface
• Les Logicals Units Numbers - LUN
• Notion de cibles – Targets
• Notion d’initiateur – Initiator
26/02/2016
295
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Créer des Target iSCSIavec targetcli
Stockage réseau
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
296
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
26/02/2016
297
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
26/02/2016
298
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
26/02/2016
299
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
• Deux types de backstore :
� Fileio utilise la RAM pour le cache, beaucoup de RAM pour de bonnes performances.
� Blockio, utlise le cache “matériel”, contrôleur et disques. Bonne performances sur les gros fichiers, très peu de latence.
Les “Backstore” fileio, blockio
• Lancer targetcli en mode shell
#targetcli
• Création des backstore
#/> backstores/fileio/ create home /home_dir/home_user.img 1T#/> backstores/block/ create VM /dev/vgvm/lv_redhat7#/> backstores/block/ create DB /dev/vgvm/lv_mariadb
26/02/2016
300
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
26/02/2016
301
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
26/02/2016
302
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
26/02/2016
303
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert• Introduction
• Installation du service
• Les “Backstore” fileio, blockio
• Iscsi Qualified Name
� Création de l’iqn
� Création des Luns
� Mise en place des acls
� L’authentification CHAP
• Sauvegarde de la configuration
• Firewalld
26/02/2016
304
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Iscsiadmaccéder aux Targets
Stockage réseau
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
305
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Installation, configuration service iscsi
• L’initiateur iscsiadm
• Connecter les cibles
• Utiliser le nouveau disque “local”
26/02/2016
306
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Installation, configuration service iscsi• Après l’installation du service iscsi
• Le service iscsi se configure via les fichiers /etc/iscsi/initiatorname.iscsiet /etc/iscsi/iscsid.conf.
• Installation de l’initiateur
#yum install iscsi-initiator-utils
• Configuration
#sed ‘s/InitiatorName=/InitiatorName=iqn…..:client/’ /etc/iscsi/initatorname.iscsi#vi /etc/iscsi/iscsid.confnode.session.auth.authmethod = CHAPnode.session.auth.username = ludonode.session.auth.password = mon_password
26/02/2016
307
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
L’initiateur iscsiadm• Iscsiadm est l’outil d’open-iscsi qui permet
� La découverte et le logging des cibles iscsi
� Administration des cibles
• Découverte et login sur le portal iscsi
#iscsiadm -m discovery -t sendtargets –p portal#iscsiadm --mode node --targetname iqn.2015-08.com.alphorm:hone --portal 192.168.1.10 –login
• Afficher les informations de session de la cible
#iscsiadm --m session –P 3
26/02/2016
308
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Utiliser le nouveau disque “local”
• Identifier le disque iscsi
#lsblk --scsi
• Créer un file system sur le nouveau disque
#mkfs.xfs /dev/sdc
• Identifier l’UUID du disque et le monter au démarrage
#blkid | grep ‘/dev/sdc’#echo “UUID=….. /opt/machines_virtuelles xfs _netdev 0 0 “ >>/etc/fstab
26/02/2016
309
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Installation, configuration service iscsi
• L’initiateur iscsiadm
• Utiliser le nouveau disque “local”
26/02/2016
310
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Écrire des scripts simples
Écrire des scripts simples
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
311
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction aux scripts Shell
• Qu’est-ce qu’un script Shell?
• L’interpréteur de commande
• Exécuter un script
• L’indentation
• Les commentaires
26/02/2016
312
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction aux scripts Shell
• Linux offre de nombreuses commandes pour administrer au jour le jour son système Redhat.
• Cependant il est parfois nécessaire d’enchainer plusieurs commandes pour obtenir un résultat plus complexe
• Il est parfois également nécessaire de combiner plusieurs commandes afin d’automatiser des tâches.
• Il est parfois également nécessaire d’effectuer des opérations avant et après l’exécution de commandes (répertoire existant, informer l’utilisateur)
• Il est parfois également nécessaire d’exécuter plusieurs fois la même commande, d’attendre un résultant afin d’exécuter une commande
26/02/2016
313
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction aux scripts Shell• Pour se faire on écrit des scripts shell.
• Il existe d’autres langages pour traiter des opérations :
� Python, Perl, Ruby, …
#!/bin/sh
echo -n "Entrez un nom de fichier: "
read file if [ -e "$file" ];
then echo "Le fichier existe!" else echo "Le fichier n'existe pas"
fi exit 0
26/02/2016
314
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Qu’est-ce qu’un script Shell• Un script Shell est un simple fichier texte
• Il suffit donc d’un éditeur de texte pour écrire des scripts : Vim, emacs. Gedit, etc..
• Un script est donc un ensemble d’instructions exécutées les unes à la suite des autres
#!/bin/sh
if [ -e "$file" ]; then echo "Le fichier existe!" else echo "Le fichier n'existe pas"
fi exit 0
26/02/2016
315
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
L’interpréteur de commande• Chaque script démarre avec le lancement d’un interpréteur de
commande, le shebang, représenté par #! Suivi par un Shell
• Qui indique que le fichier n’est pas un fichier binaire
• Un script est donc un ensemble d’instructions, ce script doit être exécutable :
#!/bin/sh#!/bin/bash#!/bin/perl
#chmod 755 mon_script
26/02/2016
316
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Executer un script
#cd /home/ludo/scripts/[/home/ludo/scripts/ ]#./mon_script
[/home/ludo/scripts/ ]#. mon_script
• La variable PATH définit les répertoires où se trouvent les commandes exécutables sans devoir spécifier le répertoire parent de la commande
#echo $PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
#echo $PATH | tr : \\n
26/02/2016
317
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
L’indentation• On peut écrire un script :
#!/bin/sh; echo -n "Entrez un nom de fichier: " ; read file; if [ -e "$file" ]; then echo "Le fichier existe!" ; else echo "Le fichier n'existe pas" ; fi ;exit 0
#!/bin/shecho -n "Entrez un nom de fichier: " read fileif [ -e "$file" ]then echo "Le fichier existe!" else echo "Le fichier n'existe pas" fi exit 0
26/02/2016
318
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
L’indentation• On peut écrire un script avec l’indentation :
#!/bin/sh
echo -n "Entrez un nom de fichier: "
read file
if [ -e "$file" ]then echo "Le fichier existe!" else echo "Le fichier n'existe pas"
fi
exit 0
26/02/2016
319
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les commentaires• Les commentaires permettent d’informer l’utilisateur et les
développeurs
#Ceci est un commentaire
#!/bin/sh
echo -n "Entrez un nom de fichier: " # Demande a l’utilisateur un nom de fichier
#Crée une variable file read file if [ -e "$file" ]
then echo "Le fichier existe!" else echo "Le fichier n'existe pas"
fi
26/02/2016
320
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Formation bash sur Alphorm• http://www.alphorm.com/tutoriel/formation-en-ligne-scripting-bash
26/02/2016
321
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction aux scripts Shell
• Qu’est-ce qu’un script Shell?
• L’interpréteur de commande
• Executer un script
• L’indentation
• Les commentaires
26/02/2016
322
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les sorties
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Écrire des scripts simples
26/02/2016
323
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• La commande echo
• La commande read
26/02/2016
324
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La commande echo• La commande echo permet d’afficher une chaîne de caractères sur la
sortie standard :
• Affiche sur la sortie standard
# echo ‘$HOME’ $HOME
# echo "Hello world"Hello world
# echo "\$HOME"$HOME
# echo "'$HOME'"'/root'
26/02/2016
325
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La commande echo
• Affiche sur la sortie standard
#echo -e "ligne 0\nligne 1\nligne 2"ligne 0ligne 1ligne 2
#echo -e « \nligne«
ligne#echo -e "\t une tabulation avec echo"
une tabulation avec echo
#echo -n bonjourbonjourroot@rhel7:#
26/02/2016
326
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La commande read• La commande read lit l’entrée standard et affecte la valeur dans la
variable :
# read var1le contenu# echo $var1le contenu
[root@netservice ~]# echo $var1je[root@netservice ~]# echo $var2suis[root@netservice ~]# echo $var3pari[root@netservice ~]# echo $var4a la plage il fait beau
26/02/2016
327
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La commande read• La commande read lit l’entrée standard et affecte la valeur dans la
variable :
[root@netservice ~]# read -p "saisir une var : " var5saisir une var : test var[root@netservice ~]# echo $var5test var
26/02/2016
328
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• La commande echo
• La commande read
26/02/2016
329
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les variables
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Écrire des scripts simples
26/02/2016
330
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Qu’est-ce qu’une variable?
• Déclarer et supprimer des variables
• Substitution de commande
26/02/2016
331
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Qu’est-ce qu’une variable?• Une variable permet de stocker des données temporairement en mémoire
• Comme son nom l’indique, il est facile de modifier l’information stockée
• Les variables en Shell ne sont pas typées
• En Shell, on affecte une variable avec le signe = : var=“contenu”
• En Shell, on utilise une variable avec un $ : echo $var
• Les variables ne sont “visibles” que dans le Shell courant
• Par convention les variables en majuscule sont des variables d’environnement, utilisables dans tous les scripts:
� $USER, $HOME, $PWD, $DISPLAY, $PATH
26/02/2016
332
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Déclarer et supprimer des variables
• Déclarer une variable
# var=« contenu"# echo $varcontenu
var="contenu_modifier"# echo $varcontenu_modifier
COMPTEUR=50fichier=/etc/fichierrep="/etc/"
26/02/2016
333
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Déclarer et supprimer des variables
• Portée d’une variable
# rep="/etc/"# echo $rep/etc/# bash# echo $rep
• Exporte d’une variable
# export rep# bash# echo $rep/etc/#
26/02/2016
334
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Déclarer et supprimer des variables
• Supprimer des variables
#unset rep
• Variable en lecture seule
#readonly rep# echo $rep/etc/# rep="/dir/"bash: rep : variable en lecture seule
26/02/2016
335
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Substitution de commande
# var=$(date +%F)#echo $var2016-01-20
26/02/2016
336
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Qu’est-ce qu’une variable?
• Déclarer et supprimer des variables
• Substitution de variables
• Substitution de commande
26/02/2016
337
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les variables spéciales
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Écrire des scripts simples
26/02/2016
338
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Les variables positionnelles
• Les variables d’états
26/02/2016
339
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les variables positionnelles• Lors de l’exécution d’un script, des variables ou paramètres sont
initialisés
• Ces variables permettent de récupérer des informations sur les arguments et les arguments passés en paramètres
$0 Le nom de la commande (i.e. : du script)
$1, $2, etc.Le premier, deuxième, etc, argument passés au script.
$* et $@ La liste de tous les arguments passés au script.
$# Le nombre d'arguments passés au script.
26/02/2016
340
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les variables positionnelles• Affichage des paramètres
#vi parametres.shecho "Le paramètre #1 est $1"echo "Le paramètre #2 est $2"echo "Le paramètre #3 est $3" echo "Le paramètre #4 est $4" echo "Le paramètre #5 est $5" echo "Le paramètre #6 est $6" echo "Le paramètre #7 est $7" echo "Le paramètre #8 est $8" echo "Le paramètre #9 est $9" echo "Le paramètre #10 est ${10}" echo "Le paramètre #11 est ${11}" echo "Le paramètre #12 est ${12}" echo "La liste des paramètres avec \$@ est $@" echo "La liste des paramètres avec \$* est $*" echo "Le nombres de paramètres est $#"
26/02/2016
341
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les variables positionnelles• Test des paramètres
# ./parametres 12 fg ewr hg 324 87 21 sd sfvghg werwer fdgd 3365Le paramètre #1 est 12Le paramètre #2 est fgLe paramètre #3 est ewrLe paramètre #4 est hgLe paramètre #5 est 324Le paramètre #6 est 87Le paramètre #7 est 21Le paramètre #8 est sdLe paramètre #9 est sfvghgLe paramètre #10 est werwerLe paramètre #11 est fdgdLe paramètre #12 est 3365La liste des parametres avec $@ est 12 fg ewr hg 324 87 21 sd sfvghg werwer fdgd 3365La liste des parametres avec $* est 12 fg ewr hg 324 87 21 sd sfvghg werwer fdgd 3365Le nombres de parametres est 12
26/02/2016
342
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les variables d’états
$?Le code de retour d’une commande. Permetde diagnostiquer la réussite (0) ou l’échec d’une commande Unix (>0). CF commande exit
$$ Représente le PID su shell en cours d’exécution
$! Le PID du dernier processus en arrière plan
26/02/2016
343
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Les variables positionnelles
• Les variables d’états
26/02/2016
344
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les codes de retour, exit
Tests, Boucles et structures de contrôle
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
345
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Les code de retour
• Commande exit
26/02/2016
346
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les code de retour• Toutes les commandes Linux retournent un code d'erreur compris entre
0 et 255.
• La valeur 0 représente la valeur vrai (succès de la commande).
• Les valeurs supérieur à 0 représentent la valeur faux (échec de la commande).
• Le code erreur de la dernière commande utilisée est contenu dans la variable $?
Code 1 Erreur de type général, absence de fichier
Code 126 Problème de permissions
Code 127 commande introuvable
26/02/2016
347
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Commande exit• La commande exit permet de sortir d’un script
• La commande exit permet d’envoyer une valeur de sortie, le code de retour
• La commande exit rend disponible le code de retour pour le processus parent du script
#!/bin/bash
echo bonjour echo $? # Code de sortie 0 renvoyé car la commande s'est correctement exécutée.
echoexit 200 # Retournera 200 au shell. # Pour vérifier echo $?
26/02/2016
348
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Les code de retour
• Commande exit
26/02/2016
349
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le test
Tests, Boucles et structures de contrôle
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
350
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction de la commande test
• Test sur les fichiers et répertoires
• Test sur les chaînes de caractères
• Test sur les nombres
26/02/2016
351
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction de la commande test• La commande test permet de tester des conditions
• Tests sur les fichiers et répertoires
� Type (rep, bloc, liens, ..), permissions, propriétaire, date (plus ancien, récent)
• Tests sur les chaînes de caractères
� Chaine vide, égales, différentes,
• Tests sur les nombres
� Plus grand que, égale, plus petit que, arithmétique (=, +, -, …)
• La commande test dispose également d’opérateurs
� La négation, le ET, le OU
26/02/2016
352
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Test sur les fichiers et répertoiresExpression Code de retour-b FILE Vrai si le fichier existe et est du type spécial bloc-c FILE Vrai si le fichier existe et est du type spécial caractère-d FILE Vrai si le fichier existe et est du type répertoire-e FILE Vrai si le fichier existe-f FILE Vrai si le fichier existe et est du type ordinaire
-G FILE Vrai si le fichier existe et si l'utilisateur appartient au groupe propriétaire du fichier
-h FILE Vrai si le fichier existe et est du type lien symbolique-L FILE Vrai si le fichier existe et est du type lien symbolique (idem -h)
-O FILE Vrai si le fichier existe et si l'utilisateur est le propriétaire du fichier
-r FILE Vrai si le fichier existe et est accessible en lecture-s FILE Vrai si le fichier existe et n'est pas vide-S FILE Vrai si le fichier existe et est du type socket-w FILE Vrai si le fichier existe et est accessible en écriture-x FILE Vrai si le fichier existe et est exécutableFILE1 -ef FILE2 Vrai si les fichiers ont le même lien physiqueFILE1 -nt FILE2 Vrai si FILE1 est plus récent que FILE2FILE1 -ot FILE2 Vrai si FILE1 est plus ancien que FILE2
26/02/2016
353
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Syntaxe• Le fichier /etc/group existe
# test -f /etc/group# echo $?0
• Le fichier /etc/groupe n’existe pas
# [ -f /etc/groupe ]# echo $?1
• Le fichier /etc/init.d existe et est un répertoire
# [ -d /etc/init.d ]# echo $?0
26/02/2016
354
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Test sur les chaines de caractères
Expression Code de retour-n STRING Vrai si la longueur de la chaine n'est pas égale à 0-z STRING Vrai si la longueur de la chaine est égale à 0STRING1 = STRING2
Vrai si les 2 chaines sont égales
STRING1 != STRING2
Vrai si les 2 chaines sont différentes
STRING Vrai si la chaine n'est pas vide (idem -n)
26/02/2016
355
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Syntaxe• Variables chaines de caractères
#str1="test1"#str2="test2"#str3="test1”
• La variable $str1 n'est pas vide
# [ -n "$str1" ]
# [ "$str1" ]
#[ -z "$str1" ]#echo $?1
26/02/2016
356
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Syntaxe• $str1 & $str3 sont identiques
# [ "$str1" = "$str3" ]# echo $?0# [ "$str1" != "$str3" ]#echo $?1
• $str1 & $str2 sont différentes
# [ "$str1" = "$str3" ]# [ "$str1" != "$str3" ]#echo $?1
26/02/2016
357
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Test sur les nombres
Expression Code de retourINT1 -eq INT2 Vrai si INT1 est égal à INT2 (=)INT1 -ge INT2 Vrai si INT1 est supérieur ou égal à INT2 (>=)INT1 -gt INT2 Vrai si INT1 est supérieur à INT2 (>)INT1 -le INT2 Vrai si INT1 est inférieur ou égal à INT2 (<=)INT1 -lt INT2 Vrai si INT1 est inférieur à INT2 (<)
26/02/2016
358
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Syntaxe• Variables chaines de caractères
# int1=1# int2=2# int3=3# int4=2
• $int2 & $int4 sont égaux
# [ $int2 -eq $int4 ] ; echo $? = 0
• $int2 est supérieur ou égal à $int4
# [ $int2 -ge $int4 ] ; echo $? = 0
• $int2 est inférieur ou égal à $int3
# [ $int2 -le $int3 ] ; echo $? = 0
• $int2 n'est pas pas égale à $int4
# [ $int2 -ne $int4 ] ; echo $? = 1
26/02/2016
359
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction de la commande test
• Test sur les fichiers et répertoires
• Test sur les chaînes de caractères
• Test sur les nombres
26/02/2016
360
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
If, then, else,..., case
Tests, Boucles et structures de contrôle
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
361
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction de la structure de contrôle if…
• Syntaxe if, then, else, elif, fi
• Introduction de la structure de contrôle case, esac
• Syntaxe case…esac
26/02/2016
362
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction de la structure de contrôle if…
• La structure de contrôle conditionnelle IF permet d’exécuter des instructions en fonction d’une condition
• Si la condition est vraie, alors le programme exécute un bloc de code
• Sinon, si la condition est fausse, alors le programme exécute un autrebloc de code
if conditionthen
...fi
if conditionthen
...else
…fi
26/02/2016
363
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Syntaxe if, then, else, elif, fi• Un petit script qui vérifie la condition la variable a est égale a b
a="b"if [ $a = "b" ]then
echo "a égale b est vrai"fi
• Un petit script qui vérifie la condition la variable a est diffèrent de b
a="b"if [ $a != "b" ]then
echo "a égale b est vrai"else
echo "a n'est pas égale a b"fi
26/02/2016
364
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Syntaxe if, then, else, elif, fi
• Un petit script qui vérifie avec elif
var="4"if [ $var -eq 5 ]then
echo "var n'est pas égale à 5“
elif [ $var="5" ]then
echo "var vaut 5"fi
# ./if.shvar vaut 5
26/02/2016
365
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction de la structure de contrôle case, esac
• On peut utiliser plusieurs elif à la suite pour vérifier la valeur d’unevariable
var="4"if [ $var -eq 5 ]then
echo "var n'est pas égale à 5"elif [ $var="6" ]then
echo "var n'est pas égale à 5"elif [ $var="2" ]then
echo "var n'est pas égale à 5"elif [ $var="5" ]then
echo "var est enfin égale à 5"fi
26/02/2016
366
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction de la structure de contrôle case, esac
• La structure case…esac permet d’exécuter un bloc de commande en fonction d’un choix
case $variable in
modele1)... bloc de code ...;;
modele2)... bloc de code ...;;
*)... bloc de code ...;;
esac
26/02/2016
367
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Syntaxe case…esacRead –p « indiquer le type de sauvegarde full, incré: » backupcase $variable inFull | full | F)
Echo « vous lancer une sauvegarde complète »;;Incre | incré )
Echo « vous lancer une sauvegarde incrémentale »;;*)
Echo « le chois est : full ou incre » ;;Esac
case $var in [0-9]*) echo "$var est un nombre.";; [a-zA-Z]*) echo "$var est un mot.";; *) echo "$var n'est ni un nombre ni un mot.";; esac
26/02/2016
368
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction de la structure de contrôle if…
• Syntaxe if, then, else, elif, fi
• Introduction de la structure de contrôle case, esac
• Syntaxe case…esac
26/02/2016
369
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les boucles
Tests, Boucles et structures de contrôle
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
370
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction
• La boucle FOR
• La boucle WHILE
• La boucle UNTIL
26/02/2016
371
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction
• Les boucles permettent d’exécuter des instructions un certain nombre de fois :
� Via une liste d’élements
• Pour chaque utilisateur dans la liste, créer un compte
� En fonction d’une condition
• Tant qu’il y a des utilisateurs, créer des comptes
26/02/2016
372
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La boucle FOR • La boucle for exécute l’instruction pour chaque valeur fournie dans une
liste
• La boucle for adopte la syntaxe suivante :
� for var in liste de chaînes do commandes done
for user in $(cat liste_user)do
useradd $userdone
for var in 1 2 3 4 5 6 7do
touch f$vardone
26/02/2016
373
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La boucle WHILE• En français while signifie « tant que », tant que la condition est vérifiée
exécuter l’instruction
• La boucle while adopte la syntaxe suivante :
� while condition do commandes done
echo "Tapez votre login :" read login
while [ "$login" != ludo ]do echo " votre nom de login n’est pas correct." Read –p "Retapez votre nom d’utilisateur : " login
done
echo " Tu as trouvé ton login !!! "
26/02/2016
374
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La boucle WHILE
• Création de 100 fichiers !
file_numbers=0stop=99while [ $file_numbers != $stop]do touch fichier " $file_numbers "file_numbers=$(( $file_numbers + 1 ))
done
26/02/2016
375
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
La boucle UNTIL• En français, until signifie « jusqu’à ce que », jusqu’à ce que la condition
soit vérifiée, exécuter l’instruction, sinon sortir de la boucle
• La boucle until adopte la syntaxe suivante :
� untilcondition do commandes doneecho "Tapez votre login :" read login
until [ "$login" = ludo ]do echo " votre nom de login n’est pas correct." Read –p "Retapez votre nom d’utilisateur : " login
done
echo " Tu as trouvé ton login !!! "
26/02/2016
376
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction
• La boucle FOR
• La boucle WHILE
• La boucle UNTIL
26/02/2016
377
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
L’environnement de travail
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
378
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction
• Les variables d’environnement
• Les alias
26/02/2016
379
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction• Le Shell bash utilise des fichiers de démarrage afin de configurer
l’environnement de travail.
• A chaque connexion ou ouverture de session ces fichiers sont exécutés
• Le fichier /etc/profile spécifie l’environnement de travail général pour tous les utilisateurs. On ne modifie pas ce fichier.
• Le fichier /etc/bashrc définit l’environnement de travail pour tous les utilisateurs
• Le fichier .bashrc est spécifique à chaque utilisateur. Il se trouve dans le répertoire personnel de chaque utilisateur /home/user/ , /root/. Permet de personnaliser l’environnement alias, commande à lancer au login
• Le fichier .bash_profile définit les variables d’environnements (PATH, PS1, ..)
• Le fichier .bash_logout permet de lancer des commandes à la déconnexion de l’utilisateur (sauvegardes des données, etc. )
26/02/2016
380
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les variables d’environnements• La langue, l’historique, le nom d’hôte, le type de terminal, l’éditeur par
défaut, le répertoire courant, le répertoire utilisateur.
• Ces variables permettent de paramétrer le Shell et des programmes.
• Ces variables sont par convention notées en majuscules :
� PATH
� HOME
� PS1
� LOGNAME
26/02/2016
381
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les variables d’environnements
• Afficher les variables d’environnement
#envHOSTNAME=netservice.alphorm.lanTERM=xtermSHELL=/bin/bashHISTSIZE=1000SSH_TTY=/dev/pts/8USER=rootLANG=fr_FR.UTF-8
• Modifier les variables d’environnement
#PATH=$PATH:/home/user/bin
26/02/2016
382
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les alias• Un alias est, comme son nom l’indique, une substitution ou raccourcis
d’une commande
• Les alias se définissent dans le fichier .bashrc
• Afficher les alias
#alias
• Définir de nouveaux alias
#alias yumi=‘yum install –y’ >>.bashrc#alias egrep='egrep --color=auto‘
• Supprimer un alias temporarairement
#unalias yumi
26/02/2016
383
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction
• Les variables d’environnements
• Les alias
26/02/2016
384
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Virtualisation par isolation
Linux containers et Dockers
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
26/02/2016
385
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Le modèle : machines virtuelles
• Le modèle : isolation, containers
• Les produits : “isolateurs”, containers
26/02/2016
386
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le modèle : Machine Virtuelle
• Une machine virtuelle c’est :
� Une représentation logicielle d’une machine physique
� Émulation du CPU, mémoire, nic, contrôleur de disque, disque, etc..
� Un OS installé dans la VM – Guest OS ou OS invité
26/02/2016
387
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le modèle : isolation, containers
• Un conteneur c’est :
� Le partage d’un noyau
� Les conteneurs utilisent le noyaude l’hôte
� Isolés avec les espaces de noms
• Réseau
• File system
• Les processus
� Les ressources sont limitées
26/02/2016
388
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les produits : “Isolateur”, containers• En isolation :
� Chroot
� BSD Jails
� Les zones de Solaris
• En containers :
� LXC
� OpenVZ
� Linux-Vserver
� Dockers
26/02/2016
389
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Pour aller plus loin
26/02/2016
390
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Le modèle : machines virtuelles
• Le modèle : isolation, containers
• Les produits : “isolateurs”, containers
26/02/2016
391
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
LXC - Linux containers
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Linux containers et Dockers
26/02/2016
392
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Qu’est-ce que LXC?
• Architecture des Linux Containers
• Les espaces de noms ou Namespaces
• Introduction aux groupes de contrôle
• Installation de LXC
26/02/2016
393
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Qu’est-ce que LXC?• LXC est une interface en espace utilisateur (userspace)
• C’est une API et des outils en licence GNU LGPLv2.1
• Manipuler des conteneurs
• LXC peut être vu comme une solution entre le chroot et une machine virtuelle.
• L’idée est de créer et gérer des environnements aussi isolés quepossible à partir des noyaux linux standard et ce sans modification
26/02/2016
394
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Architecture des Linux Containers• LXC pour gérer et créer des conteneurs, utilise des fonctionnalités du
noyau Linux :
� Espace de noms - namespaces (ipc, uts, mount, pid, network and user)
� La sécurité MAC Apparmor et SELinux
� Les capabilities
� Les groupes de contrôle - CGroups (control groups)
26/02/2016
395
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Architecture des Linux Containers
• Outils LXC en User space
• Partage le noyau de l’hôte
• Utilise les fonctionnalités du noyau pour l’isolation et la gestion des processus conteneurs
26/02/2016
396
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Les espace de noms ou Namespace• Les namespaces sont une fonctionnalité du noyau Linux :
� Process Namespace
• Isole les processus, le conteneur dispose de sa liste de processus
� Network Namespace
• Isole les interfaces réseau, le conteneur dispose de ses propres interfaces
� Mount Namespace
• Isole les systèmes de fichiers
� UTS Namespace
• Permet au conteneur de disposer de ses noms d’hôtes et de domaines
� IPC Namespace
• Ses propres processus Inter Communications
� User Namespace
• Permet aux conteneurs de disposer de ses utilisateurs, root dans le conteneur possede l’id et le gid 0
26/02/2016
397
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction aux groupes de contrôle
profÉtudiant Système
Mémoire DisqueHTTP
NFS
1024640 512
50%20% 30% 50%20%
50%20%
Réseau
CPU Shares
50%20% 30%
26/02/2016
398
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction aux groupes de contrôle• Les cgroups sont organisés en sous-systèmes ou modules
• Un sous-système est un contrôleur de ressources
• Blkio : Surveille et contrôle l'accès des tâches aux entrées/sorties sur des périphériques block
• Cpu : Planifie l'accès de la CPU
- Cpuacct : Rapports sur les CPU utilisées
- cpu.shares : Part relative du temps CPU disponible pour les tâches
• Cpuset : Affecte des CPU à des tâches
• Devices : Autorise ou refuse l'accès aux périphériques
• Freezer : Suspend ou réactive les tâches
• memory : Utilisation mémoire
26/02/2016
399
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Installation de LXC
• Recherche des paquets LXC
#yum search lxc
• Installation des paquets
# yum install lxc lxc-templates
• Vérification de la configuration avec lxc-checkconfig
#lxc-checkconfigKernel configuration not found at /proc/config.gz; searching...Kernel configuration found at /boot/config-3.10.0-123.el7.x86_64--- Namespaces ---Namespaces: enabled…..
26/02/2016
400
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Qu’est-ce que LXC?
• Architecture des Linux Containers
• Les espaces de noms ou Namespaces
• Introduction aux groupes de contrôle
• Installation de LXC
26/02/2016
401
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Gestion d'un container
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Linux containers et Dockers
26/02/2016
402
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
•Manipuler les conteneurs
26/02/2016
403
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Manipuler les conteneurs
• Démarrer simplement un conteneur
#lxc-start –name redhat_clone
• Démarrer un conteneur en tâche de fond
#lxc-start –name redhat_clone –-deamon
• Rentrer dans le conteneur
#lxc-console –name redhat_clone
• Lancer une commande ou un shell
#lxc-attach –name redhat_clone “commande”
#lxc-attach –name redhat_clone
26/02/2016
404
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Manipuler les conteneurs• Informations sur le conteneur
# lxc-info -n redhat_cloneName: redhat_cloneState: RUNNINGPID: 1278CPU use: 2.09 secondsBlkIO use: 13.70 MiBMemory use: 7.71 MiBKMem use: 0 bytesLink: vethNNBLPA
• Arreter un conteneur
#lxc-start –name redhat_clone –-deamon
• Supprimer un conteneur
#lxc-destroy –name redhat_clone
26/02/2016
405
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
•Manipuler les conteneurs
26/02/2016
406
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Docker
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Linux containers et Dockers
26/02/2016
407
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction à Docker
• Installation
26/02/2016
408
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction à Docker• Des applications :
� Avec ces librairies
� Avec ces Binaires
� Isolé du système hôte
• Pas d’installation
• Déploiement
• Portable
� Gérer par un moteur
26/02/2016
409
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Docker introduction • Docker est composé :
� D’un service
� D’outils client pour manipuler les conteneurs applicatifs
� D’un dépôt d’images systèmes et applicatifs - registry
26/02/2016
410
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Installation• Installer les dépôts Redhat
#subscription -manager repos --enable= rhel-7-server -extras –rpms#subscription -manager repos --enable= rhel-7-server -optionnal–rpms
• Les paquets pour Docker
#yum search dockerdocker-distribution.x86_64 : Docker toolset to pack, ship, store, and deliver contentdocker-registry.x86_64 : Registry server for Dockerdocker-selinux.x86_64 : SELinux policies for Dockerdocker.x86_64 : Automates deployment of containerized applications
#yum install –y docker docker-distribution
26/02/2016
411
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Installation
• Service Docker
#systemctl enable docker#sytemctl start docker
26/02/2016
412
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction à Docker
• Installation
26/02/2016
413
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Docker Création et manipulation
des conteneurs
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Linux containers et Dockers
26/02/2016
414
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Installer un conteneur
• Manipuler les conteneurs
• Utiliser les Dockerfile
26/02/2016
415
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Manipuler les conteneurs• Faire un pull d’une distribution
#docker pull centos#docker pull ubuntu
• Faire un pull d’une application
#docker pull mariadb
• Lister les images disponibles
#docker images --allREPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZEdocker.io/debian latest d4b2ba78e3b4 2 weeks ago 125.1 MBdocker.io/centos latest 60e65a8e4030 4 weeks ago 196.6 MB
26/02/2016
416
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Manipuler les conteneurs• Installer le serveur Apache
#docker run centos /bin/bash -c "yum -y update; yum -y install httpd"
• Lister les processus en cours sur le conteneur
#docker ps -a | head -2CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES82ff2ff8734a centos "/bin/bash -c 'yum -y" 22 seconds ago Exited (0) 9 seconds trusting_panini
• Créer une nouvelle image a partir de l'installation du serveur apache
#docker commit 82ff2ff8734a my_image/centos_httpd
• Lister l’images
#docker images –allREPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZEmy_image/centos_httpd latest d502ffce5567 About a minute ago 297 MB
26/02/2016
417
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Manipuler les conteneurs• Lancer la nouvelle image
#docker run my_image/centos_httpd /usr/bin/which httpd/usr/sbin/httpd
• Démarrer le container http_centos et activer httpd sur le port 8081
#docker run -it -p 8081:80 my_image/centos_httpd /bin/bash#usr/sbin/httpd & #echo "httpd on Docker Container" > /var/www/html/index.html
• Démarrer le container http_centos et activer httpd sur le port 8081, lister les process
#docker run -it -p 8081:80 my_image/centos_httpd /bin/bash#/usr/bin/hhtpd &#docker psfebbc7c4b74f my_image/centos_httpd "/bin/bash" 4 minutes ago Up 4 minutes 0.0.0.0:8081->80/tcp grave_yonath
#elinks http://localhost:8081
26/02/2016
418
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Manipuler les conteneurs• Lister le conteur en fonctionnemet et l’arreter
#docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESfebbc7c4b74f my_image/centos_httpd "/bin/bash" 12 minutes ago Up 12 minutes 0.0.0.0:8081->80/tcp grave_yonath
# docker stop febbc7c4b74f
• Supprimer le conteneur avec httpd
#docker rm febbc7c4b74f
• Supprimer tous les conteneurs
docker rm $(docker ps -a -q)
26/02/2016
419
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Utiliser les Dockerfile• Le Dockerfile permet de créer une nouvelle image avec des outils
installés et configurés
• Permet de créer rapidement un environnement de travail
• Création du ficher Dockerfile
#vi Dockerfile
FROM centosMAINTAINER alphorm <[email protected]>RUN yum -y install httpdRUN echo "Hello DockerFile pour alphorm" > /var/www/html/index.htmlEXPOSE 80CMD ["-D", "FOREGROUND"]ENTRYPOINT ["/usr/sbin/httpd"]
26/02/2016
420
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Utiliser les Dockerfile• Construire le conteneur avec le fichier Dockerfile
#docker build -t web_server:latest .Sending build context to Docker daemon 2.201 GBStep 0 : FROM centos---> 60e65a8e4030Step 1 : MAINTAINER alphorm <[email protected]>---> Using cache---> b18012d9552dStep 2 : RUN yum -y install httpd---> Using cache…..
• Construire le conteneur avec le fichier Dockerfile
Docker imagesREPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZEwebserver latest ea2999d44706 12 minutes ago 289.8 MB
26/02/2016
421
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Utiliser les Dockerfile• Démarrer le conteneur nouvellement créé
#docker run -d -p 80:80 web_server
• Lister les process
Docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES1f3750c192c1 web_server "/usr/sbin/httpd -D F" About a minute ago Up About a minute 0.0.0.0:80->80/tcp hungry_bell
• Se connecter sur le conteneur web_server
elinks http://localhost:80
26/02/2016
422
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Installer un conteneur
• Manipuler les conteneurs
• Utiliser les Dockerfile
26/02/2016
423
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Red Hat Linux Atomic Host
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Linux containers et Dockers
26/02/2016
424
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Plan
• Introduction Red Hat Linux Atomic Host
26/02/2016
425
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction Red Hat Linux Atomic Host
• Red hat Enterprise Linux 7 Atomic Host est une distribution basée sur RedHatEnterprise Linux 7
• Cette distribution permet de déployer facilement des conteneurs Docker
• Cette distribution est optimisé pour exécuter des conteneurs de type Docker
• Red Hat Atomic Host se déploie en bare metal
• Red Hat Atomic Host offre l’orchestrator Kubernetes de Google pour gérer le déploiement des containers Docker et la gestion des clusters
26/02/2016
426
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Introduction Red Hat Linux Atomic Host
26/02/2016
427
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Ce qu’on a couvert
• Introduction Red Hat Linux Atomic Host
26/02/2016
428
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Site : http://www.alphorm.comBlog : http://blog.alphorm.com
Ludovic Quenec'hduFormateur et Consultant indépendant OpenSource et virtualisation
Conclusion
26/02/2016
429
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le plan de formation• Administration système
• Systemd• Retour sur Systemd• Gestion avancée systemd
• Administration réseau
• Administrer IP V6 • NetworkManager• Le protocole IPV6• Configuration des interfaces réseaux
• NIC Teaming et Bridging• Comprendre l'agrégation de lien• Configurer le NIC Teaming• Gérer les interfaces Team• Comprendre les pont réseau – Bridge• Configurer un bridge• Configurer un bridge "teaming"
• Sécurité • Retour sur Firewalld• Comprendre les "Rich Rules" • Le Masquerading• Le port Forwarding• Gérer les ports avec SELinux
• Le service DNS • Comprendre le Domain Name System – DNS• Comprendre les recherches DNS• Comprendre les enregistrements DNS• Le service de cache DNS• Configurer un serveur de cache sécurisé• Mise en œuvre d'un serveur DNS local Bind9
• Le service Web • Configurer le serveur apache • Configurer des hôtes virtuels • Configurer l'authentification des utilisateurs • Créer des certificats • Apache mod_ssl• Gérer du contenu dynamique
26/02/2016
430
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le plan de formation• Le service de courier
• Le serveur Postfix• Configurer Postfix en Null-client
• Base de données• Introduction aux bases de données• Maria DB• Installation de MariaDB• Gérer une base de données MariaDB• Administrer les utilisateurs et les permissions
sous MariaDB• Sauvegarder et restaurer des bases données
MariaDB
• Stockage réseau• Les technologies SAN – NAS• Le protocole ISCSI• Créer des Target ISCSI avec targetcli• Iscsiadm - accéder aux Targets
• Programmation Shell
• Écrire des scripts simples• Créer et exécuter des scripts• Les sorties• Les variables• Les variables spéciales
• Test, Boucles et structures de contrôles• Les codes de retour, exit• Les test• If, then , else, .., case• Les boucles
• Configurer l'environnement du shell• L’environnement de travail
26/02/2016
431
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Le plan de formation• Virtualisation
• Linux containers et Dockers• Virtualisation par isolation• LXC - Linux containers • Gestion d'un container• Docker• Docker création et manipulation des conteneurs• Red Hat Linux Atomic Host
26/02/2016
432
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Avez-vous des Questions /Remarques /Commentaires ?
26/02/2016
433
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
Reprise sur les certifications Red Hat
26/02/2016
434
Formation Red Hat, Administration Système III RHCE (RH254) alphorm.com™©
A bientôt ☺
Pour une nouvelle formation sur Linux Red Hat.
Red Hat Administration Virtualization, HA, Openstack