以Docker容器的形式运行GVM-11
OpenVAS(Open Vulnerability Assessment System)是在nessus基础上发展起来的一个开源的漏洞扫描程序,其核心部件是一套漏洞测试程序,可以检测远程系统和应用程序中的安全问题。
(一)在ubuntu 18系统中安装docker
apt install docker.io //在线安装docker
systemctl start docker //启动docker服务
systemctl enable docker //设置开机自动启动

docker version //查看docker版本

可以正常显示版本信息,说明安装成功。
(二)下载和运行GVM的docker镜像
1、下载GVM 11的docker镜像
docker search gvm

第一个镜像是我们需要的。
docker pull securecompliance/gvm //将镜像pull到本地

docker images //查看本地的docker镜像

2、运行GVM 11镜像
docker run -d -p 8080:9392 --name=gvm securecompliance/gvm
run命令装载docker镜像到内存,形成容器。
-d //后台运行容器
-p //将host的8080端口映射到容器的9392端口
--name //给容器起个名字
docker ps //查看正在运行的docker容器,可以看到GVM容器已经运行起来了

docker logs gvm //查看工作状态

若看到“our GVM 11 container is now ready to use!”,就可以使用了。(时间较长,请耐心等待)

(三)使用GVM进行漏洞扫描
1、登录
浏览器打开GVM的控制台界面:

用户名/口令:admin/admin,点击login按钮登录
2、创建扫描任务
下面创建简单的扫描任务,对metasploitable 2靶机进行漏洞扫描。
(1)创建扫描任务
Scans—Tasks

点击左侧带有五角星的方框,点击弹出的“New Tasks”项:

在“New task”窗口,填写下面的信息:
Name:指定扫描名称,如“metasploitable 2”
Comment:填写关于扫描任务的描述文字(可选)
Scan Targets:点击右侧五角星,弹出New Target表单。指定目标IP地址,填写完成后点击Save按钮提交:

其它的选项保持默认即可,也可以按照下图中的文字选择:

点击下方的Save按钮,创建扫描任务。
3、开始扫描
在任务列表中,点击右侧Actions中的Start按钮,开始扫描。

4、下载扫描报告
点击Scans—Reports

点击左上角一排小图标中的向下小箭头,弹出“Component Content for Scan Report”表单。选择报告类型,如PDF:

点击OK按钮,下载漏洞扫描报告。
报告中对某漏洞的描述:

6、更新NVT
重启GVM容器即可更新NVT特征库,无需单独运行命令。
(四)管理容器
1、查看容器内运行的进程
docker top gvm

2、进入容器内的命令行
docker exec -it gvm bash

在docker进行内修改时区
ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
3、设置admin(管理员)口令和时区
默认时区是UTC时区,很恶心。
点击右上角的个人中心->my settings->编辑

timezone改成Asia/Shanghai 点击右下角save保存更改

5、停止容器
docker stop gvm

6、删除容器
不再需要容器了,可以将其删除。删除容器不会影响到镜像,使用前面运行镜像的命令可以创建新的容器。
docker ps -a //查看全部容器,包括运行的和已停止的
docker rm gvm //删除名为gvm的容器
(五)管理镜像
1、导出镜像
docker save -o gvm-11-image.tar securecompliance/gvm //将镜像导出到当前目录,名为gvm-11-image.tar

2、删除镜像
docker rmi securecompliance/gvm //删除镜像时,不能存在由该镜像创建的容器

3、导入镜像
docker load < gvm-11-image.tar //导入镜像

注意事项
GVM-11容器启动后默认不像OpenVAS那样监听本地环回地址,而是监听物理网卡地址。这样即提供了远程访问功能。因此应使用防火墙对访问GVM的源地址进行限制:
iptables -A INPUT -p tcp -s 192.168.1.100 –dport 8080 -j ACCEPT //允许192.168.1.100访问本地的GVM控制台
iptables -A INPUT -p tcp –dport 8080 -j REJECT //拒绝访问本地8080端口
以Docker容器的形式运行GVM-11的更多相关文章
- 利用远程服务器在docker容器搭建pyspider运行时出错的问题
This system supports the C.UTF-8 locale which is recommended. You might be able to resolve your issu ...
- Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境
首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...
- 实现Mac主机上的Docker容器中的图形界面显示(运行GUI应用)
我有一个需求: 一方面,我需要在 Docker 容器环境下运行应用(因为有些环境在 Mac 下很难安装配置,并且希望环境干净隔离). 另一方面,容器中的应用又需要进行图形界面的显示. 由于 Docke ...
- [转帖]docker容器保持运行不退出
docker容器保持运行不退出 2019年01月20日 23:21:22 chvalrous 阅读数 1511 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.cs ...
- Docker 容器技术
前言: 之前感觉Docker是一种小虚拟机,docker和KVM虚拟机之间有什么区别.联系.可以应用在什么样的生产环境? 一.Docker是什么以及和KVM的区别 1.docker概念? Docker ...
- docker容器的学习笔记
目录 Docker入门学习笔记(一) 1. 什么是Docker? 2. Docke的目标 3. Docker通常应用场景 4. Docker的基本组成 补:Docker容器相关技术简介 安装Docke ...
- Docker 容器学习笔记
Docker 诞生于2013年,最初发起者是dotCloud公司.Docker自开源后受到广泛的关注和讨论,目前已有多个相关项目逐渐形成了围绕Docker容器的生态体系,由于Docker在业界造成的影 ...
- Docker容器数据卷-Volume详解
Docker中的数据可以存储在类似于虚拟机磁盘的介质中,在Docker中称为数据卷(Data Volume).数据卷可以用来存储Docker应用的数据,也可以用来在Docker容器间进行数据共享.数据 ...
- 3、docker 容器管理
Docker容器相对于OpenStack的云主机实例,虽然他们本质上不同.我们需要基于镜像来创建容器.容器是独立运行的一个或一组应用,以及它们的运行环境.对应的,虚拟机可以理解为模拟运行的一整套操作系 ...
随机推荐
- python 读取配置文件ini ---ConfigParser
Python读取ini文件需要用到 ConfigParser 模块 关于ConfigParser模块的介绍详情请参照官网解释:https://docs.python.org/2.7/library/c ...
- Go 分布式令牌桶限流 + 兜底策略
上篇文章提到固定时间窗口限流无法处理突然请求洪峰情况,本文讲述的令牌桶线路算法则可以比较好的处理此场景. 工作原理 单位时间按照一定速率匀速的生产 token 放入桶内,直到达到桶容量上限. 处理请求 ...
- docker安装、下载镜像、容器的基本操作
文章目录 一.docker安装与基本使用 1.docker的安装.从远程仓库下载镜像 2.配置docker国内源 二.创建容器 1.create i.创建容器 ii.进入容器 iii.启动容器 2.r ...
- bom中的offset,client,scroll
简单明了
- linux 创建用户 用户组,sudo,禁止root远程ssh登录
创建用户 useradd hanli 为新用户设置密码(在root下可以为普通用户重置密码) passwd hanli 创建用户组 groupadd op 将用户添加到用户组 usermod ...
- Python如何把八进制转换成ASCII码
做题途中拿到一串八进制字符串 0126 062 0126 0163 0142 0103 0102 0153 0142 062 065 0154 0111 0121 0157 0113 0111 010 ...
- linux虚拟机快照
目录 一:虚拟机快照 一:虚拟机快照 1.什么是快照? 快照可保存虚拟机在特定时刻的状态和数据. 状态包括虚拟机的电源状态(列如,打开电源,关闭电源,挂起). 数据包括组成虚拟机的所有文件,这包括磁盘 ...
- mongo用户认证
mongo@rayos:/opt/mongodb$ mongo --port 28017 MongoDB shell version v4.0.13 connecting to: mongodb:// ...
- 字的研究(3)fontTools-TrueType轮廓坐标的获取以及基于TrueType的Glyph实例的构建
前言 本文主要介绍如果使用Python第三方库fontTools提取OpenType字体文件中的TrueType轮廓坐标以及如何构建基于TrueType的Glyph实例 TrueType轮廓坐标的获取 ...
- 在 Dapr 中使用 Cron 绑定的计划任务
我昨天写了一篇关于在微服务应用程序中采用Dapr的好处的文章<从服务之间的调用来看 我们为什么需要Dapr>[1], 在那篇文章中,我们专注于"服务调用"构建块 [2] ...