web-dev-qa-db-fra.com

Impossible de ssh vers GCE: "Autorisation refusée (publickey)"

J'ai créé un VM via Bitnami dans Google Compute Engine. Auparavant, je pouvais ssh via l'interface Web de Bitnami. J'ai essayé de ssh via le terminal sur mon Mac mais j'ai continué à obtenir la fonction Permission denied (publickey) erreur. J'ai ensuite supprimé toutes les clés du serveur et de mon Mac et téléchargé le fichier pem sous forme bitnami et utilisé -i option de connexion mais le problème persiste.

ssh -i bitnami-gce.pem [email protected] -v

Informations de débogage complètes:

OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Connecting to 1xx.1xx.5x.1xx [1xx.1xx.5x.1xx] port 22.
debug1: Connection established.
debug1: identity file bitnami-gce.pem type -1
debug1: identity file bitnami-gce.pem-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1p1 Debian-4~bpo70+1
debug1: match: OpenSSH_6.6.1p1 Debian-4~bpo70+1 pat OpenSSH*
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr [email protected] none
debug1: kex: client->server aes128-ctr [email protected] none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server Host key: RSA <RSA KEY>
debug1: Host '1xx.1xx.5x.1xx' is known and matches the RSA Host key.
debug1: Found key in /Users/xxx/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
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
debug1: Next authentication method: publickey
debug1: Trying private key: bitnami-gce.pem
debug1: read PEM private key done: type RSA
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).

Je ne peux pas envoyer de ssh à l'hôte. Je ne peux donc pas envoyer de clés au serveur maintenant. Comment résoudre ça?

Edit: j'ai essayé de ssh via la console web Google et j'ai pu le faire. Quelqu'un peut-il me dire les étapes exactes pour ssh de n'importe où? Je préfère le simple nom d'utilisateur et mot de passe, comment le configurer de cette façon?

22
NEO

Après avoir pu ssh via la console Web Google, j'ai fait les étapes suivantes pour résoudre ce problème:

  1. Générer une clé ssh à l'aide

    ssh-keygen

  2. Copiez le contenu du fichier key.pub

  3. Ajoutez le contenu à ~/.ssh/authorized_keys fichier

    Sudo nano ~/.ssh/authorized_keys

19
NEO

J'ai fait face à la même situation à cause de l'utilisateur. Sur google web shh, mon nom d'utilisateur montrait quelque chose dans la première partie de mon e-mail. Donc j'essayais ssh comme ça

ssh <first_part_of_gmail>@google_vm_external_ip

Plus tard, je découvre que, google crée un utilisateur basé sur la clé ssh que vous mettez sur le paramètre google vm. Donc, vérifiez d'abord l'utilisateur à la fin de la clé publique et essayez de suivre

ssh <user_name_at_the_end_of_public_key>@google_vm_external_ip
10
maruf571

Lorsque votre instance est créée pour la première fois, elle ne contiendra aucune clé SSH par défaut, vous devez donc les y transférer, par exemple en utilisant gcloud pour vous y connecter la première fois comme décrit dans this SO answer ou en créant manuellement des clés SSH et en les ajoutant manuellement à votre instance comme décrit dans n autre SO answer =.

5
Misha Brukman

eu le même problème, j'ai utilisé la commande gcloud pour me connecter pour la première fois et ajouté à "/ etc/ssh/sshd_config"

PubkeyAcceptedKeyTypes  +ssh-dss

systemctl restart sshd

2
Maoz Zadok

vous devez vous assurer que vous déposez l'autorisation bitnami-gce.pem est 600

essayez chmod 600 bitnami-gce.pem

en ce qui concerne Ahmed

0
Ahmed Algharawy

C'est une vieille question, mais j'ai eu ce problème aujourd'hui aussi et l'ai résolu en suivant ces étapes:

  1. générer la clé publique ssh à partir de votre ordinateur local
  2. copier la clé publique dans les paramètres de la machine virtuelle gcc

puis connectez-vous.

Ces étapes vous guideront pour vous connecter à votre instance gcc vm sur le terminal mac os en utilisant ssh: https://nabtron.com/gcc-mac-terminal/ et corrigera le problème de l'autorisation refusée (pubilckey ) aussi.

J'espère que ça aide.

0
Nabeel Khan