으로 롤랜드는 자신의 대답에 언급, 그것은 경고가가의 ssh-agent
공개 키의 형식을 이해하지 않는, 심지어 다음, 공개 키는 로컬로 사용되지 않습니다.
그러나 경고가있는 이유를 자세히 설명하고 대답 할 수도 있습니다. 단순히 PuTTY 키 생성기 가 프로그램에서 수행하는 작업에 따라 두 가지 다른 공개 키 형식을 생성 한다는 사실로 귀결됩니다 .
참고 : 설명 전반에 걸쳐 사용 / 생성 할 키 파일은 id_rsa
적절한 확장자 로 이름이 지정 됩니다. 또한 복사-붙여 넣기의 편의를 위해 키의 상위 폴더는 ~/.ssh/
. 필요에 따라 이러한 세부 사항을 조정하십시오.
형식
관련 PuTTY 문서 링크
SSH-2
이 때 저장 사용하여 키를 퍼티 키 생성기를 "저장 공개 키"버튼을 사용하여, 그것은에 의해 정의 된 형식으로 저장됩니다 RFC 4716 .
예:
---- BEGIN SSH2 PUBLIC KEY ----
Comment: "github-example-key"
AAAAB3NzaC1yc2EAAAABJQAAAQEAhl/CNy9wI1GVdiHAJQV0CkHnMEqW7+Si9WYF
i2fSBrsGcmqeb5EwgnhmTcPgtM5ptGBjUZR84nxjZ8SPmnLDiDyHDPIsmwLBHxcp
pY0fhRSGtWL5fT8DGm9EfXaO1QN8c31VU/IkD8niWA6NmHNE1qEqpph3DznVzIm3
oMrongEjGw7sDP48ZTZp2saYVAKEEuGC1YYcQ1g20yESzo7aP70ZeHmQqI9nTyEA
ip3mL20+qHNsHfW8hJAchaUN8CwNQABJaOozYijiIUgdbtSTMRDYPi7fjhgB3bA9
tBjh7cOyuU/c4M4D6o2mAVYdLAWMBkSoLG8Oel6TCcfpO/nElw==
---- END SSH2 PUBLIC KEY ----
OpenSSH
대중적인 믿음과는 달리이 형식은 생성기에 의해 저장되지 않습니다. 그러나 "OpenSSH authorized_keys 파일에 붙여 넣기위한 공개 키"라는 제목의 텍스트 상자에 생성되고 표시됩니다. 파일로 저장하려면 텍스트 상자에서 수동으로 복사하여 새 텍스트 파일에 붙여 넣어야합니다.
위에 표시된 키의 경우 다음과 같습니다.
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAhl/CNy9wI1GVdiHAJQV0CkHnMEqW7+Si9WYFi2fSBrsGcmqeb5EwgnhmTcPgtM5ptGBjUZR84nxjZ8SPmnLDiDyHDPIsmwLBHxcppY0fhRSGtWL5fT8DGm9EfXaO1QN8c31VU/IkD8niWA6NmHNE1qEqpph3DznVzIm3oMrongEjGw7sDP48ZTZp2saYVAKEEuGC1YYcQ1g20yESzo7aP70ZeHmQqI9nTyEAip3mL20+qHNsHfW8hJAchaUN8CwNQABJaOozYijiIUgdbtSTMRDYPi7fjhgB3bA9tBjh7cOyuU/c4M4D6o2mAVYdLAWMBkSoLG8Oel6TCcfpO/nElw== github-example-key
키의 형식은 간단 ssh-rsa <signature> <comment>
하며 SSH-2 형식의 파일을 재 배열하여 만들 수 있습니다.
공개 키 재생성
을 사용하는 ssh-agent
경우에도 액세스 할 수 ssh-keygen
있습니다.
OpenSSH 개인 키 ( id_rsa
파일)가있는 경우 다음을 사용하여 OpenSSH 공개 키 파일을 생성 할 수 있습니다.
ssh-keygen -f ~/.ssh/id_rsa -y > ~/.ssh/id_rsa.pub
PUTTY 개인 키 ( id_rsa.ppk
파일) 만있는 경우 먼저 변환해야합니다.
- PuTTY 키 생성기 열기
- 메뉴 모음에서 "파일"> "개인 키로드"를 클릭합니다.
id_rsa.ppk
파일 선택
- 메뉴 표시 줄에서 "변환"> "OpenSSH 키 내보내기"를 클릭합니다.
- 파일을 다른 이름으로 저장
id_rsa
(확장자 없음)
이제 OpenSSH 개인 키가 ssh-keygen
있으므로 위와 같은 도구를 사용 하여 키에 대한 조작을 수행 할 수 있습니다 .
보너스 : PKCS # 1 PEM 인코딩 공개 키 형식
솔직히 말해서이 키가 필요하지 않았기 때문에이 키가 어떤 용도로 사용되는지 모르겠습니다. 그러나 나는 수년에 걸쳐 수집 한 노트에 그것을 가지고 있으며 건전한 선을 위해 여기에 포함시킬 것입니다. 파일은 다음과 같습니다.
-----BEGIN RSA PUBLIC KEY-----
MIIBCAKCAQEAhl/CNy9wI1GVdiHAJQV0CkHnMEqW7+Si9WYFi2fSBrsGcmqeb5Ew
gnhmTcPgtM5ptGBjUZR84nxjZ8SPmnLDiDyHDPIsmwLBHxcppY0fhRSGtWL5fT8D
Gm9EfXaO1QN8c31VU/IkD8niWA6NmHNE1qEqpph3DznVzIm3oMrongEjGw7sDP48
ZTZp2saYVAKEEuGC1YYcQ1g20yESzo7aP70ZeHmQqI9nTyEAip3mL20+qHNsHfW8
hJAchaUN8CwNQABJaOozYijiIUgdbtSTMRDYPi7fjhgB3bA9tBjh7cOyuU/c4M4D
6o2mAVYdLAWMBkSoLG8Oel6TCcfpO/nElwIBJQ==
-----END RSA PUBLIC KEY-----
이 파일은 다음을 사용하여 OpenSSH 개인 키 (위의 "공개 키 재생성"에서 생성됨)를 사용하여 생성 할 수 있습니다.
ssh-keygen -f ~/.ssh/id_rsa -y -e -m pem > ~/.ssh/id_rsa.pem
또는 다음을 사용하여 OpenSSH 공개 키를 사용할 수 있습니다.
ssh-keygen -f ~/.ssh/id_rsa.pub -e -m pem > ~/.ssh/id_rsa.pem
참조 :