Restreindre l’accès SSH aux utilisateurs privilégiés
Pour des raisons de sécurité, il est souvent préférable de restreindre l’accès connecté par SSH uniquement à certains utilisateurs spécifiques. Cette démarche permet de limiter la surface d’attaque de votre serveur et de s’assurer que seuls les utilisateurs autorisés peuvent se connecter. Voici un guide étape par étape pour configurer votre serveur Linux en ce sens.
Configurer les utilisateurs autorisés pour SSH
Pour permettre uniquement à certains utilisateurs d’accéder à votre serveur via SSH, vous devez modifier le fichier de configuration du serveur SSH.
- Ouvrir le fichier de configuration SSH :
sudo nano /etc/ssh/sshd_config
- Ajoutez ou modifiez la ligne suivante pour inclure les utilisateurs autorisés :
AllowUsers utilisateur1 utilisateur2
Vous pouvez remplacer
utilisateur1
etutilisateur2
par les noms des utilisateurs qui doivent avoir accès. - Enregistrez les modifications et quittez l’éditeur.
- Redémarrez le service SSH pour appliquer les changements :
sudo systemctl restart sshd
Contrôler l’accès basé sur l’adresse IP
Une autre mesure de sécurité consiste à restreindre l’accès SSH en fonction des adresses IP. Cela est utile pour autoriser uniquement les connexions provenant d’adresses IP spécifiques.
- Accéder au fichier de configuration des hôtes :
sudo nano /etc/hosts.allow
- Ajouter une ligne pour autoriser votre adresse IP :
sshd: 192.168.1.100
Remplacez
192.168.1.100
par l’adresse IP que vous souhaitez autoriser. - Pour bloquer toutes les autres adresses IP, ouvrez le fichier :
sudo nano /etc/hosts.deny
- Ayez la ligne suivante :
sshd: ALL
- Enregistrez et quittez les fichiers, puis redémarrez le service SSH.
Gérer l’authentification par clé publique
Pour renforcer la sécurité de l’accès SSH, privilégiez l’authentification par clé publique plutôt que l’utilisation de mots de passe. Cette méthode est plus sécurisée et facilite la gestion des utilisateurs autorisés.
- Générez une paire de clés sur la machine cliente en utilisant la commande :
ssh-keygen
- Copiez la clé publique vers le serveur :
ssh-copy-id utilisateur@serveur
Remplacez
utilisateur
par le nom de l’utilisateur etserveur
par l’adresse IP ou le nom d’hôte de votre serveur. - Assurez-vous que la clé publique est bien ajoutée dans le fichier
~/.ssh/authorized_keys
de l’utilisateur sur le serveur.
Comment autoriser uniquement certains utilisateurs à SSH mon serveur Linux ?
Cette section résume les étapes clés pour restreindre l’accès SSH uniquement aux utilisateurs spécifiés :
- Modifiez le fichier de configuration SSH pour restreindre les utilisateurs avec la directive
AllowUsers
. - Configurez les fichiers
hosts.allow
ethosts.deny
pour contrôler l’accès par adresse IP. - Utilisez l’authentification par clé publique pour améliorer la sécurité.
FAQ
1. Que faire si je perds l’accès SSH après avoir modifié la configuration ?
Si vous perdez l’accès SSH, vous aurez besoin d’un accès physique au serveur ou d’une méthode de récupération pour restaurer l’accès. Vous pouvez modifier à nouveau le fichier de configuration en mode de récupération.
2. Puis-je autoriser des groupes d’utilisateurs au lieu de spécifier chaque utilisateur ?
Oui, vous pouvez utiliser la directive AllowGroups
dans le fichier de configuration SSH pour autoriser l’accès à tous les membres d’un groupe spécifique.
3. Quelle est la différence entre AllowUsers
et AllowGroups
?
AllowUsers
limite l’accès à des utilisateurs spécifiques, tandis que AllowGroups
permet à tous les membres d’un groupe d’accéder, offrant ainsi plus de flexibilité si de nombreux utilisateurs partagent des droits d’accès similaires.