alphorm.com support formation red hat administration système iii rhcse-(rh254)

Post on 15-Jan-2017

5.539 Views

Category:

Technology

33 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

• lquenec@alphorm.com

• 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 root@alphorm.lanServerName 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 webmaster@www2.alphorm.lanDocumentRoot /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“ ludo@alphorm.lan

• 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 root@alphorm.lan

ludo@alphorm.lan

#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 lquenec@alphorm.com Belgique

2 André Deloin Adeloin@alphorm.com 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`, `Vsuper@alphorm.com`, `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 <admin@alphorm.com>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 <admin@alphorm.com>---> 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

top related