
ssh-keygen을 사용하여 공개/개인 키 쌍을 생성하려고 합니다. "BEING RSA PRIVATE KEY"라고 표시되도록 키가 PKCS1 형식이어야 합니다. 내가 무엇을 시도해도 PKCS8 형식으로만 생성되는 것 같습니다. 문제가 무엇인지에 대한 의견이 있으십니까?
다음 명령을 실행하고 있습니다.
ssh-keygen -m PEM -t rsa -b 2048
내 이해에 따르면 -m PEM 형식을 지정하면 PKCS1 형식으로 생성되어야 합니다. 나는 말할 키의 헤더를 기대하고 있습니다
-----BEGIN RSA PRIVATE KEY-----
하지만 대신에 그것은 말한다
-----BEGIN PRIVATE KEY-----
이것은 그것이 PKCS8 형식이라고 믿게 만듭니다. 이 문제를 해결하는 방법에 대한 의견이 있으십니까? openssh 버전 7.4p1을 사용하고 있습니다.
답변1
옵션 사용을 중지하세요 -m PEM
. 정상적으로 키를 생성하면 됩니다.
답변2
ssh-keygen
지원 여부를 확인 -m
하고 소문자 형식 값(예 -m pem
: .
예를 들어,
$ ssh-keygen -b 2048 -t rsa -m pem -f /tmp/pem_rsa -N "" 2>/dev/null 1>/dev/null && head -n2 /tmp/pem_rsa
-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEA1WLQy9mF43mVJTaTJq8e/aGs5HNMxHYx2wFra5tdMfEk3Li7
$ ssh-keygen -b 2048 -t rsa -m pkcs8 -f /tmp/pkcs8_rsa -N "" 2>/dev/null 1>/dev/null && head -n2 /tmp/pkcs8_rsa
-----BEGIN PRIVATE KEY-----
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDLX2+JYL4Rf+JT