it-swarm-ko.tech

SSH를 사용하여 다른 PC를 통해 PC에 연결하는 방법

나는 three 컴퓨터를 가지고 있습니다.

PC1PC2는 사설 LAN에 있습니다. 여기서 PC1PC2192.168.0.2

PC2PC는 다른 LAN에 있습니다. 여기서 PC2PC192.168.123.101

SSH로 PC에서 PC1에 어떻게 연결할 수 있습니까?.

다음과 같은 것이 있습니까?

ssh [email protected] -via [email protected]
13
Stefan
ssh -o 'ProxyCommand ssh -W %h:%p [email protected]'

그런 다음 ssh PC1를 실행하면됩니다.

~/.ssh/config의 별칭을 통해 가장 잘 사용 :

Host PC1
HostName 192.168.0.2
User user
ProxyCommand ssh -W %h:%p [email protected]

-W 옵션이없는 이전 버전의 OpenSSH (나는 이것이 ≤5.4를 의미한다고 생각 함)의 경우 netcat 이 PC2에서 사용 가능한지 확인하고

Host PC1
HostName 192.168.0.2
User user
ProxyCommand ssh [email protected] nc %h %p

SSH를 사용하면 명확한 해결책이 있습니다.

  1. 로컬 컴퓨터에서 ~/.ssh/config를 다음과 같이 설정합니다.

    Host WhatYouWillCallTheConnection
        hostname the.gateway.server.address.com
        user YourUsernameOnTheGateway
    
  2. 연결하려는 게이트웨이와 최종 서버 모두에서 ~/.ssh/authorized_keys에 로컬 클라이언트의 공개 키가 있는지 확인합니다.

  3. 게이트웨이 컴퓨터에서 클라이언트의 공개 키를 지정하는 줄의 시작 부분에 다음과 같이 강제 명령을 추가하도록 ~/.ssh/authorized_keys를 변경해야합니다.

    command="ssh -A [email protected]" ...yourPublicKey....
    

-A는 항상 비밀번호를 보내고 싶지 않은 경우 에이전트를 전달하는 것입니다 ...

이렇게하면 ssh WhatYouWillCallTheConnection와 같은 작업을 할 때마다 게이트웨이를 통해 곧바로 실행되고 다른 쪽 서버에 투명하게 연결됩니다.

4
Shamster

포트 포워딩이 유용 할 수 있습니다.
PC1에서 :

~# ssh -fN -L 22:PC3:7777 -l <user> PC2  

7777은 모든 포트 일 수 있습니다 (아직 사용하지 않는 경우). 저는 그 번호와 +1 (7778, 7779 등)으로 관리 할 수있는 "주문"을 좋아합니다.

이렇게하면 PC1의 로컬 포트 ​​7777에서 PC3의 포트 22로 '투명한'터널이 생깁니다. 다음을 실행하십시오.

~# ssh -l <user> -p 7777 localhost  

그리고 PC3에 있어야합니다.
SOCKS 프록시를 설정하려는 경우 -D를 사용하여 포트를 동적으로 전달할 수도 있습니다.

~# ssh -D <someport> -fN -L 22:PC3:7777 -l <user> PC2  

건배!

2
wormintrude

2017+ (이후 ssh v7.3)-대답은 ProxyJump 입니다.

ssh -J [email protected] [email protected]

, 약어 :

ssh -o "ProxyJump [email protected]" [email protected]

다음과 같이 ssh dest 스 니펫을 사용하여 ~/.ssh/config로 줄일 수 있습니다.

Host jump
    User MyJumpHostUser
    Hostname Jump.Host.tld

Host dest
    ProxyJump jump
    User MyDestUser
    Hostname des.tin.ATI.on
1
Alex Stragies

내가 아는 유일한 해결책은 Belier 를 사용한 ssh 스크립팅입니다.

Belier는 SSH 연결을 통해 셸을 열거 나 원격 컴퓨터에서 명령을 실행할 수 있습니다. Belier의 주요 기능은 작업을 실현하기 전에 여러 중간 컴퓨터를 교차하는 기능입니다.

얼마 전 나는 MIT Lincoln Laboratory 홈페이지에서 README.sshhop 을 찾았지만, 그것에 대한 더 이상의 정보를 찾을 수 없었습니다. ?

0
echox