Контейнер Docker для OpenVAS на Ubuntu.
По умолчанию последние образы включают в себя базу OpenVAS, а также NVT и сертификаты, необходимые для запуска OpenVAS.
Мы приняли решение перейти на 9 как ветку по умолчанию, так как 8, похоже, доставляет много проблем Docker.
Мы предлагаем вам использовать 9, так как он намного стабильнее.
Наша сборка Openvas9 была разработана для того, чтобы представлять собой уменьшенный образ с меньшим количеством встроенных дополнительных компонентов.
Обратите внимание, что OpenVAS 8 больше не собирается, поскольку OpenVAS 9 теперь является стандартным.
Образ все еще может быть извлечен из Dockerhub, однако источник был удален в этом github, как это стандартно для устаревших образов Docker.
Openvas Версия | Tag | Web UI Порт |
---|---|---|
9 | latest/9 | 443 |
Использование
Просто запустите:
# latest (9)
docker run -d -p 443:443 --name openvas mikesplain/openvas
# 9
docker run -d -p 443:443 --name openvas mikesplain/openvas:9
It seems like your OpenVAS-9 installation is OK
Username: admin
Password: admin
docker top openvas
В выходных данных найдите процесс сканирования данных сертификат.
Для запуска bash внутри контейнера выполните:
docker exec -it openvas bash
Укажите DNS-имя хоста
По умолчанию система разрешает подключения только для имени хоста «openvas».
Чтобы разрешить доступ с использованием собственного имени DNS, вы должны использовать эту команду:
docker run -d -p 443:443 -e PUBLIC_HOSTNAME=myopenvas.example.org --name openvas mikesplain/openvas
OpenVAS Manager
docker run -d -p 443:443 -p 9390:9390 --name openvas mikesplain/openvas
Поддержка томов
Просто смонтируйте ваш каталог данных в /var/lib/openvas/mgr/:
mkdir data
docker run -d -p 443:443 -v $(pwd)/data:/var/lib/openvas/mgr/ --name openvas mikesplain/openvas
Обратите внимание, ваш локальный каталог должен существовать до запуска.
Установите пароль администратора
Пароль администратора можно изменить, указав пароль во время выполнения с помощью переменной env OV_PASSWORD:
docker run -d -p 443:443 -e OV_PASSWORD=securepassword41 --name openvas mikesplain/openvas
Обновление NVTs
Иногда вам нужно обновить NVT.
Мы обновляем контейнер примерно раз в неделю, но вы можете обновить ваш контейнер, выполнив в нем несколько команд:
docker exec -it openvas bash
## внутри контейнера
greenbone-nvt-sync
openvasmd --rebuild --progress
greenbone-certdata-sync
greenbone-scapdata-sync
openvasmd --update --verbose --progress
/etc/init.d/openvas-manager restart
/etc/init.d/openvas-scanner restart
Docker compose (экспериментально)
Для простоты предоставляется файл docker-compose.yml, а также конфигурация для Nginx в качестве обратного прокси-сервера со следующими функциями:
- Nginx как обратный прокси
- Перенаправление с порта 80 (http) на порт 433 (https)
- Автоматические SSL-сертификаты от Let’s Encrypt
- cron, который ежедневно обновляет NVTs
Для запуска:
Измените «example.com» в следующих файлах:
Далее:
- Измените переменную окружения «OV_PASSWORD» в docker-compose.yml
- Установите последнюю версию docker-compose
- запустите
docker-compose up -d
Поддержка LDAP (экспериментальная)
Openvas не поддерживает полную интеграцию ldap, а только аутентификацию для каждого пользователя.
Здесь существует обходной путь, синхронизирующий пользователя-администратора ldap (определяемого LDAP_ADMIN_FILTER) с пользователями-администраторами openvas при каждом запуске приложения.
Чтобы использовать это, просто нужно указать обязательные переменные ldap env:
docker run -d -p 443:443 -p 9390:9390 --name openvas -e LDAP_HOST=your.ldap.host -e LDAP_BIND_DN=uid=binduid,dc=company,dc=com -e LDAP_BASE_DN=cn=accounts,dc=company,dc=com -e LDAP_AUTH_DN=uid=%s,cn=users,cn=accounts,dc=company,dc=com -e LDAP_ADMIN_FILTER=memberOf=cn=admins,cn=groups,cn=accounts,dc=company,dc=com -e LDAP_PASSWORD=password -e OV_PASSWORD=admin mikesplain/openvas
Refrenced from - https://hub.docker.com/r/mikesplain/openvas/