Un mot de passe solide et renouvelé régulièrement est la première ligne de défense de votre VPS Linux Infrawire. Depuis votre espace client, vous retrouvez l'IP et le mot de passe root du VPS, et il faut changer ce mot de passe dès la première connexion. Ce guide couvre le changement des mots de passe, l'expiration et la politique, le verrouillage des comptes et la récupération d'un mot de passe root perdu.
📋 Prérequis
- Un VPS Linux (Ubuntu 24.04, Debian 12, AlmaLinux 9 ou Rocky Linux 9)
- Un accès SSH en root ou avec un utilisateur disposant de
sudo - Pour la récupération : l'accès à la console (VNC) du VPS ou à un mode de secours
1. Changer le mot de passe root
Connecté en root :
Bashpasswd
Avec sudo :
Bashsudo passwd root
Saisissez deux fois le nouveau mot de passe ; rien ne s'affiche pendant la frappe. Utilisez au moins 14 caractères ou, mieux, une phrase de passe générée par un gestionnaire de mots de passe.
2. Changer le mot de passe d'un autre utilisateur
Bashsudo passwd USER
Un utilisateur ordinaire change son propre mot de passe avec passwd seul, qui demande d'abord le mot de passe actuel. Pour forcer un utilisateur à en choisir un nouveau à la prochaine connexion :
Bashsudo passwd -e USER
3. Définir des mots de passe en script avec chpasswd
chpasswd lit des lignes utilisateur:motdepasse sur l'entrée standard, ce qui est pratique pour l'automatisation :
Bashread -r -s -p "Nouveau mot de passe : " PW; echo echo "USER:$PW" | sudo chpasswd unset PW
Évitez de taper le mot de passe directement dans la commande : il resterait dans ~/.bash_history et serait visible dans la liste des processus.
4. Expiration et politique de mot de passe
Affichez et définissez les règles de vieillissement avec chage :
Bashsudo chage -l USER # afficher la politique actuelle sudo chage -M 90 -W 7 USER # âge max 90 jours, alerte 7 jours avant
Pour imposer de la complexité, installez le module de qualité :
Bash# Ubuntu / Debian sudo apt install -y libpam-pwquality # AlmaLinux / Rocky sudo dnf install -y libpwquality
Puis modifiez /etc/security/pwquality.conf :
INIminlen = 12 minclass = 3 retry = 3
Ces règles s'appliquent aux utilisateurs ordinaires. Root peut les contourner : restez rigoureux.
5. Verrouiller et déverrouiller un compte
Bashsudo passwd -l USER # verrouiller le mot de passe sudo passwd -u USER # le déverrouiller sudo chage -E 0 USER # faire expirer le compte immédiatement sudo chage -E -1 USER # supprimer la date d'expiration
Verrouiller le mot de passe ne bloque pas les connexions par clé SSH. Pour désactiver complètement la connexion, définissez aussi le shell sur /usr/sbin/nologin avec sudo usermod -s /usr/sbin/nologin USER.
6. Récupérer un mot de passe root oublié
Ouvrez la console VNC du VPS (ou démarrez le mode de secours) et redémarrez. Dans le menu GRUB, appuyez sur e, repérez la ligne commençant par linux et ajoutez à sa fin :
Bashinit=/bin/bash
Appuyez sur Ctrl+X pour démarrer, puis :
Bashmount -o remount,rw / passwd root sync exec /sbin/init
Sur AlmaLinux et Rocky, ajoutez plutôt rd.break, puis exécutez mount -o remount,rw /sysroot, chroot /sysroot, passwd root, touch /.autorelabel, et quittez deux fois. En mode de secours, montez le disque système, lancez chroot /mnt puis passwd root.
7. Vérifier
Bashsudo passwd -S USER sudo chage -l USER
P signifie un mot de passe utilisable, L un compte verrouillé. Ouvrez une seconde session SSH pour confirmer que le nouveau mot de passe fonctionne avant de fermer la première.
🔧 Dépannage
« Authentication token manipulation error »
Le système de fichiers est en lecture seule, typiquement en mode de récupération. Lancez mount -o remount,rw / et réessayez.
« BAD PASSWORD: The password fails the dictionary check »
La politique refuse un mot de passe trop faible. Choisissez-en un plus long, avec plusieurs types de caractères.
SSH refuse toujours le nouveau mot de passe root
Vérifiez sudo grep -E 'PermitRootLogin|PasswordAuthentication' /etc/ssh/sshd_config ainsi que les fichiers de /etc/ssh/sshd_config.d/. La connexion par mot de passe est peut-être désactivée au profit des clés.
Connexion impossible après une récupération sous SELinux
Sur AlmaLinux ou Rocky, oublier touch /.autorelabel fait échouer la connexion. Refaites la récupération et créez le fichier.
🔒 Vos comptes sont maintenant protégés par des mots de passe solides, une expiration raisonnable et une procédure de récupération que vous savez utiliser.