ssh-copy-id
peut être utilisé pour installer votre clé publique dans le authorized_keys
d'une machine distante. La même commande peut-elle être utilisée pour installer les clés publiques d'autres utilisateurs, si vous avez la possibilité Sudo
?
Mise à jour: les utilisateurs locaux et distants utilisent Ubuntu 12.04.
Mise à jour 2: description de la procédure de création d'un nouveau compte utilisateur et de l'ajout d'une clé publique
.ssh/authorized_keys
sur le serveur distant, puis je copie et colle la clé publique générée localement dans le compte du nouvel utilisateur. Ce que je recherche, c’est que si je peux utiliser ssh-copy-id
pour installer la clé publique de cet utilisateur nouvellement créé directement dans le répertoire ssh. Juste pour enregistrer quelques commandes supplémentaires.Pas la même commande, mais si vous avez Sudo sur l'hôte distant, vous pouvez utiliser ssh pour effectuer à distance les étapes requises. J'utilise la commande suivante pour transmettre ma clé ssh à l'utilisateur root de ma framboise:
cat ~/.ssh/id_rsa.pub | \
ssh [email protected] \
"Sudo mkdir /root/.ssh; Sudo tee -a /root/.ssh/authorized_keys"
Rassemblez simplement ces éléments dans un script, ajoutez peut-être un peu chmod/chown du côté distant et vous aurez ce dont vous avez besoin.
Oui :), si, par exemple, vous êtes connecté comme ghost @ ubuntu et que vous
ssh-copy-id root@Host-ip
Ensuite, sur le serveur hôte dans la clé de fichier /root/.ssh/authorized_keys
se terminant par ghost@ubuntu
.
Cela signifie que l’utilisateur fantôme a copié sa paire de clés et ne doit plus taper son mot de passe.
Je ne suis pas sûr que cela fonctionne avec le drapeau -u <username>
, mais vous pouvez toujours vous connecter en tant qu'utilisateur différent avec
su <user_name>
puis ssh-copy-id ...