이를 모방하도록 SSH를 구성하는 방법:
ssh [email protected] -i /path/to/.ssh/server-1-ssh-key -t ssh [email protected] -i /home/server1-user-name/.ssh/server2-ssh-key
내가 실행할 때
ssh server2
설명하다:
내 로컬 컴퓨터의 키를 사용하여 server1.net에 로그인합니다(
/path/to/.ssh/server-1-ssh-key
).ssh [email protected] -i /path/to/.ssh/server-1-ssh-key
- 그런 다음 다음 IP를 사용하여 서버 10.0.0.10에 로그인했습니다. 이를 위해
/home/server1-user-name/.ssh/server2-ssh-key
나는 server-1( )에 저장된 키를 사용합니다.
이 상황에서 내 로컬 컴퓨터의 SSH 구성은 어떻게 되어야 합니까?
다음 구성을 시도했습니다.
Host server2
Hostname 10.0.0.10
User server2-user-name
ForwardAgent yes
ProxyCommand ssh -i /path/to/.ssh/server-1-ssh-key -W %h:%p
그러나 이것은 작동하지 않습니다.
답변1
따라서 기본적으로 server1이 점프박스 역할을 하게 되기를 원하므로 server1의 섹션이 필요합니다.
Host server1
Hostname server1.net
User server1-user-name
IdentityFile /path/to/.ssh/server-1-ssh-key
그런 다음 이 섹션을 건너뛰려면 서버 2의 섹션이 필요합니다.
Host server2
Hostname 10.0.0.10
User server2-user-name
ForwardAgent yes
ProxyCommand ssh server1 nc %h %p 2> /dev/null
IdentityFile /home/server1-user-name/.ssh/server2-ssh-key
답변2
두 서버의 sshd_config 파일에서 AllowAgentForwarding을 설정해야 합니다. 서버 1의 클라이언트 구성에서 ForwardAgent를 설정해야 할 수도 있습니다.
바라보다:https://help.github.com/articles/using-ssh-agent-forwarding