web-dev-qa-db-fra.com

AVERTISSEMENT: FICHIER DE CLÉ PRIVÉE NON PROTÉGÉ! lors de la tentative de SSH dans l'instance Amazon EC2

Je travaille actuellement à la configuration de Panda sur une instance Amazon EC2 ..__ J'ai créé mon compte et mes outils la nuit dernière et je n'ai eu aucun problème à utiliser SSH pour interagir avec ma propre instance personnelle, mais je ne suis pas autorisé à le faire. dans l'instance EC2 de Panda . Démarrer avec Panda

Je reçois l'erreur suivante:

@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @

Permissions 0644 for '~/.ec2/id_rsa-gsg-keypair' are too open.
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.

J'ai modifié ma paire de clés à 600 pour accéder à mon instance personnelle la nuit dernière et j'ai longuement essayé de définir les autorisations à 0 et même de générer de nouvelles chaînes de clés, mais rien ne semble fonctionner.

Toute aide serait une aide précieuse!


Hm, il semble qu'à moins que les autorisations ne soient définies sur 777 dans le répertoire, le script ec2-run-instances ne parvient pas à trouver mes fichiers de clés . Je suis nouveau sur SSH et je risque donc de négliger quelque chose.

146
btw

J'ai chmodé mon clavier à 600 pour entrer dans mon cas personnel hier soir,

Et c'est comme ça que ça doit être. 

Dans la documentation EC2 , nous avons "Si vous utilisez OpenSSH (ou tout autre client SSH raisonnablement paranoïaque), vous devrez probablement définir les autorisations de ce fichier afin qu'il ne soit lisible que par vous." La documentation Panda à laquelle vous créez un lien renvoie à la documentation d'Amazon mais ne dit pas à quel point tout cela est important.

L'idée est que les fichiers de paire de clés sont comme des mots de passe et doivent être protégés. Ainsi, le client ssh que vous utilisez nécessite que ces fichiers soient sécurisés et que seul votre compte puisse les lire.

Définir le répertoire sur 700 devrait suffire, mais 777 ne fera pas de mal tant que les fichiers sont en 600.

Tous les problèmes que vous rencontrez sont du côté client, alors assurez-vous d'inclure les informations du système d'exploitation local avec les questions suivantes! 

173
Stu Thompson

Assurez-vous que le répertoire contenant les fichiers de clé privée est défini sur 700

chmod 700 ~/.ec2
45
Mark Biek

Pour résoudre ce problème, 1) vous devrez réinitialiser les autorisations par défaut:

Sudo chmod 600 ~/.ssh/id_rsa Sudo chmod 600 ~/.ssh/id_rsa.pub

Si vous obtenez une autre erreur: Êtes-vous sûr de vouloir continuer à vous connecter (oui/non)? oui Impossible d'ajouter l'hôte à la liste des hôtes connus (/home/geek/.ssh/known_hosts).

2) Cela signifie que les autorisations sur ce fichier sont également définies de manière incorrecte et peuvent être ajustées avec ceci:

Sudo chmod 644 ~/.ssh/known_hosts

3) Enfin, vous devrez peut-être également ajuster les autorisations du répertoire:

Sudo chmod 755 ~/.ssh

Cela devrait vous remettre en marche.

20
Alena

Le fichier de clé privée doit être protégé. Dans mon cas, j’utilise l’authentification public_key depuis longtemps et j’utilisais auparavant la permission 600 (rw- --- ---) pour la clé privée et 644 (rw- r-- r--) et le dossier .ssh dans le dossier de base, vous aurez l'autorisation 700 (rwx --- ---). Pour le définir, accédez au dossier de base de l'utilisateur et exécutez la commande suivante


Définir le dossier 700 pour le dossier .ssh

chmod 700 .ssh


Définir le fichier 600 permission pour le fichier de clé privée

chmod 600 .ssh/id_rsa


Définir 644 permission pour le fichier de clé publique

chmod 644 .ssh/id_rsa.pub
13
Sandeep Sasikumar

J'ai également le même problème, mais je résous le problème en modifiant l'autorisation d'accès au fichier clé à 600.

Sudo chmod 600 /path/to/my/key.pem

Lien: http://stackabuse.com/how-to-fix-warning-unprotected-private-key-file-on-mac-and-linux/

3
ANAND SONI

Conservez votre clé privée, votre clé publique et vos éléments connus dans le même répertoire et essayez de vous connecter comme ci-dessous:

ssh -I (petit i) "hi.pem" utilisateur ec2 @ ec2 ----. us-west-2.compute.amazonaws.com

  • Même répertoire en ce sens, Cd/Utilisateurs/prince/Desktop Maintenant, tapez la commande ls , Vous devriez voir **. Pem **. Ppk known_hosts

Remarque: Vous devez essayer de vous connecter à partir du même répertoire. Sinon, vous obtiendrez une erreur d’autorisation refusée car il ne peut pas extraire le fichier .ppm de votre répertoire actuel.

1
Prince Charu

Juste un mot pour quiconque trébuche sur ceci:

Si vous essayez de SSH avec une clé partagée avec vous, par exemple:

ssh -i /path/to/keyfile.pem user@some-Host

keyfile.pem est la clé privée/publique partagée avec vous et que vous utilisez pour vous connecter, assurez-vous de l'enregistrer dans ~/.ssh/ et chmod 777.

Essayer d’utiliser le fichier lorsqu’il a été sauvegardé ailleurs sur ma machine donnait l’erreur du PO. Pas sûr que ce soit directement lié.

0
Kubie

Modifier l'autorisation de fichier à l'aide de la commande chmod

Sudo chmod 700 keyfile.pem
0
Greenkraftz

Je pense à autre chose, si vous essayez de vous connecter avec un nom d'utilisateur différent qui n'existe pas, c'est le message que vous recevrez.

Donc, je suppose que vous essayez peut-être de ssh avec ec2-user mais je me souviens récemment que la plupart des AMI centos, par exemple, utilisent centos user au lieu de ec2-user

donc, si vous êtes ssh -i file.pem centos@public_IP, dites-moi que vous êtes en train de lire ssh avec le bon nom d'utilisateur, sinon cela peut être une raison forte de voir ce message d'erreur même avec les bonnes permissions sur votre ~/.ssh/id_rsa ou file.pem

0
Abdel Hegazi

Sous Windows, essayez d’utiliser git bash et d’utiliser vos commandes Linux. Approche facile

chmod 400 *****.pem

ssh -i "******.pem" [email protected]
0
Dheeraj