PuTTYgen(Windows)을 사용하여 생성된 SSH 키 쌍을 ssh-agent 및 Keychain(Linux)에서 사용되는 키 쌍으로 변환하는 방법
PuTTYgen을 사용하여 키 쌍을 생성하고 Festa를 사용하여 로그인했기 때문에 시스템이 부팅될 때 암호를 한 번만 입력해야 합니다.
Linux에서 이를 달성하려면 어떻게 해야 합니까?들은 적이 있습니다keychain
그러나 다른 키 쌍 형식을 사용한다고 들었습니다. Windows 키를 변경하고 싶지 않으며 Windows와 Linux 모두에서 동일한 방식으로 원활하게 연결할 수 있으면 좋겠습니다.
puttygen
를 Open 있수다니습으로 수 .SSH 호환 형식입니다.그런 다음 OpenSSH 도구를 사용하여 공용 키를 재생성할 수 있습니다.
- 퍼티젠 열기
- 로드 클릭
- 개인 키 로드
- 에 가다
Conversions->Export OpenSSH
. - 를 개인키위에 합니다.
~/.ssh/id_dsa
(또는)id_rsa
). RFC 4716을 의 RFC .
ssh-keygen
ssh-keygen -e -f ~/.ssh/id_dsa > ~/.ssh/id_dsa_com.pub
RFC 4716 버전의 공개 키를 OpenSSH 형식으로 변환합니다.
ssh-keygen -i -f ~/.ssh/id_dsa_com.pub > ~/.ssh/id_dsa.pub
PuTTY 형식의 사용자 공용 키만 있으면 다음과 같이 표준 opensh 형식으로 변환할 수 있습니다.
ssh-keygen -i -f keyfile.pub > newkeyfile.pub
레퍼런스
- 출처: http://www.
treslervania.com/node/408 - 거울: https://web.archive.org/web/20120414040727/http ://www.treslervania.com/node/408 .
기사의 사본
자꾸 잊어버리니까 여기에 쓸게요.괴짜가 아닌 사람들은 그냥 계속 걸어요.
Windows에서 키를 만드는 가장 일반적인 방법은 Putty/Puttygen을 사용하는 것입니다.Puttygen은 Linux 개인 키를 Putty 형식으로 변환하는 깔끔한 유틸리티를 제공합니다.그러나 puttygen을 사용하여 공개 키를 저장하면 Linux 서버에서 작동하지 않습니다.Windows에서는 일부 데이터를 다른 영역에 배치하고 줄 바꿈을 추가합니다.
솔루션:입력란에 키 쌍을 만들 때 공용 키 화면이 나타나면 공용 키를 복사하여 확장명이 .pub인 텍스트 파일에 붙여넣습니다.당신은 이런 게시물을 읽는 데 걸리는 시스템 관리 시간을 절약할 수 있을 것입니다.
그러나 sysadmins는 다른 모든 키가 정상적으로 작동하고 사용자에게 이 키를 15번이나 다시 보냈음에도 불구하고 키를 찾을 수 없고 암호를 시도하는 것을 제외하고는 인증 로그에 오류 메시지를 남기지 않는 이상한 키 파일을 받습니다.
ssh-keygen -i -f keyfile.pub > newkeyfile.pub
기존 puttygen 공용 키를 OpenSSH 형식으로 변환해야 합니다.
최신 버전의 PuTTYgen(내 것은 0.64)은 Linux 시스템에 붙여넣을 OpenSSH 공개 키를.ssh/authorized_keys
파일(다음 이미지에 표시됨)
의 키 "PuTTY"를 사용할 수 .puttygen
*nix 시스템에서.대부분의 적합한 기반 시스템에 적합puttygen
는 의일니다입의 입니다.putty-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/ #1800-28603
저는 최근에 리눅스용 Putty에서 리눅스용 Remmina로 이동하면서 이 문제를 겪었습니다. 저는 Putty에 을 많이 있습니다..putty
8년 동안 사용해 온 디렉토리입니다.이것을 위해 저는 간단한 것을 사용했습니다.for
하도록 명령합니다. 명령어는 다음과 같습니다.
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;
퍼티가 가지고 있는 모든 파일에 대해 매우 신속하고 핵심적으로 작업을 완료했습니다.암호가 있는 키를 찾으면 중지되고 먼저 해당 키의 암호를 묻는 메시지를 표시한 다음 계속합니다.
Linux에서 키를 만들고 PuTTYgen을 사용하여 키를 PuTTY 형식으로 변환하는 것이 더 쉬울 것입니다.
저는 TCSgrad가 (몇 년 전에) 어떻게 Linux를 그의 Windows 기계처럼 작동시키는지 묻고 싶었습니다.즉, 암호 구문을 한 번만 입력하면 되도록 암호 해독된 개인 키 복사본을 보관하는 에이전트(페이지)가 있습니다.그런 다음, ssh 클라이언트인 putty는 비밀번호 프롬프트 없이 자신의 공개 키가 "authorized"로 나열된 컴퓨터에 로그인할 수 있습니다.
이에 대한 유사점은 ssh 클라이언트 역할을 하는 Linux에서 에이전트가 암호 해독된 개인 키를 보유하고 있기 때문에 TCSgrad가 "sssh host"를 입력할 때 ssh 명령이 자신의 개인 키를 가져오고 암호를 묻는 메시지가 표시되지 않습니다.물론 호스트는 ~/.vmx/authorized_keys에서 공용 키를 보유하고 있어야 합니다.
이 시나리오와 유사한 Linux는 ssh-agent(대회 아날로그) 및 ssh-add(대회에 개인 키를 추가하는 아날로그)를 사용하여 수행됩니다.
제게 효과가 있었던 방법은 다음과 같습니다. $ ssh-agent $SHELL 그 $SHELL은 에이전트를 실행하고 계속 실행하는 데 필요한 마법이었습니다.인터넷 어딘가에서 그걸 발견했고 몇 시간 동안 벽에 머리를 부딪친 것으로 끝이 났습니다.
이제 미인대회의 아날로그가 실행되고 있습니다. 키가 로드되지 않은 요원입니다.
$ ssh-add를 입력하면 기본적으로 ~/.ssh의 기본 ID 파일에 나열된 개인 키가 추가됩니다.
자세한 내용은 여기에서 확인할 수 있습니다.
PPK → OpenSSH RSA with PuttyGen & Docker.
개인 키:
docker run --rm -v $(pwd):/app zinuzoid/puttygen private.ppk -O private-openssh -o my-openssh-key
공개 키:
docker run --rm -v $(pwd):/app zinuzoid/puttygen private.ppk -L -o my-openssh-key.pub
https://hub.docker.com/r/zinuzoid/puttygen 도 참조하십시오.
퍼티젠을 다시 여는 것보다 훨씬 더 빠르게, 제가 종종 한 일은 다음과 같습니다.
- 공용 키 파일을 복제합니다.
- 복사본에서 "ssh-rsa"라는 단어를 처음에 배치합니다.
- 시작/끝 주석 행과 다른 모든 줄 바꿈을 제거합니다.
- 저장. 결과는 opensh에 사용할 수 있는 한 줄 키입니다.
언급URL : https://stackoverflow.com/questions/2224066/how-to-convert-ssh-keypairs-generated-using-puttygen-windows-into-key-pairs-us
'source' 카테고리의 다른 글
각도에서 양식 그룹에 동적으로 컨트롤 추가 (0) | 2023.05.07 |
---|---|
Visual Studio 및 App 서비스에서 웹 배포에 문제가 있는 것은 무엇입니까? (0) | 2023.05.02 |
디스크에 디바이스를 찾을 수 없으므로 디바이스를 부팅할 수 없습니다. (0) | 2023.05.02 |
Android Min SDK 버전 대대상 SDK 버전 (0) | 2023.05.02 |
레이저 뷰 엔진:"@" 기호를 피하려면 어떻게 해야 합니까? (0) | 2023.05.02 |