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 de racine pour l'utilisateur que je veux?
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 de racine pour l'utilisateur que je veux?
Réponses:
Vous pouvez le faire avec ssh-keygen
, cependant, rappelez-vous que la clé privée est censée être privée pour l'utilisateur. Vous devez donc faire très attention à le garder en sécurité, de la même manière que le mot de passe de l'utilisateur. Ou même plus sûr, car l'utilisateur ne sera probablement pas obligé de le changer lors de sa première connexion.
ssh-keygen -f anything
crée deux fichiers dans le répertoire en cours. 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, qui vient d’être 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 celui par défaut pour les clés RSA). Rappelez-vous que le .ssh
répertoire ne peut être lisible ou écrit en écriture que par l'utilisateur et que le répertoire personnel de l'utilisateur ne peut être écrit en écriture que par l'utilisateur. De même, les autorisations sur la clé privée doivent également être restreintes: lecture / écriture pour l'utilisateur uniquement, ainsi que 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, vous pouvez spécifier cet emplacement lors de la connexion. Encore une fois, la propriété et les autorisations appropriées sont critiques et ssh ne fonctionnera pas si vous ne les avez pas correctement.
ssh -i
à une clé privée pour un processus non privilégié est la façon dont je gère plus que quelques processus de sauvegarde rsync automatisés. :)
users
ouuser's
Il n'y a pas d'informations 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
).
Nul besoin de faire quelque chose 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.
Devenez l'utilisateur en utilisant su et exécutez la clé en tant qu'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):
joeuser
est un utilisateur de service, donc je ne peux pas me connecter comme eux. Comment permettre à un utilisateur de service (qui exécute uniquement des processus) d'avoir une clé ssh?
Comme indiqué 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, il suffit de coller la clé dans une nouvelle ligne au bas de ce fichier