为何将虚拟机通过SSH端口转发至PuTTY?相关操作疑问解答
嘿,我来帮你把这些操作的来龙去脉理清楚——这些都是渗透测试环境里很基础但关键的配置,我一个个给你拆解:
1. VirtualBox的NAT网络与端口转发配置
首先得明白VirtualBox里NAT模式的核心作用,还有端口转发为什么是必须的:
- NAT网络模式:这种模式下,虚拟机相当于在宿主机的一个“私有内网”里,它可以通过宿主机的网络访问外网(比如Kali更新工具、下载破解依赖都靠这个),但默认情况下宿主机没法直接访问虚拟机的端口——因为NAT会隔离虚拟机和宿主机的直接网络通信,安全性上更稳妥,避免虚拟机直接暴露在宿主机所在的局域网里。
- SSH端口转发(2222→22):SSH是远程控制Linux的标准方式,Kali默认开启SSH服务,端口是22。但因为NAT的隔离,宿主机直接输虚拟机的IP连22端口是连不上的。端口转发就是打通这个“隔离墙”:把宿主机的2222端口和虚拟机的22端口绑定,这样宿主机发往2222端口的请求,会被VirtualBox自动转发到虚拟机的22端口上。
2. PuTTY连接localhost:2222的逻辑
PuTTY是Windows下最常用的SSH客户端,这里的配置完全对应前面的端口转发:
localhost就是指你的宿主机本身(因为端口转发是在宿主机上设置的);- 端口填2222,就是告诉PuTTY:“把我要发的SSH请求,通过宿主机的2222端口转发到虚拟机的22端口”,这样就能绕过NAT的限制,直接远程操作Kali,不用一直切换VirtualBox的窗口,后续跑命令、看输出都方便很多。
3. Kali中更新rc.d的作用(以及演示者为啥没解释)
rc.d是Linux系统里存放启动脚本的核心目录,里面的脚本控制着系统开机时自动启动哪些服务。演示者用的应该是update-rc.d命令,常见的使用场景有这几种:
- 安装了新的服务(比如无线破解需要的网卡驱动、或者后台运行的破解工具依赖服务),需要把它加入开机自启列表,确保每次启动Kali都能直接用;
- 系统更新或者服务升级后,启动脚本的路径、依赖关系变了,用
update-rc.d刷新配置,避免服务启动失败; - 也可能是修复之前的配置问题,比如某个关键服务没设开机自启,导致后续破解步骤没法正常执行。
至于演示者没解释?大概率是他默认看教程的人有基础,或者觉得这是“渗透测试环境里的常规操作”——毕竟Kali里经常要调整服务启动项,所以他直接做了但没细说。
内容的提问来源于stack exchange,提问作者XsiSec
相关产品推荐
相关产品推荐

