无法通过端口转发通过 ssh 进入本地 qemu 实例

无法通过端口转发通过 ssh 进入本地 qemu 实例

我正在尝试通过 构建自定义 Ubuntu(从 构建的 ISO bionic - 18.04.2)qcow2 映像packer。这在尝试通过端口转发通过 SSH 连接到实例的步骤中失败packer。我可以从 VNC 看到实例启动正常,并且我可以使用给定的 ID 手动登录安慰,但packer无法 ssh。

我尝试 ssh,ssh从主机卡住了很长时间并出现错误:

ssh -vvv -p 2226 [email protected]
debug1: identity file /home/ani/.ssh/id_ed25519-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_7.6p1 Ubuntu-4

尽管端口已启动:

$ sudo lsof -i:2226
COMMAND     PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
qemu-syst 31185 root   14u  IPv4 50059412      0t0  TCP *:2226 (LISTEN)

SSH 服务器正在实例中运行,并且用户有效。我还需要检查什么才能确保 SSH 可以通过主机进行?在同一台主机上,我能够制作 Ubuntu Trusty ( 14.04) qcow2。因此,我不确定是否需要传递一些额外的 qemu 命令行参数(以使端口转发正常工作)或者是否sshd需要在 Ubuntu bionic () 上更改一些配置18.04

这是 qemu 命令行:

/usr/bin/qemu-system-x86_64 -cpu host -smp 4 -m 8192M -boot once=d -name ubuntu-bionic-custom-0.1.qcow2 -drive file=output/ubuntu-bionic-custom-0.1.qcow2,if=virtio,cache=writeback,discard=ignore,format=qcow2 -serial file:serial.out -device e1000,netdev=user.0 -machine type=pc,accel=kvm -netdev user,id=user.0,hostfwd=tcp::2226-:22 -cdrom /home/ani/ubuntu-bionic-custom-0.1.iso -vnc 127.0.0.1:83

版本:

$ /usr/bin/qemu-system-x86_64 --version 
QEMU emulator version 2.11.1(Debian 1:2.11+dfsg-1ubuntu7.4)
Copyright (c) 2003-2017 Fabrice Bellard and the QEMU Project developers

- 编辑 -

$ route -n 
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.192.0.1      0.0.0.0         UG    0      0        0 br0
10.0.3.0        0.0.0.0         255.255.255.0   U     0      0        0 lxcbr0
10.192.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br0
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

$ ip netns ls 
$

答案1

这恰好是我使用的 bionic ISO 映像的一个问题。我已将其更改为使用传统网络(也回退到较旧的 iface 命名方案),而不是 NetPlan。但这样一来,我必须在/etc/network/interfacesfor中添加一个条目eth0

相关内容