Saya kesulitan dengan izin yang sama karena kesalahan ternyata
key_parse_private2: missing begin marker
Dalam situasi saya penyebabnya adalah file konfigurasi ssh dari pengguna saat ini (~ / .ssh / config).
Menggunakan yang berikut ini:
ssh -i ~/myKey.pem ec2-user@<IP address> -v 'exit'
Output awal menunjukkan:
debug1: Reading configuration data /home/ec2-user/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 56: Applying options for *
debug1: Hostname has changed; re-reading configuration
debug1: Reading configuration data /home/ec2-user/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
... banyak garis debug memotong di sini ...
debug1: Next authentication method: publickey
debug1: Trying private key: /home/ec2-user/somekey.pem
debug1: key_parse_private2: missing begin marker
debug1: read PEM private key done: type RSA
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Baris ketiga di atas adalah tempat masalah aktual diidentifikasi; Namun, saya mencari pesan debug empat baris dari bawah (atas) dan disesatkan. Tidak ada masalah dengan kunci tetapi saya mengujinya dan membandingkan konfigurasi lainnya.
File konfigurasi ssh pengguna saya mengatur ulang host melalui pengaturan global yang tidak diinginkan seperti yang ditunjukkan di bawah ini. Baris Host pertama seharusnya bukan komentar.
$ cat config
StrictHostKeyChecking=no
#Host myAlias
user ec2-user
Hostname bitbucket.org
# IdentityFile ~/.ssh/somekey
# IdentitiesOnly yes
Host my2ndAlias
user myOtherUser
Hostname bitbucket.org
IdentityFile ~/.ssh/my2ndKey
IdentitiesOnly yes
Saya harap orang lain menemukan ini bermanfaat.