다른 서버와 두 번째 서버의 키를 사용하여 서버에 어떻게 SSH로 연결합니까?

다른 서버와 두 번째 서버의 키를 사용하여 서버에 어떻게 SSH로 연결합니까?

이를 모방하도록 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

관련 정보