원격 리눅스 서버에서 win10 호스트에서 실행되는 우분투 게스트로 어떻게 ssh 할 수 있습니까?


10

짧은 버전

Windows 10 호스트에서 Ubuntu 게스트 VirtualBox VM을 실행하는 경우 ssh원격 Linux 서버에서 Ubuntu 게스트 VM으로 어떤 단계를 수행해야 합니까?


_______________________
[                     ]
[ Windows 10          ]
[ ___________________ ]            ____________________
[ [                  ]]            [                   ]
[ [ Ubuntu VM (guest) <----HOW?---- SUSE remote server ]
[ [__________________]]            [___________________]
[_____________________]

긴 버전

Ubuntu 게스트 VM을 사용하지 않고 실제 Ubuntu 컴퓨터를 사용하는 경우 AFAIK 때문에 혼란 스럽습니다. cat /etc/hosts로컬의 IP 주소를 찾은 다음 원격에서 찾을 수 있습니다.

user@remote --ssh--> user@<local IP>

우분투 게스트에서 SUSE 원격 서버로 ssh 할 수 있도록 이미 ssh 키를 설정했습니다 (즉, 게스트 ~/.ssh/id_rsa.pub는 이미 원격에 저장되어 있습니다 ~/.ssh/authorized_keys). 즉, 나는 이미 할 수 있습니다 :

ssh -Y user@remote

어려움이 없지만 손님의 IP 주소가 무엇인지 전혀 모르기 때문에 다른 방법으로는 할 수 없습니다. 그리고 ssh우분투 GUI의 "연결 정보"에있는 IP 주소로 이미 시도했습니다 .

또한 명확하게 :

  • 게스트 VM은 Ubuntu 12.04 LTS (64 비트)입니다.

  • VirtualBox 설정 대부분 : 기본

  • 네트워크 어댑터 활성화 : NAT (케이블 연결, 포트 전달 없음)

ssh 서버를 설정하지 않았지만 그것이 필요한지 확실하지 않습니다 (?). 이것이 지금까지 나의 이해입니다.

따라서 Windows 10 호스트에서 Ubuntu 게스트 VirtualBox VM을 실행 중이라면 ssh원격 Linux 서버에서 Ubuntu 게스트 VM으로 어떤 단계를 수행해야 합니까?

답변:


14

이것을 라우터 뒤에서 일반적으로 "이중 NAT"상황이라고합니다. 경계 라우터에서 Windows 시스템으로 전달한 다음 VBox에서 VM으로 전달해야합니다. 실제 네트워크 연결에서 VBox NAT 어댑터로 포트 22를 전달해야 할 수도 있지만 Windows의 경우 확실하지 않습니다.

그러나 궁극적으로 여기서해야 할 일은 최대 세 가지입니다. 그것들은 모두 Windows에 있거나 Ubuntu Linux에 있지 않으므로 대부분의 답변은 수퍼 유저 또는 다른 곳에 있습니다.

  1. (Win10이 켜져있는 네트워크의 라우터 뒤에있는 경우) 포트 22를 Windows 10 시스템으로 전달하도록 네트워크의 라우터에서 포트 전달을 설정하십시오.

  2. 포트 22에서 인바운드 연결을 허용하도록 Windows 방화벽을 설정하십시오. 또한 포트 22가 인바운드 네트워크 어댑터에서 VM 네트워크 설정의 NAT 네트워크로 전달되도록 지정해야 할 수도 있습니다.

  3. VirtualBox의 NAT 네트워크에서 NAT 전달 규칙을 설정하여 호스트의 포트 22를 VM의 포트 22로 전달합니다 .

여기서 2 단계와 3 단계를 우회하는 약간 더 좋은 방법 은 VM 네트워크 설정에서 브리지 모드 를 사용하는 것입니다 . 그러면 Windows 10 시스템이 연결된 것과 동일한 네트워크에서 IP를 가져오고 에지 라우터의 포트 22 (1 단계)를 네트워크가 VM 자체에 할당 한 IP로 포워드 할 수 있습니다. 이는 포트 22가 작동하도록 다중 홉 및 구성을 수행하는 것보다 조금 덜 고통 스럽습니다.

참고 : 일부 ISP는 포트 22를 필터링하여 포트 22 트래픽이 시스템에 도달하지 않습니다. 이 경우 대신 포트 22보다 높은 포트 (예 : 2022 또는 다른 비표준 포트> 1024)를 설정해야 할 수 있습니다.


게스트의 IP를 찾는 경우 해당 정보는 Linux 게스트 의 결과 ifconfig -a또는 ip -4 addr listLinux 게스트에 있습니다. 이는 브리지 또는 NAT가 동일하기 때문에이 중에서 가장 쉬운 부분입니다.


나는이 감사를 조사 할 것이다, 나는 당신이 그렇게 빨리 응답 한 방법을 모른다… 연구
후에이

1
@hello_there_andy NAT 설정의 Linux 기반 LXC / LXD 컨테이너를 통해 또는 NAT와 유사한 악의를 가진 VMware를 통해 랩톱에서 많은 가상화를 수행합니다 (기본적으로이 문제에 익숙합니다). 프로세스는 Linux와 Windows에서 비슷하지만 단계 측면에서 완전히 다릅니다. 내 경우에는 VM이 ​​외부에서 필요하지 않습니다. 이러한 VM의 경우 VM을 실행하는 전용 시스템 인 전용 ESXi 하이퍼 바이저에 배치하고 기존 이더넷 설정 (NAT 없음)에 직접 연결합니다. 그러나 그것은 비정형적인 설정입니다.
토마스 워드

1
@hello_there_andy는 게스트가 게스트에 openssh-server설치 했는지 확인 하므로 SSH를 수락 할 수 있습니다. 그 외의 나머지는 Windows 네트워킹 / 방화벽 / 구성입니다. (따라서 수퍼 유저이며 묻지 말 것)
Thomas Ward

3

당신은 설정해야합니다 port forwarding에서Windows 10 VM player

당신은 앞으로에있을 것이다, 윈도우 10 컴퓨터에 외부 포트를 설정해야합니다 service port상의 virtual machine에서 NAT network.

이 링크는 방법을 설명합니다


1
이것은 이론적으로 질문에 대답 할 수 있지만, 링크 만 답변에 일반적으로 뿌려집니다. 링크 된 게시물의 향후 관련 정보가 사라질 경우 링크 된 게시물의 관련 정보를 포함하는 것이 좋습니다.
토마스 워드

의견을 보내 주셔서 감사합니다.
Yaron
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.