J'ai eu cette permission refusée quand je veux ssh
à mon hôte ec2
. J'ai essayé la solution existante chmod 600 "My.pem"
mais je n'ai toujours pas fonctionné. Voici mes informations de débogage:
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 21: Applying options for *
debug1: Connecting to 54.223.47.74 [54.223.47.74] port 22.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file My.pem type -1
debug1: key_load_public: No such file or directory
debug1: identity file My.pem-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.9
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1
debug1: match: OpenSSH_6.6.1 pat OpenSSH_6.6.1* compat 0x04000000
debug1: Authenticating to 54.223.47.74:22 as 'root'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client [email protected] <implicit> none
debug1: kex: client->server [email protected] <implicit> none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server Host key: ecdsa-sha2-nistp256 SHA256:tfjxcE5kePSv1cJK7SWBp/56kgm2DQkyPLSLZ4d73Io
debug1: Host '54.223.47.74' is known and matches the ECDSA Host key.
debug1: Found key in /Users/tan/.ssh/known_hosts:24
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic
debug1: Next authentication method: publickey
debug1: Trying private key: My.pem
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic
debug1: No more authentication methods to try.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
J'ai résolu ce problème dans ma machine centos en utilisant la commande suivante:
ssh -i <Your.pem> ec2-user@<YourServerIP>
Il s’agissait de userName qui était ec2-user
dans mon cas.
Référencé depuis: AMAZONTroubleshooting
Résolu en se connectant avec l'utilisateur centos
au lieu de ec2-user
.
ajouter un utilisateur à /etc/sshd_special_user
cd .ssh
rm authorized_keys
archivez ou éditez et supprimez la clé enregistrée pour la machine à laquelle vous essayez d'accéder.
Modifiez les autorisations sur le fichier de clé avec chmod 400 keyname
(assurez-vous que keyname
correspond exactement à ce que vous avez sur Amazon).
Réessayez avec ec2-user@IPaddress -i keypair.pem
Vérifiez si vous êtes dans le même répertoire que celui où se trouve votre clé ..__ J'ai eu le même problème et compris qu'il s'agissait du mauvais répertoire dans lequel j'ai essayé de me connecter
Soluction dans le terminal pour erreur
Autorisation refusée (publickey, gssapi-keyex, gssapi-with-mic, mot de passe).
ssh-keygen -f " ~/.ssh/known_hosts" -R xx.xx.xxx.xxx
xx - hôte ip