{"id":13840460,"url":"https://github.com/mikesplain/openvas-docker","last_synced_at":"2026-01-10T18:47:05.356Z","repository":{"id":15162776,"uuid":"17890445","full_name":"mikesplain/openvas-docker","owner":"mikesplain","description":"A Docker container for Openvas","archived":true,"fork":false,"pushed_at":"2024-08-29T13:12:27.000Z","size":216,"stargazers_count":773,"open_issues_count":0,"forks_count":306,"subscribers_count":45,"default_branch":"master","last_synced_at":"2025-01-12T10:57:56.739Z","etag":null,"topics":["docker","docker-container","openvas","scan","security","shell"],"latest_commit_sha":null,"homepage":null,"language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mikesplain.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2014-03-19T02:55:55.000Z","updated_at":"2025-01-10T01:44:53.000Z","dependencies_parsed_at":"2022-08-08T17:01:47.161Z","dependency_job_id":"9c6cf2cc-2263-4267-8bbb-96347d802411","html_url":"https://github.com/mikesplain/openvas-docker","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikesplain%2Fopenvas-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikesplain%2Fopenvas-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikesplain%2Fopenvas-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikesplain%2Fopenvas-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mikesplain","download_url":"https://codeload.github.com/mikesplain/openvas-docker/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234555584,"owners_count":18851801,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","docker-container","openvas","scan","security","shell"],"created_at":"2024-08-04T17:00:48.848Z","updated_at":"2025-09-28T19:31:01.061Z","avatar_url":"https://github.com/mikesplain.png","language":"Dockerfile","funding_links":[],"categories":["Dockerfile","Dockerfile (37)"],"sub_categories":[],"readme":"## This has been deprecated\n\nThanks to the many users over the years for continueing to develop and support this project. I originally built this container to solve a problem at work and I was amazed to see many other folks interested in using it as well.  With over 29 Million downloads from Docker hub, it's clear to me that it has had a good run, but as correctly pointed out in a number of issues such as [#271](https://github.com/mikesplain/openvas-docker/issues/271), there are better, supported solutions out there.  Thanks to all the support, contributions, and forks over the years.  And finally, thanks to the folks a Greenbone for a wonderful tool and fully supporting docker based deployments going forward.\n\nPlease reference the [Greenbone Documentation](https://greenbone.github.io/docs/latest/) on how to utilize their [containers](https://hub.docker.com/u/greenbone). \n\nCheers 🍻\nMike\n\n\nOpenVAS image for Docker\n==============\n\n[![Travis CI](https://img.shields.io/travis/mikesplain/openvas-docker/master.svg)](https://travis-ci.org/mikesplain/openvas-docker/branches) [![Docker Pulls](https://img.shields.io/docker/pulls/mikesplain/openvas.svg)](https://hub.docker.com/r/mikesplain/openvas/) [![Docker Stars](https://img.shields.io/docker/stars/mikesplain/openvas.svg)](https://hub.docker.com/r/mikesplain/openvas/) [![](https://images.microbadger.com/badges/image/mikesplain/openvas.svg)](https://microbadger.com/images/mikesplain/openvas \"Get your own image badge on microbadger.com\")\n\nA Docker container for OpenVAS on Ubuntu.  By default, the latest images includes the OpenVAS Base as well as the NVTs and Certs required to run OpenVAS.  We made the decision to move to 9 as the default branch since 8 seems to have [many issues](https://github.com/mikesplain/openvas-docker/issues/84) in docker.  We suggest you use 9 as it is much more stable. Our Openvas9 build was designed to be a smaller image with fewer extras built in. Please note, OpenVAS 8 is no longer being built as OpenVAS 9 is now standard.  The image is can still be pulled from the Docker hub, however the source has been removed in this github as is standard with deprecated Docker Images.\n\n\n| Openvas Version | Tag     | Web UI Port |\n|-----------------|---------|-------------|\n| 9               | latest/9| 443        |\n\n\n\nUsage\n-----\n\nSimply run:\n\n```\n# latest (9)\ndocker run -d -p 443:443 --name openvas mikesplain/openvas\n# 9\ndocker run -d -p 443:443 --name openvas mikesplain/openvas:9\n```\n\nThis will grab the container from the docker registry and start it up.  Openvas startup can take some time (4-5 minutes while NVT's are scanned and databases rebuilt), so be patient.  Once you see a `It seems like your OpenVAS-9 installation is OK.` process in the logs, the web ui is good to go.  Goto `https://\u003cmachinename\u003e`\n\n```\nUsername: admin\nPassword: admin\n```\n\nTo check the status of the process, run:\n\n```\ndocker top openvas\n```\n\nIn the output, look for the process scanning cert data.  It contains a percentage.\n\nTo run bash inside the container run:\n\n```\ndocker exec -it openvas bash\n```\n\n#### Specify DNS Hostname\nBy default, the system only allows connections for the hostname \"openvas\".  To allow access using a custom DNS name, you must use this command:\n\n```\ndocker run -d -p 443:443 -e PUBLIC_HOSTNAME=myopenvas.example.org --name openvas mikesplain/openvas\n```\n\n#### OpenVAS Manager\nTo use OpenVAS Manager, add port `9390` to you docker run command:\n```\ndocker run -d -p 443:443 -p 9390:9390 --name openvas mikesplain/openvas\n```\n\n#### Volume Support\nWe now support volumes. Simply mount your data directory to `/var/lib/openvas/mgr/`:\n```\nmkdir data\ndocker run -d -p 443:443 -v $(pwd)/data:/var/lib/openvas/mgr/ --name openvas mikesplain/openvas\n```\nNote, your local directory must exist prior to running.\n\n#### Set Admin Password\nThe admin password can be changed by specifying a password at runtime using the env variable `OV_PASSWORD`:\n```\ndocker run -d -p 443:443 -e OV_PASSWORD=securepassword41 --name openvas mikesplain/openvas\n```\n#### Update NVTs\nOccasionally you'll need to update NVTs. We update the container about once a week but you can update your container by execing into the container and running a few commands:\n```\ndocker exec -it openvas bash\n## inside container\ngreenbone-nvt-sync\nopenvasmd --rebuild --progress\ngreenbone-certdata-sync\ngreenbone-scapdata-sync\nopenvasmd --update --verbose --progress\n\n/etc/init.d/openvas-manager restart\n/etc/init.d/openvas-scanner restart\n```\n#### Docker compose (experimental)\n\nFor simplicity a docker-compose.yml file is provided, as well as configuration for Nginx as a reverse proxy, with the following features:\n\n* Nginx as a reverse proxy\n* Redirect from port 80 (http) to port 433 (https)\n* Automatic SSL certificates from [Let's Encrypt](https://letsencrypt.org/)\n* A cron that updates daily the NVTs\n\nTo run:\n\n* Change \"example.com\" in the following files:\n  * [docker-compose.yml](docker-compose.yml)\n  * [conf/nginx.conf](conf/nginx.conf)\n  * [conf/nginx_ssl.conf](conf/nginx_ssl.conf)\n* Change the \"OV_PASSWORD\" enviromental variable in [docker-compose.yml](docker-compose.yml)\n* Install the latest [docker-compose](https://docs.docker.com/compose/install/)\n* run `docker-compose up -d`\n\n#### LDAP Support (experimental)\nOpenvas do not support full ldap integration but only per-user authentication. A workaround is in place here by syncing ldap admin user(defined by `LDAP_ADMIN_FILTER `) with openvas admin users everytime the app start up.  To use this, just need to specify the required ldap env variables:\n```\ndocker 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 \n```\n\n#### Email Support\nTo configure the postfix server, provide the following env variables at runtime: `OV_SMTP_HOSTNAME`, `OV_SMTP_PORT`, `OV_SMTP_USERNAME`, `OV_SMTP_KEY`\n```\ndocker run -d -p 443:443 -e OV_SMTP_HOSTNAME=smtp.example.com -e OV_SMTP_PORT=587 -e OV_SMTP_USERNAME=username@example.com -e OV_SMTP_KEY=g0bBl3de3Go0k --name openvas mikesplain/openvas\n```\n\n\nContributing\n------------\n\nI'm always happy to accept [pull requests](https://github.com/mikesplain/openvas-docker/pulls) or [issues](https://github.com/mikesplain/openvas-docker/issues).\n\nThanks\n------\nThanks to hackertarget for the great tutorial: http://hackertarget.com/install-openvas-7-ubuntu/\nThanks to Serge Katzmann for contributing with some great work on OpenVAS 8: https://github.com/sergekatzmann/openvas8-complete\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikesplain%2Fopenvas-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmikesplain%2Fopenvas-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikesplain%2Fopenvas-docker/lists"}