运行openvas
配置openvas
查看配置openvassd -s
1.同步feed
greenbone-nvt-sync 同步feed,花费大约20分钟
2.运行redis,openvas已经安装了redis的配置文件示例
redis-server /usr/share/doc/openvas-scanner/redis_config_examples/redis_4_0.conf
3.运行openvas
openvassd
建立/usr/var/run/openvassd.sock.
更新配置或者更新feed,需要重新加载配置,发送SIGHUP信号
kill -1 openvassd
日志在/usr/var/log/gvm/openvassd.log
日志完全被/usr/etc/openvas/openvassd_log.conf控制。
配置文件/usr/etc/openvas/openvassd.conf
4.运行gvmd
有inet socket 和unix socket两种运行方式,分别表示监听的socket方式。
gvmd --listen=127.0.0.1 #inet socket
gvmd #unix socket,建立/usr/var/run/gvmd.sock
日志在/usr/var/log/gvm/gvmd.log
日志完全被/usr/etc/gvm/gvmd_log.conf控制。
5.运行gsad
gsad 连接到gvmd上,所以根据gvmd的监听方式,也存在两种运行方式。
gvmd 创建用户
gvmd --create-user=admin --password=admin
l
gsad --http-only --mlisten=127.0.0.1 --mport=9390 #与gvmd的inet socket通信,不加密方式
gsad --mlisten=127.0.0.1 --mport=9390 #与gvmd的inet socket通信,加密方式
gsad--munix-socket=/usr/var/run/gvmd.sock #与gvmd 的unix socket通信
查看gsad帮助 gsad --help
# gsad --http-only --mlisten=127.0.0.1 --mport=9390
现在可以用admin账号登录 127.0.0.1:80端口,访问gsa了,建立task,启动扫描任务。
# gsad --mlisten=127.0.0.1 --mport=9390
现在可以用admin账号登录 https://192.168.10.129端口,访问gsa了,建立task,启动扫描任务。
#别忘了用gvmd 命令创建用户admin.
6.运行gvm-tools
gvm-tools文档:https://gvm-tools.readthedocs.io/en/latest/
gvm-tools包含两个命令gvm-cli和gvm-pyshell.
还有一个python-gvm库,里面是gvm的pythonAPI接口,用于编写python脚本。
例子:
unix:
gvm-cli socket --gmp-username admin --gmp-password admin --socketpath /usr/var/run/gvmd.sock --log DEBUG -X '
tls:
gvm-cli tls --gmp-username admin --gmp-password admin --log DEBUG -X '
gvm-pyshell
gvm-pyshell socket --socketpath /usr/var/run/gvmd.sock --gmp-username admin --gmp-password admin --protocol GMP/OSP -i
python-API 库内置了socket文件为/usr/local/var/run/gvmd.sock,
为了运行给出的脚本例子,
vim /usr/lib/python3.7/site-packages/ gvm/connections.py +41
修改之后运行命令可以不用指定socketpath,
gvm-cli socket --gmp-username admin --gmp-password admin --log DEBUG -X '
gvm-pyshell socket --gmp-username admin --gmp-password admin --protocol GMP/OSP -i
--protocol 可以指定两种协议,一种GMP,一种OSP,默认GMP
gvm-pyshell socket --gmp-username admin --gmp-password admin --protocol GMP abc.txt
python脚本
pretty_print(gmp.get_tasks())
GMP协议
当前支持的协议包括gmpv7,gmpv8,ospv1
gmp version 7 https://docs.greenbone.net/API/GMP/gmp-7.0.html
gmp version 8 https://docs.greenbone.net/API/GMP/gmp-8.0.html
osp version 1 https://docs.greenbone.net/API/OSP/osp-1.1.html
#说明在/usr/lib/python3.7/site-packages/gvm/protocols/__init__.py
如果使用gvm-cli或者gvm-pyshell,需要研究下python和xml
未完待续,