Nessus is a well-known vulnerability assessment tool created by Tenable Inc. It is not open source, but it offers a free license called Essentials for educators, students, and individuals (not companies) starting their careers.
Nessus Essentials is a powerful scanner that collects fingerprints, misconfigurations, and default passwords from targets, then automatically cross-checks them against a known vulnerability database to expose low-hanging fruit and potential investigation threads. Its reports should not be taken as absolute truth, but as a starting point.
The free version has limitations, the most notable being a cap of 16 scanned IP addresses.
The purpose of this post is to guide you through deploying a Linux Appliance virtual machine that comes with Nessus pre-installed.
Tenable Core + Nessus is available for download in VMware and Hyper-V formats, or as an ISO image to boot and install on a bare-metal machine or hypervisor of your choice [Link].
Tenable Core is a heavily customized CentOS 7 operating system designed to run all Tenable products. It includes a web interface accessible at https://IP:8000/ using the default credentials wizard:admin. Through this interface, you can easily monitor instance resources, health, utilization, and more.
After successfully deploying the new instance, navigate to https://IP:8834/ to complete the configuration and licensing process for Nessus. The license is free [Link] and will be sent to your email address.
Because of the nature of this application, it supports command line directives to perform its duties, enabling automation and integration with many other applications:
Syntax
- /opt/nessus/sbin/nessuscli <cmd> <arg1> <arg2>
- /opt/nessus/sbin/nessuscli help
- /opt/nessus/sbin/nessuscli <cmd> help
Running as a service
- /sbin/service nessusd start
- /sbin/service nessusd stop
Basic commands
- nessuscli update
- nessuscli update –all
- nessuscli update –plugins-only
- nessuscli fetch –register <activation code>
- nessuscli fetch –security-center
- nessuscli fix –show
- nessuscli fix –list
- nessuscli fix –list-interfaces
- nessuscli fix –get max_hosts
- nessuscli fix –set max_hosts=200
- nessuscli fix –delete max_hosts
- nessuscli fix –secure –list
- nessuscli mkcert
- nessuscli mkcert-client
- nessuscli lsuser
- nessuscli adduser
- nessuscli chpasswd <username>
- nessuscli rmuser
- nessuscli bug-report-generator
- nessuscli bug-report-generator [–quiet] [–scrub] [–full]
- nessuscli agent status