Sécuriser son serveur SSH en automatisant le changement du password de connexion

Le changement régulier du password permettant la connexion à son serveur SSH est la garantie d'avoir une haute sécurité.

Le dire, c'est bien mais le faire, c'est mieux.

Le faire tous les combiens de temps ? Que mettre en password ? Vais-je m'en souvenir ?

Voici un petit enchainement de commandes, à enregistrer dans crontab et qui permet de générer aléatoirement un password pour le user désiré grâce à la commande pwgen, de le modifier automatiquement grâce à la commande chpasswd puis de l'envoyer par mail.

$ passwd="user1:`/usr/bin/pwgen -s -y -c 14 1`" && /bin/echo $passwd | /usr/sbin/chpasswd && /bin/echo $passwd | /usr/bin/mail -s "Il fait beau aujourd\'hui" user1@domaine.fr && passwd=""

Pour installer la commande pwgen (par défaut sur Ubuntu) :

$ apt-get install pwgen

Détail de la commande pwgen :

-s : génère des mots de passe complètement aléatoires
-y : insère au moins 1 caractère spécial
-c : insère au moins 1 lettre majuscule
Le nombre 14 indique que l'on veut générer un mot de passe de 14 caractères
Le chiffre 1 indique que l'on veut générer 1 seul mot de passe

L'envoi par mail peut être remplacé par un envoi par sms grâce à la commande gammu.

Etiquettes: