Ceci est une ancienne révision du document !
Addsysadmin
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) NOPASSWD: ALL
Puis adaptez le script et lancez-le :
Un petit souci actuellement, j'ai oublié de configurer le mot de passe, mais il faut quand même rentrer l'actuel pour le changer… donc ça éjecte (pas possible d'avoir un mot de passe vide). À mettre à jour.
#!/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 for toto in "${ksysadmin[@]}" do useradd $toto -m -U -G wheel,www-data # 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