Bienvenue sur le site linux.goffinet.org !

Administration Linux

Introduction

Auteur : François-Emmanuel Goffinet

Ce document est un guide de formation en français sur les pratiques sécurisées d’administration du système d’exploitation (OS) GNU/Linux. Le propos invite progressivement à déployer les technologies de virtualisation, à procéder à des tâches d’automation / automatisation via des scripts, à déployer les services traditionnels tels que des services Web ou d’infrastructure, voire plus spécifiques en ToIP / VoIP / UC ou même IaaS.

Le document comprend de nombreux scripts et exemples. Aussi, il traite les sujets sur les distributions basées RHEL (Centos et dérivés) et Debian Stable (Ubuntu et autres dérivés).

Le document vise à atteindre un double objectif :

Alignement sur les certifications

Ce projet tente d’aligner son contenu sur le programme des certifications Linux les plus populaires

SujetsCertifications alignéesProgrès dans la rédaction
I. Administration sécurisée du systèmeLinux Essentials, RHCSA, LPIC1, LPI 201, RHCE partiel, LFCS partiel.Complet
II. Services RéseauRHCE, LPI 202, LFCS, LFCEA actualiser
III. Virtualisation LinuxRHCSA (conteneurs), LPIC 305En développement
IV. Automation Ansible-En développement
V. Administration OpenStack-En développement
VI. Administration Java EE-En développement
VII. DevOpsAWS SysOps, DevOps FoundationEn développement
VIII. Communications Unifiées-Complet
IX. CybersécuritéCEHEn développement
X. Certifications LinuxProgrammes de référence-

Orientation pédagogique

Ce document oriente le contenu sur :

  • La virtualisation, les technologies en nuage (cloud)
  • L’automatisation par la rédaction de code (scripts)
  • Les pratiques de sécurité

Public cible du document

Ce document s’adresse à tous les professionnels de l’informatique bien sûr mais aussi des services et de l’industrie pour lesquels l’ère numérique a modifié les pratiques de travail.

Du bon usage du support

Ce support évolue constamment selon l’épreuve du temps et des retours d’expérience. Il est toujours préférable de se référer à la dernière version en ligne sur https://linux.goffinet.org.

Il se lit ou s’expose en face d’une console Linux, dans une machine virtuelle par exemple. Les interfaces graphiques des logiciels seront laissées à l’appréciation des utilisateurs.

Pour obtenir de meilleurs résultats d’apprentissage, notamment en classe de formation, il est conseillé d’utiliser une installation native, avec une ligne de commande ou un shell à disposition.

Enfin, ce document n’étant qu’un support de cours, il sera nécessaire de visiter les références et les liens fournis ainsi que les sites officiels et leurs pages de documentation qui restent dans la plupart des cas librement disponibles.

Distributions de référence

On conseillera quelques distributions Linux de référence avant d’entamer des distributions spécialisées ou spécifiques.

  1. Centos / (RHEL) / Fedora
  2. Ubuntu 20.04 LTS Focal / Debian Stable

Matériel nécessaire

Un ordinateur individuel récent connecté au réseau local (et à l’Internet) est nécessaire. Dans une classe de formation, la meilleure expérience est d’installer une distribution Linux native et d’utiliser des outils de virtualisation tels que libvirt et qemu/KVM pour réaliser des exercices avancés.

Droits

Ce document de François-Emmanuel Goffinet est mis à disposition selon les termes de la licence Creative Commons Attribution - Partage dans les Mêmes Conditions 4.0 International. Il est produit en ligne sur https://linux.goffinet.org/.

Ce document s’inspire de près ou de loin de toute une série d’autres qui sont soumis la plupart du temps aux mêmes droits. Les sources citées ou reprises sont présentes sous format d’URI dans le code source. J’espère que les auteurs concernés se satisferont de cette exposition. Les marques citées ont été déposées par leurs propriétaires.

Titres publiés sur Leanpub

Ces ebooks sont publiés sur Leanpub ont pour but de supporter l’auteur dans son oeuvre.

Titres publiés sur Leanpub

Titres publiés sur Leanpub :

  • Linux Administration, Volume 1, Administration fondamentale : Guide pratique de préparation aux examens de certification LPIC 1, Linux Essentials, RHCSA et LFCS. Administration fondamentale. Introduction à Linux. Le Shell. Traitement du texte. Arborescence de fichiers. Sécurité locale.
  • Linux Administration, Volume 2, Administration avancée : Guide pratique de préparation aux examens de certification LPIC 1, LPIC 2, Linux Essentials, RHCSA et LFCS. Processus et Démarrage. Installation de logiciels. Scripts Shell. Virtualisation KVM. Disques et Stockage LVM. Configuration du réseau.
  • Linux Administration, Volume 3, Administration sécurisée : Guide pratique de préparation aux examens de certification LPIC 1, LPIC 2, Linux Essentials, RHCSA et LFCS. LFCS/LFCE. Secure Shell (SSH), Synchronisation temporelle, Syslog, Cron, SELINUX, Apparmor, Routage IP, Pare-feu Netfilter, uff, firewall, iptables, audit et scan, renforcement sécuritaire.
  • Linux Administration, Volume 4, Administration Services TCP/IP : Guide pratique de préparation aux examens de certification RHCE, LPIC 202 et LFCE. LFCS/LFCE. Laboratoires Services Réseau, Services de passerelle, Services d’infrastructure, Services de partage, Authentification centralisée, Services de Messagerie, Services de surveillance, Apache HTTP Server, Nginx, Services de Base de Données.

Routage et Pare-feu

58 minutes de lecture

Le pare-feu examine le trafic entrant, le trafic sortant et le trafic transféré. On trouvera ici une introduction au routage statique et dynamique sous Linux, les principes fondamentaux des concepts de pare-feu, le pare-feu Ubuntu par défaut ufw, le pare-feu Red Hat par défaut firewalld et le pare-feu Linux natif Netfilter avec ses commandes iptables.

Logiciels de sauvegarde (Backup)

moins de 1 minutes de lecture

On peut réaliser des sauvegardes des disques, des systèmes de fichiers ou d’emplacements précis d’un système Linux de différentes manières. Les sauvegardes émanent toujours d’une stratégie et les restorations devraient être régulièrement validées. On trouvera ici quelques pistes pour les tâches de sauvegarde.

Sécurités MAC SElinux et AppArmor

19 minutes de lecture

Le Mandatory access control (MAC) ou contrôle d’accès obligatoire est une méthode de gestion des droits des utilisateurs pour l’usage de systèmes d’information. SElinux et AppArmor sont des logiciels qui implémentent la sécurité MAC sous Linux.

Journalisation Systemd et Syslog

18 minutes de lecture

Les logs ou les fichiers de journaux du système Linux sont collectés par le démon syslog. Systemd nous offre une capacité de journalisation ponctuelle issue des fichiers de journaux. L’horodatage des journaux et leur format est d’une importance cruciale pour un traitement ultérieur. Le système Linux étant particulièrement loquace, c’est en consultant ces journaux qu’on identifiera des pannes et que leur résolution sera d’autant plus aisée.

Tâches planifiées at cron

11 minutes de lecture

at, cron et systemd sont les programme Linux natifs qui permettent de planifier des tâches.

Localisation géographique et synchronisation temporelle

18 minutes de lecture

La localisation géographique et la synchronisation des horloges est indispensable au bon fonctionnement des systèmes informatiques (logs, authentifications, chiffrement, forensic, …). Les logiciels Linux utiles sont date, timedatectl, ntpdate, chronyc. Le démon chronyd permet d’assurer la synchronisation temporelle auprès de serveurs de temps (NTP).

Secure Shell

39 minutes de lecture

Secure Shell (SSH) est un protocole qui permet de sécuriser les communications de données entre les ordinateurs connectés au réseau. Il permet d’assurer la confidentialité, l’intégrité, l’authentification et l’autorisation des données dans des tunnels chiffrés. Il utilise TCP habituellement sur le port 22, mais il peut en utiliser d’autres simultanément. On utilise aujourd’hui la version SSH-2. La version SSH-1 est à proscrire. Le protocole SSH comporte autant de fonctionn...

Outils Linux réseau

25 minutes de lecture

Diagnostic du réseau et outils d’audit : tcpdump, ping, traceroute, netstat, nslookup et dig.