Est-ce une mauvaise idée d'utiliser la même clé privée ssh sur plusieurs ordinateurs?


35

J'ai récemment acheté un ordinateur portable sur lequel j'ai besoin d'accéder aux mêmes hôtes distants que je le fais depuis mon bureau. Je me suis dit qu'il serait peut-être possible de simplement copier le fichier de clé privée de mon bureau sur mon ordinateur portable et d'éviter de devoir ajouter une nouvelle clé aux ~/.ssh/authorized_keysfichiers sur tous les hôtes auxquels je souhaite accéder. Donc mes questions sont:

  1. Est-ce seulement possible?
  2. Existe-t-il des implications non évidentes pour la sécurité?
  3. Parfois, je vais me connecter à mon bureau à partir de mon ordinateur portable. Si la même clé était utilisée, cela poserait-il des problèmes?

2
J'imagine que vous voulez parler des allowed_keys, not_hosts. Le premier est pour entrant, le dernier pour sortant.
Matthew Schinckel

Bonne prise. Fixé.
Jason Creighton

Réponses:


29

Oui, c'est possible Votre clé privée n'est pas liée à une seule machine.

Vous ne savez pas ce que vous entendez par non évident, c’est souvent subjectif;). Ce n'est pas une mauvaise idée du tout si vous vous assurez que vous avez un ensemble de phrases de passe très fort, au moins 20 caractères.

Il n’ya aucun problème à vous connecter avec la même clé que votre bureau. Je configurerais un agent ssh pour votre clé sur l'ordinateur portable et le transférerais sur le bureau afin que vous utilisiez cette clé sur d'autres systèmes auxquels vous avez accès.

A partir de la page de manuel ssh-agent sur un système Linux:

ssh-agent est un programme destiné à contenir les clés privées utilisées pour l'authentification par clé publique (RSA, DSA). L'idée est que ssh-agent est démarré au début d'une session X ou d'une session de connexion, et que toutes les autres fenêtres ou programmes sont lancés en tant que clients du programme ssh-agent. Grâce à l'utilisation de variables d'environnement, l'agent peut être localisé et utilisé automatiquement pour l'authentification lors de la connexion à d'autres machines à l'aide de ssh (1).

Vous exécuterez ceci sur votre ordinateur portable, soit le programme ssh-agent sous Linux / Unix (fourni avec OpenSSH), ou avec l'agent puTTY si vous utilisez Windows. Vous n'avez pas besoin que l'agent s'exécute sur des systèmes distants, il conserve simplement votre clé privée en mémoire sur le système local. Vous ne devez donc entrer votre phrase secrète qu'une seule fois pour charger la clé dans l'agent.

Le transfert d’agent est une fonctionnalité du client ssh ( sshou mastic) qui persiste simplement sur l’agent jusqu’à d’autres systèmes via la connexion ssh.


1
Je ne comprends pas très bien ce que vous suggérez en ce qui concerne le transfert d’agent ssh. Pourriez-vous élaborer un peu sur ce point? Je dois mentionner que je ne peux pas compter sur un ordinateur de bureau toujours accessible lorsque je dois utiliser mon ordinateur portable.
Jason Creighton

Mise à jour de la réponse :)
jtimberman

10

J'avais l'habitude d'utiliser une seule clé privée sur toutes mes machines (et certaines d'entre elles sur lesquelles je ne suis qu'un utilisateur, pas un administrateur), mais j'ai récemment changé cela. Cela fonctionne avec la clé unique, mais cela signifie que si vous devez révoquer la clé (si elle est compromise), vous devrez la changer sur toutes les machines.

Bien sûr, si un attaquant obtient l'accès et est capable de ssh sur une autre machine, il peut alors obtenir la clé de cette machine, etc. Mais je me sens un peu plus en sécurité de savoir que je ne peux révoquer qu'une clé et verrouiller cette machine. Cela signifie cependant que je dois supprimer la clé du fichier allowed_keys.


Désolé de necro un ancien post, mais pensez-vous que cela serait atténué en cryptant votre clé privée avec un mot de passe? Ou dans votre cas, le mot de passe a-t-il également été compromis?
Troisième

1
Il serait probablement atténué par la présence d'une phrase secrète sur la clé. En réalité cependant, vous pourriez probablement utiliser le transfert ssh (à l'aide d'un agent), puis ne disposer que d'une clé par machine réelle que vous utilisez et la protéger par un mot de passe.
Matthew Schinckel
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.