Çalışan bir ssh-agent'a eklediğim bir PEM dosyam var:
$ 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)
Anahtarın parmak izini (ssh-agent'ta gördüğüm) doğrudan dosyadan nasıl alabilirim? ssh-keygen -l -f some_key
"Normal" ssh tuşları için çalıştığını biliyorum ama PEM dosyaları için değil.
.Pem dosyasında ssh-keygen'i denersem, şunu alıyorum:
$ 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.
Bu anahtar ile başlar:
-----BEGIN RSA PRIVATE KEY-----
MIIEp.... etc.
gibi görünen "normal" bir özel anahtara karşı:
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,E15F2.... etc.
ssh-keygen -l
privatekey dosyasını okuyamaz, ancak diğer ssh-keygen
(ve ssh*
) işlemler de yapar. Ama ssh-keygen
üreten bir anahtar o privatekey dosya örneğin hem yazıyor id_rsa
ve bir tekabül eden publickey dosyası .pub
eklendi ör id_rsa.pub
. Daha eski ssh-keygen -l
,.pub
belirttiğiniz dosya adına eklemeyi ve bu publickey dosyasını okumayı dener.
.ssh/id_rsa
Tüm varsayılanları kullanarak OpenSSH tarafından oluşturulan bir dosya IS PEM dosyasıdır. Özel anahtarlar varsayılan olarak PEM kodludur. Aslında OpenSSL ile oluşturduğunuz RSA anahtarlarını doğrudan OpenSSH ile kullanabilirsiniz.