ฉันกำลังพยายามเชื่อมต่อกับเซิร์ฟเวอร์ด้วย ssh โดยใช้คีย์ ssh บันทึกข้อผิดพลาดของฉันและยังถามฉันถึงรหัสผ่านซึ่งไม่ควรถามเพราะฉันใช้การรับรองความถูกต้องของคีย์และความตั้งใจของฉันคือไม่ต้องป้อนรหัสผ่าน:
ERROR -- net.ssh.authentication.key_manager[2b02154b7610]: could not load private key file `/home/me/.ssh/id_rsa.pub': ArgumentError (Could not parse PKey: no start line)
รหัสของฉัน:
Net::SSH.start(ip_item, "root", host_key: "ssh-rsa", keys: ["~/.ssh/id_rsa.pub"], verbose: :debug) do |ssh|
นั่นเป็นข้อผิดพลาดหรือไม่? ทำไมมันถึงบอกว่า "ส่วนตัว"?
กุญแจมีอยู่จริง
ฉันสามารถเชื่อมต่อกับเซิร์ฟเวอร์ผ่านทางเทอร์มินัลได้โดยไม่ต้องใช้รหัสผ่าน และมันจะถูกเพิ่มเข้าไปในรายการโฮสต์ที่รู้จักของเซิร์ฟเวอร์อย่างถูกต้องเนื่องจากฉันสามารถเชื่อมต่อได้
นอกจากนี้ cat ~/.ssh/authorized_keys
บนเซิร์ฟเวอร์ยังแสดงรหัสสาธารณะของฉัน