
🎯 Ce guide présente le bases d’Unix/Linux, en s’intéressant aux mécanismes qui organisent la sécurité et le fonctionnement du système. Il introduit la logique des permissions, véritable grammaire du système de fichiers, avant de présenter les différents types de comptes et la manière dont ils s’articulent avec les droits.
Le document aborde ensuite l’élévation de privilèges via sudo, la création d’utilisateurs et la gestion de leurs périmètres d’action.
La section consacrée à SSH expose les principes d’accès distant et les bonnes pratiques indispensables pour sécuriser les connexions.
Comprendre les droits sous Unix/Linux #
Sous Unix/Linux, les fichiers et les répertoires disposent tous d’un ensemble de droits permettant de contrôler ce que les utilisateurs peuvent faire.
Ces droits permettent notamment de lire, modifier ou exécuter un fichier. Ils permettent également de contrôler l’accès aux répertoires.
Cette gestion des permissions constitue l’un des mécanismes fondamentaux de sécurité du système : chaque utilisateur ne doit pouvoir accéder qu’aux ressources dont il a réellement besoin.
Les trois permissions
Les permissions Unix/Linux reposent sur trois droits principaux :
- Lecture (
r) : permet de consulter le contenu d’un fichier. Pour un répertoire, elle permet notamment d’en consulter la liste. - Écriture (
w) : permet de modifier un fichier. Pour un répertoire, elle permet notamment d’y créer ou supprimer des fichiers. - Exécution (
x) : permet d’exécuter un fichier lorsqu’il s’agit d’un programme ou d’un script. Pour un répertoire, elle permet de le traverser et donc d’accéder aux éléments qu’il contient.
Ces trois permissions sont ensuite appliquées à différentes catégories d’utilisateurs.
Propriétaire, groupe et autres utilisateurs
Chaque fichier ou répertoire associe ses permissions à trois catégories :
- Le propriétaire (
upour user) : l’utilisateur auquel appartient le fichier. - Le groupe (
gpour group) : les utilisateurs appartenant au groupe associé au fichier. - Les autres (
opour others) : tous les autres utilisateurs du système.
Cette distinction permet par exemple de donner à un utilisateur les droits de modification d’un fichier, tout en autorisant uniquement sa consultation par les autres utilisateurs.
Comment lire les permissions d’un fichier ? #
La commande ls -l permet de consulter les informations associées à un fichier ou à un répertoire.
Par exemple :
ls -l freepro
peut retourner :
-rwxr-xr-- 1 user group 12345 Nov 15 09:19 freepro

Dans cet exemple :
- le propriétaire peut lire, modifier et exécuter le fichier ;
- les membres du groupe peuvent lire et exécuter le fichier ;
- les autres utilisateurs peuvent uniquement le lire.
Le premier caractère (- dans cet exemple) indique quant à lui le type d’objet. Un d indique par exemple qu’il s’agit d’un répertoire.
Quelques configurations courantes
Voici quelques exemples de permissions que vous pourrez rencontrer :
rw-------
Le fichier est accessible en lecture et en écriture par son propriétaire uniquement.
rw-rw-r--
Le propriétaire et les membres du groupe peuvent lire et modifier le fichier. Les autres utilisateurs peuvent uniquement le lire.
rwxrwxr-x
Le propriétaire et les membres du groupe peuvent lire, modifier et exécuter le fichier. Les autres utilisateurs peuvent le lire et l’exécuter.
drwxr-xr-x
Il s’agit d’un répertoire. Son propriétaire peut le modifier ; les autres utilisateurs peuvent le parcourir et consulter son contenu selon les droits associés aux fichiers qu’il contient.
Attention : les permissions trop ouvertes sont à éviter. Un fichier en
rw-rw-rw-, par exemple, peut être modifié par n’importe quel utilisateur disposant d’un accès au système. Il est préférable de limiter les droits au strict nécessaire.
Comment modifier les droits sous Unix/Linux ?
La commande chmod permet de modifier les permissions d’un fichier ou d’un répertoire.
Les lettres utilisées correspondent aux catégories d’utilisateurs :
u: propriétaire ;g: groupe ;o: autres ;a: tous les utilisateurs.
Les permissions sont représentées par :
r: lecture ;w: écriture ;x: exécution.
Par exemple :
chmod a+rw fichier
ajoute les droits de lecture et d’écriture à tous les utilisateurs.
chmod u=rw fichier
attribue au propriétaire uniquement les droits de lecture et d’écriture.
chmod a+x script.sh
ajoute le droit d’exécution à tous les utilisateurs.
La commande chmod permet donc d’ajuster précisément les permissions sans modifier le propriétaire ou le groupe du fichier.
Demander une modification de droits #
Un utilisateur peut généralement modifier les permissions des fichiers dont il est propriétaire.
Les fichiers appartenant au système sont, quant à eux, généralement protégés et placés sous la responsabilité de root. Leur modification peut donc nécessiter des privilèges d’administration.
Si vous devez modifier les droits d’un fichier ou d’un répertoire que vous ne pouvez pas administrer directement, contactez notre support en précisant :
- le chemin complet du fichier ou du répertoire ;
- les droits actuellement configurés, si vous les connaissez ;
- les droits souhaités ;
- la raison de la modification.
Cela permet de vérifier la demande et d’appliquer uniquement les permissions nécessaires.
Les différents types de comptes utilisateurs
Les permissions permettent de déterminer ce qu’un utilisateur peut faire. Il faut donc également comprendre les différents types de comptes présents sur un système Unix/Linux.
Les comptes système #
Les comptes système sont utilisés par le système d’exploitation et par les services qui s’exécutent sur le serveur.
Ils n’ont généralement pas vocation à être utilisés pour une connexion interactive par un utilisateur. Leurs permissions sont volontairement limitées afin de réduire les conséquences d’une éventuelle compromission du service concerné.
Selon la distribution Linux et sa configuration, on peut notamment retrouver :
- un UID inférieur à 1000 pour de nombreux comptes système ;
- un shell non interactif comme
/usr/sbin/nologinou/bin/false; - un répertoire personnel limité ou inexistant.
Ces valeurs peuvent toutefois varier selon la distribution.
Les comptes utilisateurs #
Il s’agit des comptes destinés aux utilisateurs humains.
Ils disposent généralement d’un répertoire personnel, d’un shell et de permissions correspondant aux tâches qui leur sont confiées.
L’objectif est de permettre à chaque utilisateur de travailler sans lui accorder inutilement des privilèges d’administration.
Le compte root #
root est le compte administrateur du système.
Il dispose de privilèges très élevés permettant notamment de modifier les fichiers système, les services, les utilisateurs et la configuration du serveur.
C’est précisément pour cette raison qu’il est préférable de ne pas utiliser directement root pour les tâches quotidiennes.
Comment utiliser sudo ?
sudo permet à un utilisateur autorisé d’exécuter ponctuellement une commande avec les privilèges d’un autre utilisateur, généralement root.
Cette approche permet d’effectuer une opération nécessitant des droits d’administration sans travailler en permanence avec un compte privilégié.
Par exemple :
sudo <commande>
Lors de l’exécution, le système peut demander le mot de passe du compte actuellement utilisé.
Pour ouvrir temporairement un shell root :
sudo su -
Le mot de passe demandé est celui du compte avec lequel vous êtes connecté, et non celui du compte root.
À retenir :
sudodoit être utilisé uniquement lorsque les privilèges élevés sont nécessaires. Une commande exécutée avecsudopeut modifier profondément le système ; il est donc important de vérifier la commande avant de l’exécuter.
Se connecter à un serveur en SSH

SSH (Secure Shell) permet d’établir une connexion distante sécurisée vers un serveur Unix/Linux.
Il permet notamment d’administrer un serveur sans être physiquement devant la machine.
La connexion peut être effectuée avec :
ssh <IP_ou_hostname> -l <identifiant>
Par exemple :
ssh 85.31.196.15 -l username
Lors d’une première connexion, SSH peut afficher l’empreinte de la clé d’hôte du serveur et vous demander de la confirmer.
Cette étape est importante : elle permet de vérifier que le serveur auquel vous vous connectez est bien celui attendu.
L’empreinte doit idéalement être comparée avec une valeur connue et vérifiée par un canal de confiance.
Sécuriser les accès SSH
Un serveur SSH exposé sur un réseau doit être configuré avec précaution. Quelques mesures permettent de réduire significativement les risques liés aux accès distants.
Interdire la connexion directe de root #
Il est recommandé de ne pas autoriser une connexion SSH directe avec le compte root.
Dans la configuration du serveur SSH, le paramètre correspondant est :
PermitRootLogin no
L’administration peut alors être réalisée avec un compte utilisateur autorisé à utiliser sudo.
Privilégier l’authentification par clé #
L’authentification par clé SSH permet d’éviter de dépendre uniquement d’un mot de passe.
Une paire de clés peut être générée avec :
ssh-keygen -t ed25519
La clé publique peut ensuite être installée sur le serveur avec :
ssh-copy-id <user>@<serveur>
La clé privée doit rester strictement confidentielle et ne jamais être communiquée ou copiée sur un serveur sans nécessité.
Protéger le répertoire .ssh #
Le répertoire et les fichiers contenant les clés doivent également disposer de permissions restrictives :
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Cela limite l’accès aux informations utilisées pour l’authentification SSH.
Attention : ne validez pas automatiquement une nouvelle empreinte SSH. Si une machine connue est remplacée ou si sa clé change, vérifiez la nouvelle empreinte par un canal de confiance avant de l’accepter. Une modification inattendue peut notamment correspondre à une mauvaise configuration ou à une tentative d’interception de la connexion.
À retenir #
La sécurité d’un système Unix/Linux repose en grande partie sur la capacité à limiter les droits au strict nécessaire.
Les permissions déterminent ce qu’un utilisateur peut faire sur les fichiers et répertoires. Les comptes et les groupes permettent d’organiser ces permissions, tandis que sudo permet d’élever ponctuellement ses privilèges lorsque cela est nécessaire.
Enfin, SSH constitue le principal moyen d’accès distant aux serveurs Unix/Linux. Sa sécurisation, notamment par l’utilisation de comptes non privilégiés et de clés SSH, doit donc faire partie des précautions de base lors de l’administration d’un serveur.
Ceci conclut notre guide. Le Centre d’Expertise Client XPR reste à votre disposition.