VirtualBox 호스트 ssh to 게스트


53

현재 브리지 모드를 사용하는 mac 호스트와 VirtualBox Linux 게스트가 있습니다.

호스트에서 게스트로 쉽게 SSH 할 수 있어야합니다. 호스트 이름을 사용하는 것이 좋지만 변경되지 않는 IP 주소도 괜찮을 것입니다 (현재 가입 한 새 네트워크마다 IP가 변경되고 호스트 이름은 작동하지 않습니다).

또한 손님으로부터 인터넷 접속이 필요합니다.

네트워크의 다른 컴퓨터는 게스트에 액세스 할 필요가 없습니다.

VirtualBox 네트워크를 구성하는 가장 좋은 방법은 무엇입니까?


1
이 관련, GUI없이 VB 게스트를 시작 고려해 superuser.com/questions/135498/...
파브 PH

답변:


36

먼저 vboxnet0인터페이스 를 만들어야합니다 .

VirtualBox> 파일> 환경 설정> 네트워크> 호스트 전용 네트워크> 추가 (vboxnet0을 얻습니다)

그런 다음 호스트 시스템에서이를 실행하십시오. 새로운 인터페이스가 vboxnet0나타납니다.

ifconfig

VM을 종료하고 다음을 수행하십시오.

VM's Settings > System > check "Enable I/O APIC."
VM's Settings > Network > Adapter 2 > host-only vboxnet0

게스트 실행시 VM 시작

ifconfig

그리고 IP를 확인

다음 링크를 확인하십시오.

  1. https://forums.virtualbox.org/viewtopic.php?f=8&t=40076
  2. http://www.wiredrevolution.com/virtualbox/setup-ssh-access-between-virtualbox-host-and-guest-vms

NAT에 대한 솔루션도 있지만 확인하지 않았습니다.

호스트 시스템에서 NAT를 사용하여 포트 전달 구성

VBoxManage modifyvm "VM name" --natpf1 "guestssh,tcp,,2222,,22"

호스트 머신의 포트 2222를 통해 리눅스에 연결

ssh -l -p 2222 localhost

고정 IP를 사용하는 호스트 전용 네트워킹의 경우 다음을 확인하십시오.

https://stackoverflow.com/questions/5906441/how-to-ssh-to-a-virtualbox-guest-externally-through-a-host/27152153#27152153

Solaris 10 및 Ubuntu 16.04 용이지만 쉽게 적응할 수 있어야합니다.


2
고맙게도 VirtualBox 포트 전달을 사용하도록 설정하고를 통해 연결할 수 있습니다 ssh localhost -p 7022.
Thomas Hunter

포트 포워딩은 매력처럼 작동했습니다. VBoxManage가 아닌 Virtualbox GUI에서 구성을 수행했지만. 여기에서 호스트 및 게스트 IP 주소도 설정해야합니다 (각각 127.0.0.1 및 10.0.2.15).
Sebastian Ganslandt

첫 문장을 약간 편집합니다. 읽어야합니다. VirtualBox> 설정> 네트워크> '호스트 전용 네트워크'> 추가 (vboxnet0 제공)
Steve Swinsburg

호스트 전용 설정을 위해이 모든 작업을 수행했으며 호스트에서 ssh를 시도하면 시간이 초과 될 때까지 중단됩니다. 다른 것이 있습니까?
Chris Westin

36

두 Linux 시스템 (32 비트 Ubuntu 호스트와 64 비트 Ubuntu VM)간에이 포트 전달을 사용하여 ssh를 작동시킬 수있었습니다.

여기에 이미지 설명을 입력하십시오

그런 다음 호스트 시스템에서

ssh -p 5679 127.0.0.1

5679포트 전달 규칙에 "호스트 포트"를 입력하여 대체 하십시오.


8
"Host IP"와 "Guest IP"를 입력하지 않고 정확히 동일하게 수행했습니다.
Damien Cassou

제 경우에는 우분투 이미지에 ssh가 설치되어 있지 않았습니다 (예상했을 것입니다). 그래서 'apt-get install openssh-server'를 실행하고 'ssh -p 5679 localhost'와 연결할 수있었습니다. 다른 의견을 바탕으로 호스트 또는 게스트 IP를 넣지 않았습니다.
Pierre-Antoine

2

포트 전달을 방해하지 않으려면 호스트 인터페이스로 표시되는 호스트 전용 어댑터를 설정 한 다음 게스트의 해당 서브넷 내부에 IP 주소를 추가하십시오.

단계 :

  • Virtualbox (GUI-> 설정-> 네트워크)에서 호스트 전용 네트워크를 만듭니다. ifconfig호스트를 입력 vboxnet0하고inet 192.168.50.1
  • 게스트에서 IP 주소를 추가하십시오. ifconfig eth1 192.168.50.101 netmask 255.255.255.0 up
  • 호스트에서 실행 ssh root@192.168.50.101

더 읽을 거리 :


1

꽤 많이 움직이면 NAT 모드에서 가상 NIC를 구성하는 것이 좋습니다. NAT를 사용하면 호스트 (PC)가 게스트 OS 용으로 만들어진 개인 네트워크의 DHCP 서버 및 라우터가됩니다. NAT를 사용하여 고정 주소를 설정할 수도 있다고 확신합니다 ...

그러나 최고의 해결책은 게스트 VM에서 이름 확인이 작동하지 않는 이유를 알아내는 것입니다. :)

https://www.virtualbox.org/manual/ch06.html#network_nat


2
NAT 모드를 설정하면 게스트에 IP 10.0.2.15가 할당됩니다. 그러나 호스트 (IP가 192.168.1.120 인)에서 게스트에게 연락 할 수 없습니다. 가이드는 다른 모드를 설명 할 수 있었지만 내 문제에 대한 해결책이없는 것 같습니다.
토마스 헌터

0

매우 도움이됩니다. 올바른 방향으로 안내해주십시오. 감사.

> VirtualBox> 파일> Host Network Manager> vboxnet0> 어댑터 수동 구성> IPv4 주소로 이동하여 게스트의 ifconfig로 설정해야했습니다. 어떤 이유로 호스트와 게스트는 다른 IP를주었습니다.

언급되었지만 명시 적으로, 호스트 자체의 ssh 통신에서 이미 사용 중이므로 기본 ssh 포트 22가 아닌 127.0.0.1의 포트 전달 포트를 5679로 설정해야했습니다.

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