Détails
Windows SSH : les autorisations pour 'private-key' ; sont trop ouvertes
J'ai installé OpenSSH 7.6 sous Windows 7 à des fins de test. Le client et le serveur SSH fonctionnent parfaitement jusqu'à ce que j'essaie d'accéder à une de mes boîtes AWS EC2 à partir de cette fenêtre.
Il semble que je doive changer la permission sur le fichier de la clé privée. Cela peut être fait facilement sur unix/linux avec la commande chmod
.
Qu'en est-il de Windows ?
private-key.ppm est copié directement depuis AWS et je suppose que la permission aussi.
C:\>ssh -V
OpenSSH_7.6p1, LibreSSL 2.5.3
C:\>ver
Microsoft Windows [Version 6.1.7601]
C:\>
C:\>ssh ubuntu@192.168.0.1 -i private-key.ppk
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for 'private-key.ppk' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "private-key.ppk": bad permissions
ubuntu@192.168.0.1: Permission denied (publickey).
C:\>
C:\>
C:\>ssh ubuntu@192.168.0.1 -i private-key.ppm
Warning: Identity file private-key.ppm not accessible: No such file or directory.
ubuntu@192.168.0.1: Permission denied (publickey).
C:\>
105
3
Localisez le fichier dans l'Explorateur Windows, cliquez dessus avec le bouton droit de la souris et sélectionnez "Propriétés". Naviguez jusqu'à l'onglet "Security" ; et cliquez sur "Advanced" ;.
Changez le propriétaire en vous, désactivez l'héritage et supprimez toutes les permissions. Puis accordez-vous le "contrôle total" et enregistrez les autorisations. Désormais, SSH ne se plaindra plus d'une autorisation de fichier trop ouverte.
Au final, cela devrait ressembler à ceci :
[!entrer la description de l'image ici][1]][1]
[1] : https://i.stack.imgur.com/coCbX.gif
Les clés ne doivent être accessibles qu'à l'utilisateur auquel elles sont destinées et à aucun autre compte, service ou groupe.
CLI:
langage : lang-powershell -->
J'ai eu le même problème, et il semble qu'il soit lié à la version de SSH que vous exécutez.
Si je tape
J'obtiens...
Lorsque j'exécute
ssh -V
dans les deux emplacements, j'obtiens...respectivement
Ainsi, lorsque j'exécute
ssh
à partir du répertoire git/bin, il fonctionne bien et ne se plaint pas des permissions, mais en exécutant la même ligne de commande, en utilisant l'ancienne installation de SSH, il revient avec ceci.ps. les permissions sur le fichier sont juste un accès complet pour moi-même, et rien d'autre.