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_keybekerja 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 -ltidak 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 .pubmenambahkan misalnya id_rsa.pub. Lama ssh-keygen -l akan mencoba menambahkan .pubke nama file yang Anda tentukan dan membaca file publickey itu.
.ssh/id_rsafile 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.