75 votes

Plusieurs clés publiques pour un même utilisateur

Cette question est similaire à Authentification par clé publique SSH - une même clé publique peut-elle être utilisée par plusieurs utilisateurs ? mais c'est l'inverse.

J'expérimente l'utilisation de ssh, donc n'importe quel serveur ssh fonctionnera pour vos réponses.

Puis-je avoir plusieurs clés publiques liées au même utilisateur ? Quels en sont les avantages ? De même, est-il possible de définir des répertoires d'accueil différents pour les différentes clés utilisées (qui sont toutes liées au même utilisateur) ?

Veuillez me faire savoir si je ne suis pas clair.

Merci.

112voto

RyanBrady Points 1903

Vous pouvez avoir autant de clés que vous le souhaitez. Il est bon d'utiliser des jeux de clés privées/publiques distincts pour différents domaines, par exemple un jeu pour votre usage personnel, un autre pour votre travail, etc.

Tout d'abord, générez deux paires de clés distinctes, une pour la maison et une pour le travail :

ssh-keygen -t rsa -f ~/.ssh/id_rsa.home
ssh-keygen -t rsa -f ~/.ssh/id_rsa.work

Ensuite, ajoutez une entrée à votre ~/.ssh/config pour choisir la clé à utiliser en fonction du serveur auquel vous vous connectez :

Host home
Hostname home.example.com
IdentityFile ~/.ssh/id_rsa.home
User <your home acct>

Host work
Hostname work.example.com
IdentityFile ~/.ssh/id_rsa.work
User <your work acct>

Ensuite, ajoutez le contenu de votre id_rsa.work.pub en ~/.ssh/authorized_keys sur la machine de travail, et faites de même pour la clé de domicile sur votre machine de travail.

Ensuite, lorsque vous vous connectez au serveur domestique, vous utilisez une des clés, et au serveur professionnel, vous en utilisez une autre.

Notez que vous voulez probablement ajouter les deux clés à votre ssh-agent pour que vous n'ayez pas à taper votre phrase de passe tout le temps.

6voto

MikeyB Points 38317

Il est très utile que les clés de plusieurs utilisateurs soient attribuées à un seul utilisateur. Les raisons les plus courantes sont les suivantes :

  • sauvegarde
  • git (par exemple Push URL: git+ssh://git@git-server/~/repos/MyProject )
  • rsync
  • accès commun à une application

Pour ce qui est d'avoir des homedirs différents, vous pouvez les changer par clé en ajoutant en préambule environment="HOME=/home/user1" pour la clé de user1 dans le fichier authorized_keys. Voir man authorized_keys .

Essayez-le, YMMV.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X