Tidak dapat ssh ke GCE: "Izin ditolak (publickey)"

20

Saya membuat VM melalui Bitnami di Google Compute Engine. Sebelumnya, saya bisa ssh melalui antarmuka web Bitnami. Saya mencoba ssh melalui terminal di Mac saya tetapi terus mendapatkan Permission denied (publickey)kesalahan. Saya kemudian menghapus semua kunci di server dan Mac saya dan mengunduh bitnami dari bentuk file pem dan menggunakan -iopsi untuk menghubungkan tetapi masih masalah tetap ada.

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

Info debug lengkap:

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).

Saya tidak dapat ssh ke tuan rumah. Jadi tidak dapat mengirim kunci apa pun ke server sekarang. Bagaimana cara mengatasinya?

Sunting: Saya mencoba ssh melalui konsol web Google dan saya bisa melakukannya. Adakah yang bisa memberitahu saya langkah-langkah yang tepat untuk ssh dari mana saja? Saya lebih suka cara nama pengguna dan kata sandi yang sederhana, bagaimana cara mengonfigurasinya seperti itu?

NEO
sumber
1. Setelah membuat kunci ssh baru 2. menambahkan kunci proyek ssh publik cloud.google.com/compute/docs/instances/…
Jirayuth Sing-ngam

Jawaban:

19

Setelah saya dapat ssh melalui konsol web Google, saya melakukan langkah-langkah berikut untuk menyelesaikan ini:

  1. Hasilkan kunci ssh menggunakan

    ssh-keygen

  2. Salin konten file key.pub

  3. Tambahkan konten ke ~/.ssh/authorized_keysfile

    sudo nano ~/.ssh/authorized_keys

NEO
sumber
5

Ketika instance Anda pertama kali dibuat, itu tidak akan memiliki kunci SSH di dalamnya secara default, jadi Anda harus mentransfernya di sana, misalnya, dengan menggunakan gclouduntuk menghubungkannya pertama kali seperti yang dijelaskan dalam jawaban SO ini atau dengan secara manual membuat kunci SSH dan menambahkannya secara manual ke instance Anda seperti dijelaskan dalam jawaban SO lainnya .

Misha Brukman
sumber
5

Saya menghadapi situasi yang sama karena pengguna. Di google web shh nama pengguna saya menunjukkan sesuatu bagian pertama dari email saya. Jadi, saya mencoba ssh seperti ini

ssh <first_part_of_gmail>@google_vm_external_ip

Kemudian, saya menemukan bahwa, google membuat pengguna berdasarkan kunci ssh yang Anda masukkan pada pengaturan google vm. Jadi, periksa dulu pengguna di akhir kunci publik, dan coba ikuti

ssh <user_name_at_the_end_of_public_key>@google_vm_external_ip
maruf571
sumber
Selamatkan hidupku. Terima kasih.
Tran Dinh Khanh
2

memiliki masalah yang sama, saya menggunakan perintah gcloud untuk masuk untuk pertama kalinya dan ditambahkan ke "/ etc / ssh / sshd_config"

PubkeyAcceptedKeyTypes  +ssh-dss

systemctl restart sshd

Maoz Zadok
sumber
0

Ini pertanyaan lama, tapi saya juga punya masalah hari ini dan memperbaikinya dengan mengikuti langkah-langkah ini:

  1. buat kunci publik ssh dari komputer lokal Anda
  2. salin kunci publik ke pengaturan mesin virtual gcc

dan kemudian terhubung.

Langkah-langkah ini akan memandu Anda untuk terhubung ke instance gcc vm Anda di terminal mac os menggunakan ssh: https://nabtron.com/gcc-mac-terminal/ dan juga akan memperbaiki masalah izin yang ditolak (pubilckey).

Saya harap ini membantu.

Nabeel Khan
sumber
0

Anda perlu memastikan bahwa Anda mengajukan izin bitnami-gce.pem adalah 600

coba chmod 600 bitnami-gce.pem

salam Ahmed

Ahmed Algharawy
sumber