Description de la formation administration linux
Linux est un système d’exploitation fiable et reconnu par les principaux acteurs du marché. Cette formation d’administration Linux vous apportera les connaissances indispensables pour installer et administrer Linux au quotidien quelle que soit la distribution que vous utilisez (Redhat, Debian, Suse, etc.).
Cette formation Linux suit une progression logique calquée sur un serveur vierge tout juste “réceptionné” jusqu’à sa mise en production et son exploitation quotidienne. Concrètement, après avoir installé votre distribution Linux, vous préparez votre propre environnement de travail et celui des utilisateurs, tout en ajoutant d’éventuels logiciels manquants. Ensuite, vous vous souciez de l’organisation de vos systèmes de fichiers qui vont recevoir les données utilisateurs et/ou de différentes applications en anticipant les pannes, l’augmentation de volume (RAID, LVM) et les performances. Vous apprenez à maîtriser les actions réalisées au démarrage de votre système Linux (montage, services, etc.) tout en étant capable de les modifier à tout instant. Vous saurez également configurer votre serveur Linux dans un contexte réseau ainsi que les principaux services réseaux rencontrés au quotidien (Apache, Samba) tout en n’oubliant pas la sécurité avec les principales règles de filtrage que proposent les deux types de firewall intégrés à toute distribution Linux (iptables et firewalld).
Cette formation se veut donc très pratique et très concrète, aussi tous les travaux pratiques proposés sont directement inspirés de besoins rencontrés en production (logiciel manquant à installer, besoin de place, configuration légère pour permettre un accès à distance performant y compris dans le Cloud, transfert de base automatique, recherche d’erreur dans un fichier de log, etc.).
Objectifs
Objectif opérationnel :
Installer et administrer un système Linux au quotidien, quelle que soit la distribution utilisée (Redhat, Debian, Suse, etc.).
Objectifs pédagogiques :
- Installer et administrer le système Linux
- S’accommoder aux disques et aux systèmes Linux
- Mettre en avant les performances et le tuning des systèmes Linux
- Gérer les périphériques sous Linux
- S’initier aux services réseaux sous GNU / Linux
À qui s’adresse cette formation ?
Public :
Ingénieurs système ou responsables de réseaux ayant besoin de mettre en oeuvre Linux dans le contexte de l’informatique d’entreprise.
Prérequis :
Les participants doivent posséder une bonne maîtrise de l’utilisation d’un système Linux.
Contenu du cours administration linux
Installation du système Linux et des logiciels
Installation du système
Installations classique depuis une image ISO
Installation sur une VM, quelle configuration conseillée ?
Recommandations sur le type de partitions et les filesystems (ext4, xfs, btrfs, etc.)
Les dessous cachés des choix de langues et de clavier (encodage, LANG, etc.)
Ce qu’il est facile/difficile de modifier après l’installation
Mise à jour et installation de logiciels
Mise à jour du système après l’installation
Recherche des corrections de bogues et mise à jour.
Mise à jour des logiciels après l’installation (rpm, dpkg, yum, apt, etc.)
Compilation et installation de paquetages sources ou binaires (gcc, tar.gz).
L’environnement graphique
Choix du gestionnaire de fenêtre KDE, GNOME, XFCE, etc.
Comment en changer plus tard ?
Concept de serveur d’affichage (X-Window) local ou distant
Configuration des périphériques liés à X (souris, carte graphique, moniteur, fichiers de configuration, …)
Déporter l’affichage d’une application (DISPLAY, X11forwarding, tunnel ssh)
Sécurité de X en réseau (xhost, xauth)
Travaux pratiques :
Installation d’une distribution au choix (Ubuntu, CentOs, etc.)
Création d’une VM Linux sur AWS ou Azure
Installation de logiciels sous différents formats (packages, sources) dont le serveur Web Apache et MySQL
Paramétrer une VM Linux pour y accéder par ssh (ligne de commande) mais aussi en mode graphique (client RDP) avec une configuration minimale peu consommatrice
Déport d’affichage entre serveurs pour proposer une solution centralisée de monitoring (DISPLAY).
Administration de base de Linux
Gestion des utilisateurs
Les commandes de gestion des utilisateurs et groupes (useradd, etc.)
Fichiers de configuration des comptes d’utilisateurs (passwd, shadow, etc.)
La délégation de pouvoirs (sudo)
La sauvegarde
Limites et avantages des commandes classiques : tar, dd.
Performance et temps d’exécution des standards gzip, bzip2,etc.
Commandes de sauvegarde en réseau : rsync, partimage, et … ssh.
Les sauvegardes incrémentales (rsync, hard link, scripting, etc.)
Arrêt et démarrage du système et des services
Le démarrage du système : boot, grub legacy, grub 2, le noyau et ses arguments.
Redémarrage après un crash (rescue)
Le démarrage des services avec Systemd
De sysV à Systemd en passant par Upstart
Différences des runlevels selon les distributions
Scripts de démarrage, personnalisation
Mécanismes d’ouverture de session.
L’arrêt propre du système
La gestion des services avec systemctl.
Travaux pratiques :
Création d’un environnement complet d’utilisateur substitut de root pour assurer l’exploitation quotidienne sécurisée du serveur
Rappels sur les outils à disposition pour être efficace en ligne de commande
Sauvegarde automatisée et déportée d’un site WEB et de sa base de données
Restauration sur le serveur distant pour validation
Automatisation du démarrage du site WEB
Disques et systèmes de fichiers sous Linux
Les disques Linux
Disques SATA/SAS et les disques SCSI
Supports de stockage USB (disques, sticks)
Partitions principales et partition étendue d’un disque
L’ajout d’un disque (fdisk, parted, gparted)
Le RAID et LVM : sécurité et évolutivité
Les systèmes de fichiers
Différents types de systèmes de fichiers : ext4, xfs, etc.)
Pourquoi choisir l’un ou l’autre ?
Le montage des systèmes de fichiers (rôle du noyau, options, fichier fstab)
Construction de systèmes de fichiers, contrôle d’intégrité
Gestion de l’espace disque et des quotas
Présentation des stockages NAS et SAN
Quelles différences entre un SAN et un NAS ?
Exemple d’utilisation d’un NAS sous Linux par des postes Linux et Windows
Performances et Tuning des systèmes Linux
La gestion des performances
Surveiller le système avec les bonnes commandes (top, free, vmstat, …).
Mesurer les performances du réseau et du routage (netstat, route, etc.)
Mesurer les performances des accès disques (iostat)
Comprendre la gestion de la mémoire au delà de sa simple occupation (vmstat)
Bien utiliser les informations de /proc et /sys
Les traces
Audit du système, quelle méthode pour quels usages ?
Acquisition, centralisation, et rotation des logs (logrotate)
Apport de logwatch
Travaux pratiques :
Paramétrage des logs afin de maîtriser leur expansion et le degré de finesse de restitution de l’information.
Exemple avec les logs du serveur WEB Apache
Les commandes pour disposer d’un tableau de bord réaliste en production
Gestion des périphériques sous Linux
Bien comprendre le rôle du noyau et des modules dans le système d’exploitation
Comprendre les messages du noyau au démarrage (dmesg)
Comment le système Linux “voit” les périphériques ?
Comment lire les caractéristiques des fichiers spéciaux sous Linux (/dev)
Liens entre module, driver et périphérique
La gestion des modules, les commandes insmod, modprobe, lsmod, rmmod
Lister les périphériques (lspci, lsusb, lshal, lshw, etc.)
Travaux pratiques :
Installation d’un pilote Wifi
Intégration sécurisée dans le réseau existant
Le réseau
Configurer les interfaces réseau sous Linux (network, ifcfg-eth0, …)
Principe de configuration cliente en réseau : DNS, BOOTP, DHCP.
Configuration des “clients” : passerelles, DNS, …
Configuration IPV6 d’un poste sous Linux
Commandes et applications
Connexion à distance sécurisée depuis Windows (ssh, putty)
Philosophie des clefs publiques/privées
Connexion entre serveurs Linux
Transfert de fichiers par ftp et sftp
Synchroniser des répertoires sur le réseau avec rsync
La sécurité au niveau du réseau (firewall)
Philosophie générale d’un firewall sous Linux
Présentation de nftables et iptables
Travaux pratiques :
Paramétrage IP manuel d’un serveur Linux (adresse IP, masque, passerelle, DNS)
Connexions entre serveurs Linux (ssh, clefs privé/publique)
Automatiser un transfert de fichiers journalier sécurisé entre serveurs (sftp, crontab)
Mise en place de règles simples de firewall (filtrage sur des adresses IP, redirection de port)
Présentation de services réseaux sous GNU/Linux
Serveur HTTP Apache
Introduction à Apache : notion serveur Web, serveurs virtuels.
Architecture, modules, directives, tuning
Serveur de fichiers Samba
Introduction à Samba : partage de ressources avec le monde Windows.
Paquetages, principes, installation, démarrage
Déclaration d’utilisateurs et de partages.
Problèmes (et solutions) classiques d’encodage entre Windows et Linux
Travaux pratiques :
Installation du serveur WEB Apache
Paramétrage de base (racine du site, port d’écoute)
Hébergement de plusieurs sites WEB sur notre serveur (virtual hosting) par exemple 1 par participant). Tests depuis des navigateurs
Accès à un répertoire partagé sous Linux depuis des postes sous Windows (samba), par exemple le site WEB prédédent pour disposer d’une grande souplesse de mise à jour d’un site WEB de test par simple drag and drop