J'essaie de créer une clé ssh pour un autre utilisateur. Je suis connecté en tant que root. Puis-je simplement modifier les fichiers générés par ssh-keygen et remplacer root par l'utilisateur que je souhaite ?
Réponses
Trop de publicités?Il y a aucune information sur l'utilisateur dans les clés SSH .
Le dernier champ d'une clé publique est un commentaire (et peut être modifié en exécutant la commande suivante ssh-keygen -C newcomment
).
Il n'est pas nécessaire de faire quoi que ce soit de spécial pour créer une clé pour un autre utilisateur, il suffit de la placer au bon endroit et de définir les autorisations.
Vous pourriez le faire avec ssh-keygen
Cependant, n'oubliez pas que la clé privée est censée être privée pour l'utilisateur et que vous devez faire très attention à la conserver en sécurité - aussi sûre que le mot de passe de l'utilisateur. Ou même plus sûr, car il est peu probable que l'utilisateur doive le changer lors de sa première connexion.
ssh-keygen -f anything
crée deux fichiers dans le répertoire courant. anything.pub
est la clé publique, que vous pouvez ajouter à la clé de l'utilisateur. ~/.ssh/authorized_keys
sur n'importe quel serveur de destination.
L'autre fichier, simplement appelé anything
est la clé privée et doit donc être stockée en toute sécurité pour l'utilisateur. L'emplacement par défaut serait ~username/.ssh/id_rsa
(ici nommé id_rsa
qui est par défaut pour les clés rsa). N'oubliez pas que le .ssh
ne peut être lu ou écrit par personne d'autre que l'utilisateur, et le répertoire personnel de l'utilisateur ne peut être écrit par personne d'autre que l'utilisateur. De même, les permissions doivent être strictes sur la clé privée : Lecture/écriture pour l'utilisateur uniquement, et le répertoire .ssh et le fichier de clé privée doivent appartenir à l'utilisateur.
Techniquement, vous pouvez stocker la clé n'importe où. Avec ssh -i path/to/privatekey
vous pourriez spécifier cet emplacement, lors de la connexion. Encore une fois, la propriété et les autorisations appropriées sont essentielles et ssh ne fonctionnera pas si vous ne les avez pas correctement.
Devenez l'utilisateur en utilisant su et exécutez la clé en tant que cet utilisateur :
[root@kvm0001 ~]# su - joeuser
[joeuser@kvm0001 ~]$ ssh-keygen -t dsa (or rsa1 or rsa, depending on your security requirements)
Generating public/private dsa key pair.
Enter file in which to save the key (/home/joeuser/.ssh/id_dsa):
Comme vu aquí vous pouvez utiliser chmod pour modifier les droits de lecture du dossier de l'utilisateur auquel vous voulez ajouter la clé SSH.
vim /home/username/.ssh/authorized_keys
Ensuite, il suffit de coller la clé sur une nouvelle ligne au bas du fichier.