ไม่สามารถ ssh ถึง GCE:“ ปฏิเสธสิทธิ์ (publickey)”


20

ฉันสร้าง VM ผ่าน Bitnami ใน Google Compute Engine ก่อนหน้านี้ฉันสามารถ ssh ผ่านทางเว็บอินเตอร์เฟส Bitnami ฉันพยายาม ssh ผ่านเทอร์มินัลบน Mac ของฉัน แต่ยังคงได้รับPermission denied (publickey)ข้อผิดพลาด ฉันลบคีย์ทั้งหมดบนเซิร์ฟเวอร์และ Mac ของฉันแล้วดาวน์โหลดไฟล์ pem ในรูปแบบ bitnami และใช้-iตัวเลือกเพื่อเชื่อมต่อ แต่ยังคงมีปัญหาอยู่

ssh -i bitnami-gce.pem xxx@1xx.1xx.5x.1xx -v

กรอกข้อมูลการแก้ไขข้อบกพร่อง:

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 hmac-md5-etm@openssh.com none
debug1: kex: client->server aes128-ctr hmac-md5-etm@openssh.com 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).

ฉันไม่สามารถไปที่โฮสต์ได้ ดังนั้นไม่สามารถส่งคีย์ใด ๆ ไปยังเซิร์ฟเวอร์ได้ในขณะนี้ วิธีแก้ปัญหานี้

แก้ไข: ฉันพยายาม ssh ผ่านเว็บคอนโซลของ Google และฉันสามารถทำได้ ใครสามารถบอกขั้นตอนที่แน่นอนที่จะ ssh จากที่ใดก็ได้? ฉันชอบชื่อผู้ใช้และรหัสผ่านแบบง่ายวิธีกำหนดค่าแบบนั้นเป็นอย่างไร


1. หลังจากสร้างคีย์ ssh ใหม่ 2. เพิ่มคีย์ ssh สาธารณะของโครงการcloud.google.com/compute/docs/instances/ …
Sing-ngam

คำตอบ:


19

หลังจากที่ฉันสามารถ ssh ผ่านทางเว็บคอนโซลของ Google ฉันได้ทำขั้นตอนต่อไปนี้เพื่อแก้ไขปัญหานี้:

  1. สร้างคีย์ ssh โดยใช้

    ssh-keygen

  2. คัดลอกเนื้อหาไฟล์ key.pub

  3. ต่อท้ายเนื้อหาที่จะ~/.ssh/authorized_keysยื่น

    sudo nano ~/.ssh/authorized_keys


5

เมื่ออินสแตนซ์ของคุณถูกสร้างขึ้นครั้งแรกมันจะไม่มีคีย์ SSH ใด ๆ อยู่ภายในโดยค่าเริ่มต้นดังนั้นคุณต้องถ่ายโอนที่นั่นเช่นโดยใช้gcloudเพื่อเชื่อมต่อกับมันเป็นครั้งแรกตามที่อธิบายไว้ในคำตอบ SO นี้หรือโดยการสร้างคีย์ SSH ด้วยตนเอง และตนเองเพิ่มลงในอินสแตนซ์ที่อธิบายไว้ในคำตอบ SO อีก


5

ฉันต้องเผชิญกับสถานการณ์เดียวกันเพราะผู้ใช้ ในเว็บ google ชื่อผู้ใช้ของฉันแสดงบางส่วนในอีเมลของฉัน ดังนั้นฉันจึงพยายามแบบนี้

ssh <first_part_of_gmail>@google_vm_external_ip

ต่อมาฉันค้นพบว่า google สร้างผู้ใช้โดยยึดตามคีย์ ssh ที่คุณใส่ในการตั้งค่า google vm ดังนั้นก่อนอื่นให้ตรวจสอบผู้ใช้ที่ท้ายรหัสสาธารณะแล้วลองทำตาม

ssh <user_name_at_the_end_of_public_key>@google_vm_external_ip

ช่วยชีวิตฉันไว้ ขอบคุณ
Tran Dinh Khanh

2

มีปัญหาเดียวกันฉันใช้คำสั่ง gcloud เพื่อเข้าสู่ระบบเป็นครั้งแรกและเพิ่มใน "/ etc / ssh / sshd_config"

PubkeyAcceptedKeyTypes  +ssh-dss

systemctl รีสตาร์ท sshd


0

เป็นคำถามเก่า แต่ฉันมีปัญหาในวันนี้ด้วยและแก้ไขได้โดยทำตามขั้นตอนเหล่านี้:

  1. สร้างรหัสสาธารณะ ssh จากเครื่องคอมพิวเตอร์ของคุณ
  2. คัดลอกกุญแจสาธารณะไปยังการตั้งค่าเครื่องเสมือน gcc

จากนั้นเชื่อมต่อ

ขั้นตอนเหล่านี้จะแนะนำให้คุณเชื่อมต่อกับอินสแตนซ์ gcc vm ของคุณบน mac os โดยใช้ ssh: https://nabtron.com/gcc-mac-terminal/และจะแก้ไขปัญหาการอนุญาตที่ถูกปฏิเสธ (pubilckey) เช่นกัน

ฉันหวังว่ามันจะช่วย


0

คุณต้องตรวจสอบให้แน่ใจว่าคุณได้รับอนุญาตจาก bitnami-gce.pem คือ 600

ลอง chmod 600 bitnami-gce.pem

ขอแสดงความนับถืออาเหม็ด

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.