Install Nessus on Kali and Enhance Linux Distribution

Published:24 February 2021 - 10 min. read

Justin Sylvester Image

Justin Sylvester

Read more tutorials by Justin Sylvester!

Azure Cloud Labs: these FREE, on‑demand Azure Cloud Labs will get you into a real‑world environment and account, walking you through step‑by‑step how to best protect, secure, and recover Azure data.

Tenable’s Nessus Vulnerability Scanner facilitates the quick identification of software flaws, missing patches, malware, and misconfigurations across your connected devices. Once you install Nessus on Kali Linux assists with vulnerability prioritization and finding fixable actions.

Kali is a Debian-based Linux distribution focused on security professionals and provides hundreds of built-in penetration testing tools. In this article, you will learn how to couple Nessus with Kali to enhance an already capable Linux distribution with a powerful network testing tool.

Prerequisites

To follow along with this tutorial, you will need to adhere to the following requirements.

  1. Administrative, or “root”, access to a Kali Linux installation with internet access. The following are recommended minimum system requirements, according to Tenable’s hardware recommendations:
  2. Access to a Nessus-supported browser. The following browsers are supported by Nessus, according to Tenable’s software requirements:
    • Google Chrome (50+)
    • Apple Safari (10+)
    • Mozilla Firefox (50+)
    • Internet Explorer (11+)

Downloading the Nessus Installation Package on Kali Linux

As Nessus is not installed by default on Kali, you will need to download the Nessus software package prior to installation. First, start the Kali Linux operating system and launch a supported web browser. Follow the below steps to download the necessary Nessus installation files.

  1. Navigate to the Nessus downloads page.

2. Nessus is supported on a wide range of operating systems and architectures. In this article, a 64-bit version of Kali Linux (version 2020.4) is used. Therefore, the Nessus-8.13.1-debian6_amd.deb is the correct installation package:

Product downloads page showing Nessus-8.13.1-debian6_amd.deb installation package for download.
Product downloads page showing Nessus-8.13.1-debian6_amd.deb installation package for download.

3. Click on the download link and when prompted, review the License Agreement and select I Agree.

Nessus License Agreement page showing the I Agree selection.
Nessus License Agreement page showing the I Agree selection.

Now that the download is complete, it is time to verify the integrity of the installation package. It is important to verify that the file has not been modified during transit.

Verifying the Nessus Installation Package Integrity

Verifying file integrity becomes especially important when you download a file from an external source, such as a vendor website. Verify the listed checksum of the file to the computed hash of the downloaded Nessus installation package, as shown below.

Related: How to Create Checksums in Windows (Built-in and Third-Party Tools)

  1. Open a Terminal by right-clicking anywhere on your Kali Linux desktop and selecting Open Terminal Here.
Kali Linux desktop menu showing Open Terminal Here selection
Kali Linux desktop menu showing Open Terminal Here selection

2. Click on the Checksum link to obtain the SHA256 hash from the downloads page.

Product downloads page showing Nessus-8.13.1-debian6_amd.deb installation checksum link.
Product downloads page showing Nessus-8.13.1-debian6_amd.deb installation checksum link.

3. A popup window will display showing both an MD5 and SHA256 hash value. To copy the SHA256 value to your clipboard, simply click the Copy icon to the right of the hash.

Product downloads page showing Nessus-8.13.1-debian6_amd.deb download MD5 and SHA256 checksum values.
Product downloads page showing Nessus-8.13.1-debian6_amd.deb download MD5 and SHA256 checksum values.

4. Run the following command, in the previously opened Terminal window, to verify the downloaded file’s checksum.

# Substitute "checksumhash" with the provided SHA256 hash on the download website.
# Replace the path below with your download location using an absolute path.
echo "checksumhash" /path/to/download | sha256sum -c 
Command-line output demonstrating the verification of a checksum value.
Command-line output demonstrating the verification of a checksum value.

If the output of your command does not suggest that your installation package is OK, do not install the software.

Installing Nessus on Kali Linux

Once you’ve verified the package’s integrity, it’s time to install the Nessus application. Using the Debian Package Manager (dpkg) tool with the i (install) parameter, pass the downloaded installation package, as shown below.

Be sure to use the sudo command to install Nessus under an account with administrative rights.

# Replace the path below with your downloaded installation file.
sudo dpkg -i /home/kali/Downloads/Nessus-8.13.1-debian6_amd64.deb
Command output showing the result of the Nessus application installation.
Command output showing the result of the Nessus application installation.

Way to go! You’ve just installed the Nessus Vulnerability Scanner on your Kali Linux operating system. The next section walks you through obtaining an activation code.

Obtaining an Activation Code for Nessus Vulnerability Scanner

Tenable offers a few variations of their Nessus Vulnerability Scanner, two of which are Nessus Essentials and Nessus Professional. Nessus Essentials is free but provides a reduced feature set compared to its paid counterpart, Nessus Professional. A few of the main Nessus Essentials limitations are listed below:

This tutorial will be using Nessus Essentials. Despite being free, the software does require a valid activation code as outlined below.

  1. Navigate to the Nessus Essentials Product Portal.

2. Fill out the registration form with your First Name, Last Name, and Email Address.

Tenable Nessus Essentials product registration page.
Tenable Nessus Essentials product registration page.

3. Click on the Register button, to complete registration.

Completing registration on the Tenable Nessus Essentials product registration page.
Completing registration on the Tenable Nessus Essentials product registration page.

4. Upon successful registration, Tenable will send you a confirmation email. Finally, you will be prompted with the following message:

The Nessus Essentials product registration page showing the result of successful registration
The Nessus Essentials product registration page showing the result of successful registration

5. Now check your email, you should find an activation code that appears like D234-C7CB-04AF-79A6-1555. The email sender address will be [email protected]. Be sure to check your junk mail if you do not see the registration email in your inbox!

Start the Nessus Service and Set for Automatic Startup

Before using the Nessus application, the nessusd system service must be started. This service controls and makes available the Nessus application interface and functions, such as scans. To start the nessusd service, follow the below steps.

  1. Open a terminal by right-clicking on your Kali Linux desktop and selecting Open Terminal Here.

2. Start the nessusd service by issuing the following command:

# Start the nessusd service.
sudo systemctl start nessusd

This article assumes you are not running under the root account, but an account with administrative elevation rights. Therefore commands requiring elevation are prefaced with the sudo command to ensure elevation.

3. Verify that the service is in the running state by issuing the following command and verifying the expected output is shown in the below screenshot, as indicated by the Active: active (running) output.

# Obtain the Nessus current service state.
sudo systemctl status nessusd 
Command output showing the active nessusd service
Command output showing the active nessusd service

Enabling the nessusd Service to Start on Boot

By default, the nessusd service does not start when your Kali Linux operating system boots. To enable the nessusd service to run when the Kali Linux operating system starts, run the following command to enable the nessusd service on startup.

# Enable the nessusd service at boot
sudo systemctl enable nessusd

Verify that the service is in an enabled state by issuing the below command. As shown in the below screenshot, the nessusd service shows enabled in the Loaded output line.

# Obtain the Nessus current service state.
sudo systemctl status nessusd
Command output showing the enabled nessusd service
Command output showing the enabled nessusd service

Activating the Nessus Application

Now that you’ve obtained your activation code and started the nessusd service, it is time to activate your Nessus installation. To activate your Nessus installation follow the below steps.

  1. Open a web browser on your Kali Linux operating system and navigate to the address, https://localhost:8834. Keep in mind that the default port is 8834 and not the typical port 443.

The Nessus installation comes with a self-signed SSL certificate, which will likely prompt you with a warning when you attempt to access the Nessus application’s web interface. Tenable provides options to customize the SSL certificate used by your Nessus application.

2. On the Welcome to Nessus screen, select the product version, Nessus Essentials.

Selecting Nessus Essentials as the Nessus product version.
Selecting Nessus Essentials as the Nessus product version.

3. Select Skip on the Get an activation code screen, as you have previously obtained the activation code.

Selecting the Skip button on the retrieve activation code screen.
Selecting the Skip button on the retrieve activation code screen.

4. Enter the Activation Code, on the Register Nessus screen, that you received during the registration process and select Continue. In the screenshot below, you will see that this tutorial’s mock activation code is D234-C7CB-04AF-79A6-1555:

Entering the activation code into the Nessus application.
Entering the activation code into the Nessus application.

5. When prompted with the Create a user account screen, define a Username and Password and click on Submit. The defined username and password are used to log into the Nessus application.

Creating a user account for the Nessus application.
Creating a user account for the Nessus application.

6. Once the scanner finishes initializing, which may take a while, enter the username and password for the user account that you established earlier in this tutorial and click on Sign In.

Displaying the username and password login screen.
Displaying the username and password login screen.

Awesome work! Installation and activation of your Nessus Vulnerability Scanner software is complete! In the next section, you will configure Nessus to target your local system with a vulnerability scan.

Running a Nessus Vulnerability Scan

You’ve now got Nessus up and running. It’s time to kick the tires and see what this handy tool can do; finding vulnerabilities! The remainder of this section provides instruction on how to configure and launch a scan against your Kali Linux host.

Assuming you’re still on the Nessus application page, supply the username and password for the user account that you established earlier in this tutorial if you are not currently logged in.

Upon initial login, you may be prompted with a welcome message that allows you to quickly configure a discovery scan, which locates networked devices. Feel free to close this message, as you are going to configure and launch a custom scan.

The Nessus application showing the Close selection button highlighted.
The Nessus application showing the Close selection button highlighted.

There are several different methods that can be used to configure a scan. This tutorial focuses on the following three-step approach, as outlined below and in the following sections.

  1. Configure a scan policy
  2. Configure a scan
  3. Launch the scan

Configuring a Nessus Vulnerability Scan Policy

Scan policies may be thought of as a set of scanning instructions. Scan policies direct the scanner on what tasks to perform and how to perform those tasks.

There is a collection of pre-configured scan policy templates or customize an advanced scan to choose from. Tenable categorizes Nessus scanning capabilities into the following three categories:

To create and configure your scan policy follow the below steps.

  1. Select Policies from the menu on the left-hand side of the screen, under the Resources heading.
Selecting Policies from the Nessues menu.
Selecting Policies from the Nessues menu.

2. Select New Policy, which is located in the upper right-hand corner of the screen.

Creating a New Policy from the Nessus Policies page.
Creating a New Policy from the Nessus Policies page.

3. Select Basic Network Scan. The Basic Network Scan option includes pre-configured settings required to assess your Kali Linux host for vulnerabilities.

Selecting the Basic Network Scan from the Nessus Policy Templates page.
Selecting the Basic Network Scan from the Nessus Policy Templates page.

4. After selecting a scan policy template there are additional configurable elements shown. Leave each pre-configured setting in its default state for now, but feel free to experiment at a later time.

Enter a Name for your scan policy and click on the Save button. In the following screenshot, you will see that this tutorial’s scan policy name is Basic Network Vulnerability Scan Policy.

Entering the policy name and using pre-configured defaults on the Nessus Basic Network Vulnerability scan policy page.
Entering the policy name and using pre-configured defaults on the Nessus Basic Network Vulnerability scan policy page.

To launch specific vulnerability tests (some of which this tutorial will demonstrate), Tenable requires administrative credentials. Executing a scan without credentials provides insight into externally enumerable vulnerabilities, which mimics an attacker’s perspective.

Configuring a Nessus Vulnerability Scan

The next step in the process is to configure your scan. During this phase of the process, select a scan policy and target host as outlined below.

  1. Select My Scans from the menu on the left-hand side of the screen.
Selecting My Scans on the Nessus menu.
Selecting My Scans on the Nessus menu.

2. Click on the New Scan button, which is located in the upper right-hand corner of the screen.

Creating a New Scan in Nessus.
Creating a New Scan in Nessus.

3. Select the User Defined tab to choose the newly configured Basic Network Vulnerability Scan.

Choosing to create a User Defined Nessus scan.
Choosing to create a User Defined Nessus scan.

4. Select the scan policy that you configured in the previous section. In the following screenshot, you will see that this tutorial’s Basic Network Vulnerability Scan Policy appears for selection.

Selecting the Basic Network Vulnerability Scan Policy.
Selecting the Basic Network Vulnerability Scan Policy.

5. Define your target(s). To target your local Kali Linux host, specify localhost in the Targets text entry box.

Defining a vulnerability scan target.
Defining a vulnerability scan target.

Define multiple targets within a single scan by separating each target with a comma. For example, specifying localhost,10.10.10.10 will target your localhost and the 10.10.10.10 IP address.

6. Provide a Name for your scan and click on the Save button. In the following screenshot, you will see that this tutorial’s scan has a Name of Basic Network Vulnerability Scan.

Saving the new Nessus vulnerability scan.
Saving the new Nessus vulnerability scan.

Launching a Nessus Vulnerability Scan

After saving your scan, create an entry in the My Scans section of the Nessus application.

  1. To launch your scan, click on the Play button, next to the Basic Network Vulnerability Scan.
Playing a Nessus vulnerability scan.
Playing a Nessus vulnerability scan.

2. The rotating green arrow icon indicates that the scan is running. Be patient, as it takes time for the scan to complete.

Demonstrating that a rotating green arrow icon indicates a running scan.
Demonstrating that a rotating green arrow icon indicates a running scan.

3. When the rotating green arrow icon changes to a green checkmark, the scan is complete. Click on the scan name to view the results!

Completing a vulnerability scan as indicated by the green checkmark.
Completing a vulnerability scan as indicated by the green checkmark.

Awesome work! You just ran a vulnerability scan against your local Kali Linux host! To display the results click on the Vulnerabilities tab on the scan summary page.

Displaying the found vulnerabilities on the scan summary page.
Displaying the found vulnerabilities on the scan summary page.

Next Steps

In this tutorial, you downloaded, installed, and configured Nessus on a Kali Linux host. You then leveraged the Nessus technology to assess a local Kali Linux host for vulnerabilities.

Take a more in-depth look at the scan results. What information can you gather from the scan that you performed? After you gain comfort using the Nessus application, feel free to target additional hosts by supplying the host’s IP address as a target within your scan.

Hate ads? Want to support the writer? Get many of our tutorials packaged as an ATA Guidebook.

Explore ATA Guidebooks

Looks like you're offline!