You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过SSH连接远程主机上的不同QEMU实例?

如何通过SSH连接远程主机上的不同QEMU实例?

咱们先理清问题出在哪:你设置的QEMU端口转发hostfwd=tcp::4444-:22,核心作用是把远程主机(170.170.70.70)的4444端口,转发到对应QEMU实例的22端口——但你之前的SSH命令搞混了目标地址和端口的对应关系,所以才会被拒绝连接。

方法一:从本地笔记本直接连接QEMU实例

不需要先SSH到远程主机,直接在本地终端执行以下命令即可:

  • 连接第一个QEMU实例:
    ssh root@170.170.70.70 -p 4444
    
  • 连接第二个QEMU实例:
    ssh root@170.170.70.70 -p 5555
    

原理很直观:当你访问远程主机的4444/5555端口时,QEMU会自动把流量转发到对应虚拟机的22端口(SSH服务默认端口)。

方法二:先SSH到远程主机,再连接QEMU实例

如果你已经登录到远程主机(170.170.70.70)上了,要连接QEMU实例的话,得用远程主机的回环地址(localhost/127.0.0.1)搭配转发端口:

  • 连接第一个QEMU实例:
    ssh root@127.0.0.1 -p 4444
    
  • 连接第二个QEMU实例:
    ssh root@127.0.0.1 -p 5555
    

为什么你之前的命令无法生效?

你之前尝试的ssh root@192.168.7.2 -p 4444存在两个关键问题:

  1. 192.168.7.2是QEMU实例的内部IP,但4444端口是绑定在远程主机上的,并非QEMU实例的端口——QEMU实例里只有22端口开启了SSH服务,4444端口在虚拟机内部根本没有对外开放,自然会被拒绝连接。
  2. 就算你想直接访问QEMU实例的内部IP,也需要确保远程主机和QEMU实例的tap网络配置正确(比如路由规则、防火墙放行),但这完全没必要,因为你已经配置了端口转发,直接用转发端口是更简单可靠的方式。

从你贴出的netstat输出能看到,远程主机的4444、5555端口确实被QEMU监听着,说明转发配置本身是没问题的,只要用对命令就能顺利连上啦。

备注:内容来源于stack exchange,提问作者JaSON

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 13:34:40