MacOS 호스트에서 QEMU Sparc 게스트로 SSH 액세스할 수 없습니다.

MacOS 호스트에서 QEMU Sparc 게스트로 SSH 액세스할 수 없습니다.

제가 올바른 포럼에 있는지는 모르겠지만, 제 질문은 다음과 같습니다.

MacOS 10.9.5에 QEMU와 함께 게스트 Debian Sparc64를 설치했습니다. 호스트와 게스트 간에 SSH 액세스를 시도했지만 성공하지 못했습니다.

간단한 해결책을 찾고 싶습니다. 내가 아는 한 다음 옵션으로 Sparc64를 시작합니다.

qemu-system-sparc64 -hda debian_sparc64.img -m 2048 -net nic -net user,hostfwd=tcp::2222-:22 -nographic

그런 다음 다음 명령을 사용하여 MacOS 호스트에서 게스트에 연결을 시도했습니다.

ssh -p 2222 localhost

불행하게도 위 명령은 비밀번호를 묻지 않으며 잠겨진 상태로 유지됩니다.

무엇이 잘못되었는지 알 수 있는 사람이 있으면 알려주시기 바랍니다.

인사

업데이트 1:

QEMU VM이 실행 중일 때,

MacOS 호스트의 결과는 다음과 같습니다.

nmap localhost -p 22

Starting Nmap 6.47 ( http://nmap.org ) at 2017-09-16 22:44 CEST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000097s latency).
PORT   STATE SERVICE
22/tcp open  ssh

MacOS 호스트의 결과는 다음과 같습니다.

nmap localhost -p 2222

Starting Nmap 6.47 ( http://nmap.org ) at 2017-09-16 22:45 CEST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00012s latency).
PORT     STATE SERVICE
2222/tcp open  EtherNet/IP-1

루트에서 다음 명령을 사용하여 표시된 것처럼 사용된 QEMU 이미지(debian 9.0 Sparc64 게스트)에는 기본적으로 "SSH 서버"가 실행되지 않는다는 점을 언급하는 것을 잊었습니다.

# ps aux | grep ssh 
root       299  0.0  0.0   7168  1952 ttyS0    S+   22:51   0:00 grep ssh

나는 여전히 "SSH 클라이언트"(" ssh" 명령을 의미함)를 가지고 있지만 Debian Sparc64 게스트에서 MacOS 호스트에 연결하는 방법을 모릅니다.

문제는 해당 게스트에 네트워크가 없기 때문에 Debian-Sparc64 QEMU 이미지에서 제공하는 것 이외의 패키지를 설치할 수 없다는 것입니다(즉, 사용할 수 없습니다 apt-get install).

이 문제를 피하는 방법을 알 수 있는 사람이 있다면?

물론 게스트 머신에는 네트워킹(포트 80)을 설치해야 하는데, MacOS 호스트의 경우 브릿지와 가상 인터페이스 때문에 어려울 것 같습니다...

어떤 도움이라도 환영합니다

업데이트 2:

@Stefan M제안 된 대로 설치 후 다음을 실행하여 Squid옵션을 사용해 보았습니다.guestfwd

  qemu-system-sparc64 -hda debian_sparc64.img -m 2048 -net user,guestfwd=tcp::3128-:3128 -nographic

다음 오류가 발생합니다.

qemu-system-sparc64: -net user,guestfwd=tcp::3128-:3128: could not open guest forwarding device 'guestfwd.tcp.3128'
qemu-system-sparc64: -net user,guestfwd=tcp::3128-:3128: Device 'user' could not be initialized

내가 무엇을 해야 하는지 말해 줄 수 있습니까(MacOS 10.9.5에서 얻은 결과)?

업데이트 3:

튜토리얼을 찾았어요이 링크. 이 페이지 이후에 나는 다음을 수행했습니다.

  1. 먼저 TUN/TAP 드라이버를 설치하여 NIC를 가상 머신에서 OS X 호스트로 연결합니다.

  2. QEMU 실행:

qemu-system-sparc64 -hda debian_sparc64.img -m 2048 -net nic -net tap,script=no,downscript=no -nographic

  1. QEMU가 시작된 후 호스트 시스템(MacOS 10.9.5)에서 다른 터미널을 발견합니다. ifconfig tap0 192.168.1.21

실제로 내 로컬 네트워크는 192.168.1.x IP를 사용합니다.

  1. 게스트 Debian Sparc64를 입력하고 /etc/network/interfaces다음을 설정했습니다.

auto eth0 iface eth0 inet static address 192.168.1.20 netmask 255.255.255.0 gateway 192.168.1.21

안타깝게도 MacOS 호스트에서 게스트로 또는 게스트에서 MacOS 호스트로 SSH를 실행할 수 없습니다(예: "호스트에서" 수행).ssh [email protected]루트를 통해 qemu-system-sparc64를 시작해도 됩니다..

누구든지 무엇이 잘못되었는지 볼 수 있다면.

인사

답변1

먼저 호스트에 연결할 수 있는지 확인해 보세요. 이 작업은 다음을 사용하여 쉽게 수행할 수 있습니다.지도. 귀하의 경우에는 이것으로 충분합니다:

nmap localhost -p 22

포트가 열려 있다고 표시되면 게스트에서 sshd를 확인해야 합니다. 필터링된 경우 게스트(수신) 또는 호스트(로컬 발신/수신)에 방화벽 문제가 있을 수 있습니다.

업데이트 정보:

간단히 말해서 두 가지 옵션이 있습니다.

1) 다음과 같이 브리지된 네트워크를 사용합니다.여기, 그래야 sshd를 설치할 수 있습니다.

2) 사용방문자 앞으로. 이미 qemu를 통해 한 방향(포트 전달)으로 연결되어 있으므로 다른 방향으로도 쉽게 동일한 작업을 수행할 수 있습니다.

  • 호스트에 프록시(squid,tinyproxy 등)를 설치하세요.
  • 게스트를 프록시로 지정하십시오. (명령의 테스트되지 않은 부분 아래):

guestfwd=tcp::3128-:3128

  • 마지막으로 중요한 것은 http_proxy를 apt 명령으로 사용하거나 시스템 전체에 변수를 설정하는 것입니다.

마지막으로 sshd를 실행하면 ssh를 통해 게스트 시스템에 연결할 수 있습니다.

두 번째 업데이트에서:

내가 이해한다면문서정확하다면 IP 주소도 제공해야 합니다. 내 생각에는 포트를 동일한 호스트(아마도 게스트에서 게스트로)로 전달하려고 하는 것 같습니다.

guestfwd=[tcp]:server:port-dev

캐릭터 장치 개발 포트의 ​​IP 주소 서버로 게스트 TCP 연결을 전달합니다.

따라서 다음과 같아야 합니다.

guestfwd=tcp:10.0.2.100:3128-tcp:10.10.1.1:3128

그러면 포트 3128의 모든 연결이 전송됩니다.손님IP 10.10.1.1 ~ 10.0.2.100.

관련 정보