在Windows强跑Docker,8GB内存都喂不饱漏洞扫描神器?
在Windows强跑Docker,8GB内存都喂不饱漏洞扫描神器?
原创 衡水铁头哥 铁军哥 2025-05-29 23:45
我们前面已经在Windows系统上安装好了Docker桌面版
(Windows也能玩转Docker!手把手教你部署Redroid云手机
),运行效果挺勉强的,毕竟上来就选了一个难度超高的云手机项目
(高性能游戏云手机革命!GPU加速让Redroid性能追平小米15
)。在Linux系统运行时,内核加载还方便一些,但是换到Windows系统,操作可真是太复杂了,网上有方法,感兴趣的小伙伴自己去搜一下。
当然,在Windows系统中运行Docker的资源利用率也是真低,毕竟臃肿的Windows系统,加上Hyper-V嵌套虚拟化,轻轻松松吃掉5 GB运行内存稀松平常;相比于直接使用Linux系统而言,好几个GB的内存就这么白白浪费了,而且镜像读写都满。没办法,毕竟人力效率跟资源效率不能兼顾。
在很久很久之前,我们写过一篇如何对主机进行安全防护的文章
(主机安全漏洞解决方案
),里面介绍了如何进行系统扫描,当时是用的H3C的漏扫工具。后来也介绍过Nessus
(Linux环境部署Nessus扫描工具
),最近听说从Nessus分出来的开源版本OpenVAS还不错,今天简单尝试一下。
OpenVAS是支持以Docker形式部署的,我们直接在镜像库中搜索即可。
搜索结果一大堆,下载量破千万的mikesplain/openvas竟然不是第一个,而OpenVAS的官方是Greenbone,竟然没有出现在搜索结果里面。我们换成greenbone/openvas试一下。
确实有官方的镜像,但是下载量都比较低,还区分了好几个版本。搜了一下,说是greenbone/openvas采用模块化设计,支持与Redis、PostgreSQL等组件协同工作,可扩展为多容器生产级部署,部署稍微复杂一些,并且可能需要付费;而mikesplain/openvas定位为“开箱即用”的快速部署方案,整合了Web界面
GSA(Greenbone Security Assistant)和扫描引擎,开源免费,适合个人测试或小型环境,缺点就是更新频率较低,使用较旧的开源社区漏洞库。
如果是简单测试的话,我们先试一下mikesplain/openvas吧,可以通过标签选择镜像版本,初次使用,就选latest吧。点击【Pull】下载镜像,或者直接点击【Run】运行容器。
在本地镜像这里,能看到镜像的下载进度。
该说不说,Docker桌面版的效率确实有点低,加载镜像耗时比Linux系统下要多好几倍。
意外的是,最新版本是6年前的,失敬失敬。点击运行按钮之后,在端口这里,我们需要将容器使用的TCP端口443和9390两个端口映射出来,要不然无法访问。
容器运行之后,我们可以在Inspect一栏查看容器的详细信息()。
可以看到,容器分配的IP地址为172.17.0.2,网关为172.17.0.1。这个网关在哪里呢?
可以看到,我现在电脑一共有6张网卡,其中Ethernet0是本地网卡,IP地址是192.168.1.52;VMnet1和VMnet8是VMware Workstation的虚拟网卡
(网络之路15:认识虚拟化环境VMware ESXi
);最后一个TAP网卡是VPN创建的虚拟网卡。
那就还剩下两张vEthernet网卡。一张备注为Default Switch,应该是Hyper-V的虚拟交换机绑定的网卡
(能找到Hyper-V和VMware共存的方法吗?
),IP地址为172.20.128.1/20。
另一张备注为WSL
(在Windows 11上启用WSL(适用于Linux的Windows子系统)
),IP地址为172.20.208.1/20,Docker容器应该是跑在这张网卡上的。
查看WSL状态,竟然有两台虚拟机在运行,分别是Ubuntu-24.04和docker-desktop。
这个docker-desktop是运行Docker容器使用的,那Ubuntu-24.04怎么还运行起来了?
我们先进到docker-desktop中看一下。
可以看到,虚拟机只有一张网卡,IP地址为172.22.213.185/20,网关是172.22.208.1,也就是系统中备注为WSL的vEthernet网卡。但是,没有看到docker0那张桥接网卡。
那我们再切换到Ubuntu-24.04看一下。
巧了,两个虚拟机用的一个IP地址,MAC地址也是一样的,难道这是同一个虚拟机?
从虚拟机里面到172.17.0.2不通,但是到172.17.0.1能通,TTL为63,说明还不是直连的。回到宿主机看一下,发现到172.17.0.1的TTL为64,说明是直连的,但是我没有找到这个网卡。到172.17.0.2不通,应该是容器的安全策略问题了。
Docker桌面版的展示还挺多,能查看CPU、内存、磁盘读写和网络使用情况。
如果点容器上面的端口映射,会自动打开对应的页面,但是我们需要将其修改为HTTPS协议。当我尝试使用默认的localhost访问时,提示拒绝访问。
如果换成IP地址+端口进行访问,则提示
GSA(Greenbone Security Assistant)校验失败。
简单总结一下,Docker桌面版是真不好用啊。图形化界面可配置参数比较少,运行慢,资源占用率还高。
不说了,我去换到Ubuntu上试一下。
推荐阅读*
Windows也能玩转Docker!手把手教你部署Redroid云手机
高性能游戏云手机革命!GPU加速让Redroid性能追平小米15
1条命令搞定!Ubuntu搭建L2TP服务器全自动脚本,小白也能轻松上手
插上U盘自动装系统?一文掌握Ubuntu服务器版自动安装镜像制作
云手机全球落地实战:用策略路由实现Docker容器网络自由切换
VMware Edge 620神操作:刷入iStoreOS秒变全能企业级网关,轻松玩转多SSID
从CentOS到Ubuntu:零成本迁移L2TP VPN,企业级内网穿透实战!
WireGuard太复杂?十分钟教你用Netmaker一键搞定全球组网
误以为是外国货?这家国产SD-WAN神器竟能免费白嫖,附Panabit免费版体验全记录
简单了解一下FortiFirewall、FortiGate和FortiOS的试用授权情况
iWAN隧道实测:一次握手跑满2.3Gbps,白嫖的SD-WAN真能吊打专线?
无需公网IPv4!手把手教你配置基于IPv6的WireGuard安全隧道