利用笔记本与SSH转发给服务器上的虚拟机通网

利用笔记本给服务器上的虚拟机通网

  • [1. 操作步骤](#1. 操作步骤)
  • [2. 简化命令](#2. 简化命令)

一直仰赖的Libvirt今天突然给我IP干没了,怎么都解决不了,最后还是放弃了,使用QEMU+端口访问模式进行。QEMU网络配置一向是特别恶心的操作,本文主要通过个人笔记本来给QEMU通往。不是不配网桥,而是SSH转发更有性价比。

1. 操作步骤

假设A、B、C,B是服务器,C是B上的虚拟机(端口2333),A是个人PC。默认A上装一个科学上网做转发。

在机器B上:

shell 复制代码
ssh -R 8888:localhost:8888 -p 2333 user_C@localhost

这里,将C的8888端口转发到B的8888端口,user_C是虚拟机用户名。localhost不变,就代表B。

在机器A上:

shell 复制代码
ssh -R 8888:localhost:7890 user_B@IP_of_B

这里,user_B是服务器B的用户,IP_of_B是B的IP,7890是科学上网的端口。

至此,在user_C@localhost上把proxy改成localhost:8888,即可联网。

2. 简化命令

能不能只在机器A上操作?

首先配置.ssh/config

json 复制代码
Host B
	HostName IP_of_B
	User user_B
	
Host A_to_C
  ProxyCommand ssh -W IP_of_B:2333 B
  User user_C
  RemoteForward 8888 localhost:8888

现在,VSCode连虚拟机使用A_to_C,这会自动完成机器B上的端口转发(虚拟机8888转发到B的8888)。

由此,只需在宿主机上执行ssh -R 8888:localhost:7890 user_B@IP_of_B即可

相关推荐
夏殇之殁17 小时前
包中创建自定义列表项。 . 使用自定义列表项进行数据绑定 . 将天气预报数据保存到本地内存表,通过LiveBindings进行显示。 ...
服务器·前端·javascript
龙仔72517 小时前
人大金仓 KingbaseES V8 只读账号创建完整运维笔记
运维·笔记·sql·人大金仓
我不管我就要叫小猪17 小时前
嵌入式Linux----网络通信
linux·运维·服务器
江湖有缘18 小时前
Docker实战 :使用Docker部署OneTerm堡垒机
运维·docker·容器
泡沫冰@18 小时前
ECS 的介绍和使用
linux·服务器·网络
姜太小白18 小时前
【Linux】df -h 卡住问题的通用排查与解决方案总结
linux·运维·php
土星云SaturnCloud18 小时前
抽水蓄能设备智慧运营:基于土星云边缘计算实现机组全生命周期预测性维护
服务器·人工智能·ai·边缘计算
fengyehongWorld19 小时前
Linux 终端快捷键
linux·运维
看昭奚恤哭19 小时前
平滑加权轮询负载均衡的底层逻辑
运维·负载均衡
hyf32663320 小时前
泛程序:从零开始搭建稳定程序项目框架
运维·服务器·爬虫·百度·seo