development

PuTTYgen (Windows)을 사용하여 생성 된 SSH 키 쌍을 ssh-agent 및 Keychain (Linux)에서 사용하는 키 쌍으로 변환하는 방법

big-blog 2020. 2. 17. 22:19
반응형

PuTTYgen (Windows)을 사용하여 생성 된 SSH 키 쌍을 ssh-agent 및 Keychain (Linux)에서 사용하는 키 쌍으로 변환하는 방법


PuTTYgen을 사용하여 키 페어를 생성하고 Pageant를 사용하여 로그인하여 시스템 부팅시 한 번만 암호 문구를 입력해야합니다.

Linux에서 어떻게 이것을 달성합니까? 나는 들었지만 keychain다른 키 페어 형식을 사용한다고 들었습니다. Windows 키를 변경하고 싶지 않으며 Windows와 Linux에서 동일한 방식으로 완벽하게 연결할 수 있다면 좋을 것입니다.


puttygen개인 키를 OpenSSH 호환 형식으로 내보내기를 지원합니다. 그런 다음 OpenSSH 도구를 사용하여 공개 키를 다시 작성할 수 있습니다.

  1. 퍼티 젠 열기
  2. 로드를 클릭하십시오
  3. 개인 키로드
  4. Conversions->Export OpenSSH개인 키로 이동하여 내보내기
  5. 개인 키를 ~/.ssh/id_dsa(또는 id_rsa)에 복사하십시오 .
  6. 다음을 사용하여 공개 키의 RFC 4716 버전을 작성하십시오. ssh-keygen

    ssh-keygen -e -f ~/.ssh/id_dsa > ~/.ssh/id_dsa_com.pub
    
  7. 공개 키의 RFC 4716 버전을 OpenSSH 형식으로 변환하십시오.

    ssh-keygen -i -f ~/.ssh/id_dsa_com.pub > ~/.ssh/id_dsa.pub
    

참조 자세한 내용은.


PuTTY 스타일 형식의 사용자 공개 키만 있으면 다음과 같이 표준 openssh 형식으로 변환 할 수 있습니다.

ssh-keygen -i -f keyfile.pub > newkeyfile.pub

참고 문헌

기사의 사본

나는 이것을 잊어 버리고 여기에 쓸 것입니다. 괴짜가 아닌 사람들은 계속 걷습니다.

Windows에서 키를 만드는 가장 일반적인 방법은 Putty / Puttygen을 사용하는 것입니다. Puttygen은 Linux 개인 키를 Putty 형식으로 변환하는 깔끔한 유틸리티를 제공합니다. 그러나 해결되지 않은 것은 puttygen을 사용하여 공개 키를 저장하면 Linux 서버에서 작동하지 않는다는 것입니다. Windows는 다른 영역에 일부 데이터를 넣고 줄 바꿈을 추가합니다.

해결 방법 : puttygen에서 키 페어를 생성 할 때 공개 키 화면에 도달하면 공개 키를 복사하여 확장자가 .pub 인 텍스트 파일에 붙여 넣습니다. 이런 식으로 sysadmin 시간의 좌절 읽기 게시물을 절약 할 수 있습니다.

그러나 sysadmins는 키를 찾지 못하고 암호를 시도하는 것을 제외하고는 인증 로그에 오류 메시지를 표시하지 않는 원 키 파일을 항상 얻습니다. 다른 사람의 키가 제대로 작동하더라도이 키를 사용자에게 15 번 다시 보냈습니다.

ssh-keygen -i -f keyfile.pub > newkeyfile.pub

기존 puttygen 공개 키를 OpenSSH 형식으로 변환해야합니다.


최신 버전의 PuTTYgen ( 최소 0.64)은 .ssh/authorized_keys다음 이미지와 같이 Linux 시스템에 파일 에 붙여 넣을 OpenSSH 공개 키를 표시 할 수 있습니다 .

여기에 이미지 설명을 입력하십시오


또는 PuTTY 형식 키 파일에서 개인 및 공개 키를 가져 오려면 puttygen* nix 시스템에서 사용할 수 있습니다 . 대부분의 apt 기반 시스템 puttygenputty-tools패키지의 일부입니다 .

PuTTY 형식의 키 파일에서 개인 키 출력 :

$ puttygen keyfile.pem -O private-openssh -o avdev.pvk

공개 키의 경우 :

$ puttygen keyfile.pem -L


sudo apt-get install putty

퍼티 겐 도구가 자동으로 설치됩니다.

SSH 명령과 함께 사용할 PPK 파일을 변환하려면 터미널에서 다음을 실행하십시오.

puttygen mykey.ppk -O private-openssh -o my-openssh-key

그런 다음 SSH를 통해 다음을 통해 연결할 수 있습니다.

ssh -v user@example.com -i my-openssh-key

http://www.graphicmist.in/use-your-putty-ppk-file-to-ssh-remote-server-in-ubuntu/#comment-28603


최근 Linux 용 Putty에서 Linux 용 Remmina로 이동 하면서이 문제가 발생했습니다. 그래서 .putty8 년 동안 사용하면서 Putty 용 PPK 파일이 많이 있습니다. 이를 for위해 bash 쉘에 간단한 명령을 사용하여 모든 파일을 수행했습니다.

cd ~/.putty
for X in *.ppk; do puttygen $X -L > ~/.ssh/$(echo $X | sed 's,./,,' | sed 's/.ppk//g').pub; puttygen $X -O private-openssh -o ~/.ssh/$(echo $X | sed 's,./,,' | sed 's/.ppk//g').pvk; done;

퍼티가 가진 모든 파일에 대해 작업을 매우 빠르게 완료했습니다. 비밀번호가있는 키를 찾으면 중지하고 해당 키의 비밀번호를 먼저 요청한 후 계속합니다.


리눅스에서 키를 만들고 PuTTYgen을 사용하여 키를 PuTTY 형식으로 변환하는 것이 더 쉽습니다.

퍼티 FAQ : A.2.2


TCSgrad가 몇 년 전에 묻고 자하는 것은 Linux를 그의 Windows 시스템처럼 작동하게 만드는 방법이었습니다. 즉, 암호문을 한 번만 입력하면되도록 개인 키의 암호 해독 된 사본을 보유하는 에이전트 (대회)가 있습니다. 그런 다음 ssh 클라이언트 인 putty는 암호 프롬프트없이 공개 키가 "권한 부여됨"으로 표시되는 시스템에 로그인 할 수 있습니다.

이에 대한 아날로그 는 ssh 클라이언트 역할을하는 Linux 에 해독 된 개인 키를 보유하는 에이전트가있어 TCSgrad가 "ssh host"를 입력 할 때 ssh 명령이 개인 키를 가져 와서 비밀번호를 입력하지 않고 이동할 수 있다는 것입니다. 물론 호스트는 ~ / .ssh / authorized_keys에 공개 키를 가지고 있어야합니다.

이 시나리오에 대한 Linux 아날로그는 ssh-agent (pageant analog) 및 ssh-add (pageant에 개인 키를 추가하는 아날로그)를 사용하여 수행됩니다.

나를 위해 일한 방법은 다음과 같습니다. $ ssh-agent $ SHELL $ SHELL은 에이전트를 실행하고 계속 실행시키는 데 필요한 마술이었습니다. 나는 'net'어딘가에서 벽에 머리를 때리는 몇 시간을 끝내는 것을 발견했습니다.

이제 키가로드되지 않은 에이전트 인 pageant의 아날로그가 실행됩니다.

$ ssh-add 자체를 입력하면 기본적으로 ~ / .ssh의 기본 아이디 파일에 나열된 개인 키가 추가됩니다.

더 자세한 내용이있는 웹 기사는 여기 에서 찾을 수 있습니다

참고 URL : https://stackoverflow.com/questions/2224066/how-to-convert-ssh-keypairs-generated-using-puttygen-windows-into-key-pairs-us



도와주세요.
반응형