국부적으로 포탄이 관련시킬 때 개인 SSH 열쇠 (Cygwin / X11로)를 자물쇠로 연?


1

Cygwin / X11을 설치했습니다. openssh. 공용 / 개인 키 쌍을 설정했습니다. 공개 키를에 설치했습니다. ~/.ssh/authorized_keys RemoteHost의

Cygwin / X11을 (를 통해 설정했습니다. ~/.XWinrc )를 사용하여 로컬 터미널에서 RemoteHost 셸을 여는 메뉴 항목을 제공합니다.

menu root {
    RemoteShell    exec    "/bin/xterm.exe -e /usr/bin/ssh -Yl <user> RemoteHost"
}

RootMenu root

이 메뉴 항목을 처음 선택하면 개인 키의 암호를 묻기를 원합니다. 나는한다 아니 후속 통화에 대해 질의를 받고 싶습니다.

관련된 로컬 쉘이 없기 때문에 (예 : 아무것도 설정할 수 없습니다. ssh_agent 또는 keychain ) in ~/.bash_profile, 나는 여기 조금의 손실이다. 또한 셸이 없습니다. 들어가다 keyphrase.

로컬 쉘이 관련되어 있지 않을 때 개인 SSH 키를 잠금 해제하려면 어떻게해야합니까?

답변:


1
  • 시작할 수 있습니다. ssh-agent 후속 쉘 및 새 환경 변수로 내보내기 (예 : 첫 번째 파일에서 작성된 파일에서)

    ssh-agent > ~/.ssh_agent_env
    source ~/.ssh_agent_env
    
  • 제공되는 GUI 프롬프트를 사용하여 암호 구를 요청할 수 있습니다. ssh 환경 변수에 의해 SSH_ASKPASS. 리눅스에서는 일반적으로 gnome-askpass 또는 유사합니다. cygwin에서도 이와 비슷한 것이있을 것입니다.

  • 있다 AddKeysToAgent 옵션은 새로 사용 된 키를 실행중인 키에 추가합니다. ssh-agent 필요한 것을 성취하십시오.

이 두 가지 모두 최종 코드를 호출하기 전에 코딩 / 점검이 필요합니다. ssh, 예를 들어 당신이 호출 할 수있는 bash 스크립트 RemoteShell exex /path/to/my/script.sh예 :

#!/bin/bash
ps aux | grep ssh-agent | grep -v grep
if [ "$?" = "1" ]; then
  # start a new agent (in a background) and store its environent
  ssh-agent > ~/.ssh_agent_env
end
# load existing ssh-agent connection
source ~/.ssh_agent_env

/bin/xterm.exe -e /usr/bin/ssh -oAddKeysToAgent=yes -Yl <user> RemoteHost
# or do whatever magic you want

로컬 래퍼 스크립트의 생각이 나에게 일어나지 않는다고 믿을 수 있습니까? 8- \
DevSolar
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.