1.kali虚拟机的网络配置
1.1虚拟机的三种网络模式
若要理解这三种模式的工作原理,需要一些计算机网络的基础知识:
关于IP地址和子网划分的部分可参考博客:
关于NAT部分可以参考博客:NAT基础知识点及实验配置(详细版)_nat配置-CSDN博客
(1)桥接模式
桥接模式网络把所有的虚拟主机直接并入物理宿主主机的本地局域网。因此,从局域网的角度来看,虚拟主机就是网络中使用独立IP的另一个节点。
(2)NAT模式
地址转换模式网络相当于使用物理宿主主机开辟了一个私有网络。当虚拟的私有网络与物理上的局域网络进行通信时,宿主主机的私有网络为其转换地址。从物理意义上的局域网络来看,虚拟主机发来的数据就是宿主机使用自身IP 发来的数据。
(3)host-only模式
主机模式网络则是一种与物理网络隔离的虚拟私有网络。采用了这种模式之后,虚拟机之间以及虚拟机和物理主机之间能够正常通信,但是虚拟机将无法与物理意义上的局域网或互联网通信。
注:由于渗透测试过程中要使用Kali Linux系统对既定系统进行网络攻击,所以需要把所有的虚拟主机部署在同一个虚拟网段里。在以上三种网络模式中,我们应当选择将kali虚拟机设置为桥接模式。同时,由于其他作为靶机的虚拟机会存在安全缺陷,连入该网络的人员都可以进行攻击,因此在将它们连入局域网时要特别小心,最好选择安全的局域网,而非鱼龙混杂的公共网络。
1.2设置虚拟机的网络模式(VMware)
点击kali虚拟机后,右击或者在虚拟机页面中点击设置。
将kali虚拟机的网络适配器部分修改成如下设置,并点击确认,随后退出设置。
2.验证网络
2.1查询虚拟机IP地址
利用桥接模式将kali虚拟机连入网络后,kali虚拟机应当能够获取其IP地址,可以通过终端查询IP来验证网络是否连接成功。
开启kali虚拟机,打开终端后可以通过终端命令来查询虚拟机的IP地址。
(打开终端的方式:在桌面或任意文件夹的空白处右击 -> open in terminal)
在终端中输入以下命令:
ifconfig
该命令用于显示或配置网络设备(网络接口卡)或者进行修改,可以看到如下执行结果:
其中形如192.168.1.39的IP是kali虚拟机的IP地址,形如255.255.255.0的netmask是kali虚拟机所在子网的子网掩码(也即子网地址为192.168.1.0),而形如192.168.1.255的broadcast是kali虚拟机所在子网的广播地址。
注:kali虚拟机的IP地址类似192.168.xxx.xxx,这并不是一个有效的公网IP,而属于保留的私有IP地址范围,但这并不能够说明kali虚拟机使用的网络模式为NAT模式。查询IP为私有IP的原因是局域网的路由器采用了NAT模式,因此局域网内的各网络设备都使用了分配的私网IP,一方面延缓IPv4地址的耗光,另一方面可以保护局域网内的网络设备,使其避免直接暴露在公共网络中。
2.2测试网络接入
为了确定桥接模式下kali虚拟机能否正常接入网络,在终端ping百度网站,测试kali虚拟机是否能够访问www.baidu.com。
在终端中输入以下命令:
ping www.baidu.com
执行结果如下图所示,证明虚拟机能够正常访问百度网站。
其中ttl是报文生存周期,每经过路由器的一次转发就减1,如果ttl减至0则丢弃,同时说明该目的IP不可到达(不加此限制可能会出现无穷计数问题)。
time是指虚拟极端发送数据包再到虚拟机接收确认数据包的时间。
注:linux系统执行ping命令时不会自动停止,需要输入“CTRL+C”来结束命令的执行。