Saya memiliki file PEM yang saya tambahkan ke ssh-agent yang sedang berjalan:
$ file query.pem
query.pem: PEM RSA private key
$ ssh-add ./query.pem
Identity added: ./query.pem (./query.pem)
$ ssh-add -l | grep query
2048 ef:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX ./query.pem (RSA)
Bagaimana saya bisa mendapatkan sidik jari kunci (yang saya lihat di ssh-agent) langsung dari file? Saya tahu ssh-keygen -l -f some_key
bekerja untuk kunci ssh "normal", tetapi tidak untuk file PEM.
Jika saya mencoba ssh-keygen pada file .pem, saya mendapatkan:
$ ssh-keygen -l -f ./query.pem
key_read: uudecode PRIVATE KEY----- failed
key_read: uudecode PRIVATE KEY----- failed
./query.pem is not a public key file.
Kunci ini dimulai dengan:
-----BEGIN RSA PRIVATE KEY-----
MIIEp.... etc.
sebagai lawan dari kunci pribadi "biasa", yang terlihat seperti:
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,E15F2.... etc.
ssh-keygen -l
tidak dapat membaca file privatekey, meskipun operasi ssh-keygen
(dan ssh*
) lainnya melakukannya. Tetapi ketika ssh-keygen
menghasilkan kunci itu menulis baik file privatekey misalnya id_rsa
dan file publickey yang sesuai dengan .pub
menambahkan misalnya id_rsa.pub
. Lama ssh-keygen -l
akan mencoba menambahkan .pub
ke nama file yang Anda tentukan dan membaca file publickey itu.
.ssh/id_rsa
file yang dihasilkan oleh OpenSSH menggunakan semua default IS file PEM. Kunci pribadi adalah PEM disandikan secara default. Bahkan Anda dapat menggunakan kunci RSA yang Anda hasilkan dengan OpenSSL langsung dengan OpenSSH.