Cours complet Linux - De la base à l'administration avancée
Module 1 - Introduction à Linux
Dans ce module, nous commencerons par comprendre ce qu'est Linux, son origine, et pourquoi il
est largement utilisé.
Linux est un système d'exploitation open source, ce qui signifie que son code source est accessible
au public.
Cela permet à toute personne intéressée de l'étudier, de l'utiliser et même de le modifier.
1.1 Historique de Linux
Linux a été créé par Linus Torvalds en 1991. Il a lancé le projet pour développer un système
d'exploitation performant et gratuit.
Linux est basé sur Unix, un système d'exploitation utilisé dans les années 1970.
1.2 Pourquoi utiliser Linux ?
- Libre et open source
- Personnalisable et flexible
- Sécurisé
- Très performant, même avec des ressources limitées
Linux est aujourd'hui utilisé pour une variété d'applications, des serveurs aux ordinateurs de bureau,
en passant par les smartphones avec Android.
1.3 Les distributions Linux
Il existe de nombreuses distributions Linux, telles que :
- Ubuntu
- Debian
- Fedora
- CentOS
Chacune a ses spécificités, mais elles partagent tous les mêmes bases.
1.4 Utilisation de Linux sur un Chromebook
Sur un Chromebook, Linux peut être activé via Crostini, permettant d'exécuter des applications
Linux dans un environnement virtuel.
Module 2 - Les commandes de base sous Linux
Dans ce module, nous allons aborder les commandes essentielles pour interagir avec le système
Linux.
2.1 Naviguer dans le système de fichiers
Linux organise ses fichiers dans une structure arborescente.
Voici quelques commandes de base :
- 'ls' : Liste les fichiers dans le répertoire actuel
- 'cd' : Change de répertoire
- 'pwd' : Affiche le chemin du répertoire actuel
2.2 Manipulation des fichiers
- 'cp' : Copie des fichiers ou des répertoires
- 'mv' : Déplace ou renomme des fichiers
- 'rm' : Supprime des fichiers
2.3 Gérer les utilisateurs et les groupes
- 'useradd' : Crée un nouvel utilisateur
- 'passwd' : Modifie le mot de passe d'un utilisateur
- 'groupadd' : Crée un nouveau groupe
2.4 Droit d'accès aux fichiers
Linux utilise un système de permissions pour gérer l'accès aux fichiers.
Chaque fichier a trois types de permissions : lecture (r), écriture (w), et exécution (x).
Les permissions sont attribuées pour le propriétaire du fichier, le groupe, et les autres utilisateurs.
Module 3 - Administration de base
L'administration de base sous Linux inclut la gestion des utilisateurs, des groupes, des services, et
des processus.
3.1 Gestion des utilisateurs et des groupes
- 'userdel' : Supprime un utilisateur
- 'groupdel' : Supprime un groupe
- 'usermod' : Modifie un utilisateur (changer le groupe principal, le répertoire, etc.)
3.2 Les processus
Les processus sont des programmes en cours d'exécution.
- 'ps' : Affiche les processus en cours
- 'top' : Affiche les processus avec une vue dynamique
- 'kill' : Permet de tuer un processus
3.3 Gestion des services
Les services (ou démons) sont des programmes qui tournent en arrière-plan.
- 'systemctl' : Utilisé pour gérer les services
- 'start' : Démarre un service
- 'stop' : Arrête un service
- 'status' : Affiche le statut d'un service
3.4 Redémarrer et arrêter le système
- 'shutdown' : Permet d'arrêter ou de redémarrer le système
- 'reboot' : Redémarre immédiatement le système
Module 4 - Sécuriser son système Linux
Dans ce module, nous allons parler des bases de la sécurisation de ton système Linux.
4.1 Mises à jour de sécurité
La première étape pour sécuriser ton système est de s'assurer que toutes les mises à jour de
sécurité sont installées. Pour cela, utilise les commandes suivantes :
- 'sudo apt update' : Met à jour la liste des paquets
- 'sudo apt upgrade' : Installe les mises à jour disponibles
4.2 Sécurisation de SSH
Le protocole SSH est souvent ciblé par des attaques. Voici quelques bonnes pratiques :
- Désactive l'accès direct pour le root en SSH
- Utilise des clés SSH au lieu des mots de passe
4.3 Installer un pare-feu
Le pare-feu est essentiel pour protéger ton système des connexions non autorisées. Utilise **ufw**
(Uncomplicated Firewall) pour gérer les connexions réseau.
Commande pour activer ufw :
- 'sudo ufw enable' : Active le pare-feu
- 'sudo ufw allow 22' : Autorise SSH sur le port 22
4.4 Fail2ban pour la protection contre les attaques par force brute
Fail2ban analyse les logs de ton système et bloque les adresses IP des attaquants après plusieurs
tentatives échouées de connexion.
Commande pour installer fail2ban :
- 'sudo apt install fail2ban'