Révoquer l'accès SSH à votre VPS pour un ancien collaborateur ou un ordinateur portable perdu
Un ancien collaborateur, un développeur web dont la mission est terminée ou un ordinateur portable volé : toute personne qui avait une clé SSH sur votre serveur peut toujours se connecter. Une clé ordinaire n'expire pas. Ce que vous ne supprimez pas continue de fonctionner, même des années plus tard. Voici comment révoquer correctement l'accès à votre VPS.
Étape 1 : vérifier toutes les clés
Les clés se trouvent, pour chaque utilisateur, dans ~/.ssh/authorized_keys, à raison d'une clé par ligne. Vérifiez chaque utilisateur, y compris root :
sudo sh -c 'ls -l /root/.ssh/authorized_keys /home/*/.ssh/authorized_keys' sudo ssh-keygen -lf /root/.ssh/authorized_keys sudo ssh-keygen -lf /home/anna/.ssh/authorized_keys
ssh-keygen -lf affiche pour chaque clé l'empreinte et le commentaire, par exemple jan@laptop. Cela vous permet de savoir à qui ou à quel appareil appartient une clé. C'est pourquoi il est utile de donner à chaque clé un commentaire clair lors de sa création et d'utiliser une clé distincte par appareil.
- Faites une copie :
sudo cp /root/.ssh/authorized_keys /root/authorized_keys.bak. - Ouvrez le fichier avec
sudo nanoet supprimez la ligne correspondant à cette personne ou à cet appareil. - Vérifiez dans une deuxième fenêtre que vous pouvez toujours vous connecter avant de fermer votre session actuelle.
Vous trouvez une clé que vous ne connaissez pas et que vous n'avez pas ajoutée vous-même ? C'est un signal d'alarme : les pirates aiment déposer leur propre clé pour pouvoir revenir plus tard. Suivez alors Piraté ? Les premières étapes.
Étape 2 : le compte de cette personne
Si cette personne disposait de son propre utilisateur, verrouillez-le ou supprimez-le. Vérifiez d'abord qui est actuellement connecté avec who.
| Action | Commande (Debian et Ubuntu) |
|---|---|
| Bloquer le compte en conservant les fichiers | sudo usermod -L -e 1 jan |
| Arrêter les sessions et processus en cours | sudo pkill -u jan |
| Retirer du groupe sudo | sudo gpasswd -d jan sudo |
| Supprimer le compte avec son répertoire personnel | sudo deluser --remove-home jan |
-L verrouille le mot de passe, -e 1 fait expirer le compte. Verrouiller uniquement le mot de passe ne bloque pas toujours une clé SSH, alors qu'un compte expiré, si. Supprimez néanmoins les clés (étape 1). Vérifiez également s'il existe des fichiers pour cette personne dans /etc/sudoers.d/ et si des tâches planifiées s'exécutent sous ce nom : sudo crontab -l -u jan. Sur AlmaLinux et Rocky Linux, le groupe des administrateurs s'appelle wheel et vous supprimez un compte avec sudo userdel -r jan.
Étape 3 : remplacer les mots de passe et les secrets
Supprimer une clé ne suffit pas si cette personne a également vu des mots de passe. Remplacez tout ce que cette personne connaissait ou pouvait lire :
- Le mot de passe root. Vous le définissez dans l'écran VPS, onglet Paramètres, ou sur le serveur avec
sudo passwd root. - Les mots de passe des bases de données et des interfaces d'administration, ainsi que les tokens ou clés API dans les fichiers de configuration et les fichiers
.env. Remplacez-les également auprès du service qui les a émis. - Les clés partagées pour les sauvegardes, par exemple le mot de passe de votre stockage restic.
Étape 4 : votre compte WebOké
Si cette personne avait accès à Mon WebOké, retirez-lui également cet accès. Avec les droits appropriés, une personne peut par exemple y gérer votre VPS via l'écran VPS. Rendez-vous dans Mon administration, onglet Utilisateurs, et choisissez Supprimer l'accès pour cette personne. Consultez Ajouter un utilisateur supplémentaire aux comptes WebOké : gérer plusieurs comptes WebOké avec un seul utilisateur. Si vous avez déjà partagé vos propres identifiants, modifiez votre mot de passe, voir Définir, modifier ou récupérer un mot de passe oublié.
Un ordinateur portable perdu ou volé
Supprimez uniquement la clé de cet appareil, sur chaque serveur où elle figurait. Créez une nouvelle clé sur votre nouvel appareil et ajoutez-la, voir Installer votre clé sur le serveur et la tester. Si la clé privée n'avait pas de passphrase, considérez qu'elle a pu être utilisée et remplacez également les mots de passe de l'étape 3. Si vous ne parvenez plus à vous connecter, utilisez la console dans l'écran VPS, voir Plus d'accès à votre VPS : que faire ?
authorized_keys l'option expiry-time="20261231", suivie d'un espace et de la clé. Après cette date, le serveur refuse automatiquement la clé. Tenez également à jour dans votre dossier serveur la liste des personnes ayant accès et vérifiez-la chaque trimestre, voir Sécuriser votre VPS : hardening, Lynis et un rythme de maintenance.Si vous réinstallez votre VPS ultérieurement, renseignez dans le champ Clé SSH uniquement une clé qui vous appartient encore. Votre VPS est entièrement autogéré : c'est vous qui décidez qui peut accéder au serveur. Nous vous aidons pour la partie WebOké, comme l'écran VPS, la console et les snapshots.
Envie d'en savoir plus ? Suivez la formation gratuite VPS et administration de serveurs Linux, leçon 2.1 Créer et utiliser des clés SSH ou leçon 2.3 Utiliser SSH intelligemment.
