Comme indiqué sur configurer_ssh_sur_ses_serveurs, il faut avoir un compte personnalisé par sysadmin sur chaque serveur.
Mais si vous avez plusieurs machines, administrées par les mêmes personnes, répéter ces actions est un peu lassant. À défaut d'avoir un script Ansible fonctionnel, vous pouvez simplement lancer ce script après avoir renseigné les variables ksysadmin
et les nom d'admin.
Avant tout :
apt install sudo groupadd wheel visudo
Ajouter la ligne suivante :
%wheel ALL=(ALL:ALL) ALL
Puis adaptez le script et lancez-le :
#!/bin/bash # Créer chaque utilisateur et lui mettra sa clé ssh où il faut (rien d'indécent) # Définitions des sysadmins ksysadmin=('nom_admin1' 'nom_admin2') #Définition d'un tableau = un user, ses clés nom_admin1=('ssh-rsa AAAAB3NzaC admin@moi' 'ecdsa-sha2-nistp521 AAAAE2VjZ adminmoi@moi' ) nom_admin2=('ssh-ed25519 AAAAC3 admini@moiaussi') # création user dans le groupe wheel # -m : crée un home ; -U : crée un groupe du même nom ; -G : ajoute aux groupes # -p : mot de passe, nécessaire sinon impossible de se co la première fois... # -s /bin/bsh : évite l'erreur d'un shell non déclaré et bloquant les utilisatrices for toto in "${ksysadmin[@]}" do useradd $toto -m -U -G wheel,www-data -p MotdePa55e -s /bin/bash # forcer le changement de mot de passe à la première connexion chage -d 0 $toto # créer le dossier qui va bien et son fichier pour ssh mkdir /home/$toto/.ssh touch /home/$toto/.ssh/authorized_keys2 #Variable intermédiaire pour que ça passe totobis="$toto"[@] # Sa clé ssh for sshkey in "${!totobis}" do echo $sshkey >> /home/$toto/.ssh/authorized_keys2 done chown -R "$toto": /home/$toto/.ssh chmod 0700 /home/$toto/.ssh/ chmod 0600 /home/$toto/.ssh/authorized_keys2 done