web-dev-qa-db-fra.com

Que puis-je faire si quelqu'un tamponne avec ma clé publique SSH?

Je comprends que les clés privées soient compromises est un risque énorme; Cependant, qu'en est-il des clés publiques. Et si elles sont altérées?

Si quelqu'un accédait à ma clé publique associée à la clé privée que j'utilise sur SSH dans le serveur Linux et que vous le modifiez, ne m'empêcherais pas d'accéder au serveur; Par conséquent, affectant la disponibilité à ma fin?

31
Kev

Vous pouvez toujours régénérer une clé publique tant que vous avez la clé privée.

Tu demandes:

Si quelqu'un accédait à ma clé publique associée à la clé privée que j'utilise sur SSH dans le serveur Linux et que vous le modifiez, ne m'empêcherais pas d'accéder au serveur; En conséquence, affectant la disponibilité à ma fin?

La situation que vous êtes préoccupée par quelque chose comme vous laissez votre ordinateur sur, ne vous dormez pas, enfouissez-vous pour faire quelque chose, puis quelqu'un va sur votre ordinateur et ajoute simplement quelques caractères à votre clé publique afin qu'il soit efficacement possible. endommagé? Ou même la supprime?

Pas de soucis aussi longtemps que vous avez votre clé privée. Il suffit d'exécuter cette commande:

ssh-keygen -y -f ~/.ssh/id_rsa > ~/.ssh/id_rsa.pub

Et votre clé publique sera régénérée. Notez simplement que le commentaire à la fin de la ligne de clé publique qui vous permet d'identifier plus facilement quelle clé est la suivante: via ce qui est typiquement une adresse e-mail - ne sera pas ajoutée à cette id_rsa.pub via cette méthode. Donc, vous voudrez peut-être l'ouvrir dans un éditeur de texte et ajoutez-le manuellement.

À propos de vos autres préoccupations.

Maintenant, si vous êtes préoccupé par quelqu'un de piratage de la clé publique sur une machine distante d'une manière qui vous refuse d'accéder? Honnêtement, vous auriez un problème assez important à traiter dans un cas comme ça.

En règle générale, une personne aurait besoin de pouvoir accéder à Root-ou à un compte possédant des privilèges de Sudo sans mot de passe ou d'accès à votre propre compte sur cette machine-pour faire cela. Et ce n'est pas inoubliable mais un occurrence rare au mieux.

45
Giacomo1968

On dirait que vous demandez si quelqu'un est entré dans "My" Boîte Linux, modifié le fichier .SSH/Autherized_Keys, qui contient les clés publiques qui permettent l'accès à la boîte Linux et "le modifier, ne m'empêcherait pas d'accéder à la serveur; là-bas (e), affectant la disponibilité à ma fin? "

Oui si la clé publique est modifiée dans le fichier Authorized_Keys, il ne correspondra pas à votre clé privée, mais cela ressemble à dire que quelqu'un est arrivé à l'intérieur de votre maison, a changé votre serrure de la porte et maintenant votre clé de maison ne fonctionne plus.

Comment ont-ils compris le premier endroit pour faire le changement? Seul le propriétaire de la racine et de la connexion peut changer son propre fichier autorisé_keys, de sorte que ce soit vos suspects.

17
MarkT

L'ensemble du point d'une clé publique est d'être largement connu. Il peut être vérifié par le PKI (infrastructure clé publique). Vous pouvez signer des messages (et d'autres choses) avec votre clé privée localement sur votre PC, et d'autres peuvent confirmer que le message vient de vous.

De même, la clé publique peut être mise dans les fichiers de configuration SSH sur des serveurs distants. Lorsque vous SSH dans ces serveurs, ils présentent un défi qui ne peut être répondu que par une personne avec la clé privée appropriée.

Votre question initiale a posé:

"Si quelqu'un accéder à ma clé publique associée à la clé privée que j'utilise sur SSH dans le serveur Linux et que vous le modifiez" ...

ensuite, ce ne serait plus la même clé publique. Vous pouvez régénérer immédiatement la clé publique pour un autre administrateur pour définir la clé publique appropriée.

Vous avez des inquiétudes secondaires: qui d'autre peut avoir accès à ma machine, que peuvent-ils faire et comment puis-je récupérer? Les réponses au tuyau sont compliquées et situationnelles.

Il y a beaucoup de bonnes ressources sur ssh et pki sur le web ... voici un bon départ: SSH Essentials: Utilisation de serveurs SSH, de clients et de clés

14

Oui, s'ils changent de clé publique sur le serveur, cela vous refuserait l'accès au serveur.

Mais c'est encore pire. S'ils changent la clé publique de quelqu'un d'autre, cela signifierait que cette autre personne pourrait vous imiter sur le serveur. C'est à peu près la même chose que les conséquences d'une personne qui change votre mot de passe lors de l'utilisation d'une authentification traditionnelle.

Mais si quelqu'un a la capacité de changer votre clé publique, ils pourraient également avoir la possibilité d'ajouter des clés publiques supplémentaires. Donc, ils pourraient se donner la capacité de vous imiter sans vous refuser l'accès, et vous ne réalisez peut-être jamais que quelque chose n'allait pas jusqu'à ce que quelqu'un vous accuse de faire quelque chose sur le serveur que vous n'avez pas fait.

5
Barmar

Cette question semble semblable à demander "et si une personne modifie la source de mon programme?" À propos du logiciel Open Source, et la réponse est la même: elles ne peuvent que modifier leur copie ou une copie qu'ils ont accès à. Généralement, cela n'a aucun impact sur vous et, si tel est le cas, l'impact n'a rien à voir avec la clé publique, mais plutôt avec la capacité de modifier tortement sur un système, ce qui vous impacte.

Vous devriez le restaurer à partir d'une sauvegarde. Je suis désolé si cela ressemble à une déclaration NSS, mais oui.

Et oui, vous pouvez le régénérer à partir de la clé privée, mais pourquoi n'auriez-vous pas une copie de sauvegarde ou de redondance?

Et s'il s'agit d'une instance de nuage, pourquoi n'auriez-vous pas une autre façon? (Je m'en fiche de manière non professionnelle, Webmin ou similaire). Que feriez-vous si vous perdiez entièrement Sshd?

..et au moins 2 administrateurs, vous ne pouvez donc pas être enfermé.

0
mckenzm