web-dev-qa-db-fra.com

comment créer une clé ssh pour un autre utilisateur?

J'essaie de créer une clé ssh pour un autre utilisateur. Je suis connecté en tant que root. Puis-je simplement éditer les fichiers générés par ssh-keygen et changer la racine en l'utilisateur que je veux?

94
user962449

Vous pouvez le faire avec ssh-keygen, cependant, n'oubliez pas que la clé privée est censée être privée pour l'utilisateur, vous devez donc faire très attention à la garder en sécurité, aussi sûre que le mot de passe de l'utilisateur. Ou encore plus sûr, car l'utilisateur ne sera probablement pas obligé de le modifier lors de la 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 à l'utilisateur ~/.ssh/authorized_keys sur n'importe quel serveur de destination.

L'autre fichier, juste appelé anything est la clé privée et doit donc être stocké 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 le répertoire ne peut être lisible ou inscriptible par personne d'autre que l'utilisateur, et le répertoire personnel de l'utilisateur ne peut être inscriptible par personne d'autre que l'utilisateur. De même, les autorisations doivent également être limitées sur la clé privée: lecture/écriture uniquement pour l'utilisateur, 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 pouvez 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.

81
nce

Il y a aucune information 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).

Pas besoin 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.

143
Alex

Devenez l'utilisateur en utilisant s et exécutez la clé en tant qu'utilisateur:

[[email protected] ~]# su - joeuser
[[email protected] ~]$ 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):
21
Rilindo

Comme vu ici , vous pouvez utiliser chmod pour modifier les autorisations de lecture du dossier de l'utilisateur auquel vous souhaitez ajouter la clé SSH.

vim /home/username/.ssh/authorized_keys

Ensuite, collez simplement la clé sur une nouvelle ligne au bas de ce fichier

6
Justin Kowalsky