117 votes

Est-il possible de partager un fichier de clé privée entre plusieurs ordinateurs/services ?

Nous savons donc tous comment utiliser des clés publiques/privées en utilisant SSH, etc. Mais quelle est la meilleure façon de les utiliser/réutiliser ? Dois-je les conserver en lieu sûr pour toujours ? Par exemple, j'avais besoin d'une paire de clés pour accéder à GitHub. J'ai créé une paire à partir de zéro et l'ai utilisée pendant un certain temps pour accéder à GitHub. Puis j'ai formaté mon disque dur et j'ai perdu cette paire. La belle affaire, j'ai créé une nouvelle paire et configuré GitHub pour qu'il utilise ma nouvelle paire. Ou est-ce quelque chose que je ne veux pas perdre ?

J'avais également besoin d'une paire de clés publiques/privées pour accéder aux systèmes de notre entreprise. Notre administrateur m'a demandé ma clé publique et j'ai généré une nouvelle paire que je lui ai donnée. Est-il généralement préférable de créer une nouvelle paire pour accéder à différents systèmes ou est-il préférable d'avoir une seule paire et de la réutiliser pour accéder à différents systèmes ? De même, est-il préférable de créer deux paires différentes et d'en utiliser une pour accéder aux systèmes de notre entreprise depuis la maison et l'autre pour accéder aux systèmes depuis le travail, ou est-il préférable de n'avoir qu'une seule paire et de l'utiliser depuis les deux endroits ?

91voto

Vous devez absolument avoir des clés privées distinctes par origine . En gros, cela signifie qu'il devrait généralement y avoir une seule copie de chaque clé privée (sans compter les sauvegardes). Il est possible d'utiliser la même clé privée pour des machines étroitement liées, dans des situations où l'accès à l'une d'entre elles vous donne accès à l'autre (par exemple, si elles se trouvent dans le répertoire de l'autre). shosts.equiv ). N'utilisez pas la même clé privée sur des machines situées dans des domaines différents (par exemple, à la maison et au travail), ne partagez jamais une clé privée entre deux utilisateurs et ne partagez jamais une clé privée entre un ordinateur portable et toute autre machine.

Dans la plupart des cas, je ne vois pas l'intérêt d'avoir des clés privées différentes pour des destinations différentes. Si une clé privée est compromise, toutes les autres clés privées stockées dans le même répertoire le seront sûrement aussi, d'où une complication supplémentaire sans aucun avantage pour la sécurité.

Si vous suivez ces principes, chaque paire de clés identifie une paire (machine, utilisateur), ce qui facilite la gestion des autorisations.

Je peux penser à deux exceptions à la règle générale d'une seule clé privée par origine :

  • Si vous disposez d'une clé sans mot de passe qui ne donne accès qu'à une commande spécifique sur une machine spécifique (par exemple, un mécanisme de sauvegarde ou de notification automatisée), cette clé doit être différente de la clé d'accès générale Shell.
  • Si certaines machines sont connectées par intermittence, il se peut que vous ayez une ancienne clé privée à côté d'une nouvelle clé privée, jusqu'à ce que vous ayez fini de déployer la nouvelle clé.

4voto

Maz Points 1

Je ne sais pas quelle est la meilleure méthode, mais je peux dire quelle est la mienne.

En tant qu'administrateur système, j'utilise une clé différente pour accéder à chaque serveur/service en tant que root. De cette façon, si une clé est perdue ou compromise, je limite le risque à un seul serveur et je n'ai pas besoin de mettre à jour tous mes services avec de toutes nouvelles clés.

En parlant d'utilisateurs, j'utilise une clé différente pour chacun d'entre eux. Avec cette clé, l'utilisateur peut accéder au service dont il a besoin en tant qu'utilisateur non privilégié. De cette façon, je peux facilement accorder ou révoquer l'accès à des services uniques à chaque utilisateur. Si l'utilisateur perd sa clé, je peux la supprimer de tous les services et limiter le risque d'accès non autorisé.

2voto

Gintas_ Points 113

Je pense que vous pouvez utiliser la clé privée n'importe où tant que vous y mettez une phrase de passe, c'est-à-dire que si vous souhaitez partager votre clé privée avec quelques machines, disons ordinateur portable 1, 2, ordinateur de bureau 1, 2, cela devrait aller.

D'après mon expérience, ma machine principale est mon ordinateur de bureau qui fait la plupart de mon travail avec son puissant processeur, mais parfois j'ai besoin d'utiliser mon ordinateur portable en déplacement, pour le dépannage dans un centre de données et autres, donc, je peux toujours me connecter à tous les hôtes dans lesquels ma clé publique réside.

0voto

Jonas Points 1129

Dans mon entreprise, nous utilisons ces clés spécifiques aux utilisateurs. Cela veut dire qu'il y a deux cas. L'utilisateur possède sa propre clé et celle-ci est utilisée pour chaque machine qu'il utilise pour se connecter au système de l'entreprise. Cela signifie que vous utilisez cette clé sur chaque machine dont vous avez besoin pour vous connecter aux réseaux spécifiques. Dans votre cas, ce serait une clé pour GitHub et une clé pour le système de l'entreprise. Donc, si votre administrateur vous le demande à nouveau, je lui donnerais la même clé que la dernière fois, pas une nouvelle. Mais je ne sais pas s'il existe une politique d'utilisation commune pour ces clés et si je m'y prends mal depuis. C'est bien possible ;-)

0voto

Kissaki Points 295

La clé publique que vous avez générée est destinée à tout le monde. Elle leur permettra de a) vérifier l'authenticité b) de chiffrer pour vous

La clé privée est, eh bien, privée. Elle n'est destinée qu'à vous. Et c'est la clé que vous devez sauvegarder quelque part, dans un endroit sûr. Vous pouvez également la crypter avec un mot de passe sécurisé si vous la sauvegardez sur une clé USB par exemple.

La clé publique est votre identité pour les autres. Il n'y a donc aucun problème / il est préférable d'utiliser une paire de clés pour tout, du moins lorsque vous ne voulez pas utiliser une nouvelle identité explicite, afin que les autres ne sachent pas que c'est vous.

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