> ## Documentation Index
> Fetch the complete documentation index at: https://docs.threataware.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Tenable Nessus

> Connect ThreatAware to Tenable Nessus for vulnerability scanning and assessment data

## Overview

The Tenable Nessus integration enables ThreatAware to collect vulnerability scanning and assessment data from your Tenable Nessus environment, providing visibility into security vulnerabilities and scanning results.

<Info>
  **Connection Method**: API with Port Forwarding
  **Setup Time**: 20 minutes
  **Access Required**: Tenable Nessus Administrator account
</Info>

## Data collected

The Tenable Nessus integration provides:

* Vulnerability scan results
* Asset vulnerability assessments
* Scan compliance data
* Plugin information
* Remediation recommendations

## Use cases

<CardGroup cols={2}>
  <Card title="Vulnerability Monitoring" icon="triangle-exclamation">
    Monitor vulnerabilities discovered by Nessus across devices
  </Card>

  <Card title="Risk Assessment" icon="gauge">
    Assess device risk based on vulnerability scan results
  </Card>

  <Card title="Compliance Validation" icon="clipboard-check">
    Verify vulnerability scanning compliance and remediation
  </Card>

  <Card title="Remediation Tracking" icon="wrench">
    Track vulnerability remediation progress and status
  </Card>
</CardGroup>

## Setup instructions

<Steps>
  <Step title="Access ThreatAware Dashboard">
    Log in to your ThreatAware instance and navigate to **Settings** > **Systems**.
  </Step>

  <Step title="Search for Tenable Nessus">
    Use the search bar to find "Tenable Nessus" in the integrations list.
  </Step>

  <Step title="Click Connect">
    Click **Connect** to open the connection popup window.
  </Step>

  <Step title="Set Up Tenable User Account">
    In your Tenable Nessus environment:

    * Refer to the [Tenable Account Setup Guide](https://docs.tenable.com/tenablesc/Content/EnableAPIKeys.htm) to set up your user account
    * Ensure the account has API access permissions
    * Document the account credentials for later use
  </Step>

  <Step title="Generate API Keys">
    Still in Tenable Nessus:

    * Follow the [Tenable API Key Generation Guide](https://docs.tenable.com/tenablesc/Content/GenerateAPIKey.htm)
    * Generate **API Access Key** and **API Secret Key**
    * Copy both keys for use in ThreatAware
    * Store the keys securely

    <Warning>
      Keep your API Secret Key secure. Never share it publicly or store it in version control.
    </Warning>
  </Step>

  <Step title="Configure Firewall Port Forwarding">
    Set up firewall rules to allow ThreatAware to reach your Tenable Nessus server:

    * Create a port forward on your firewall to the Tenable server
    * Restrict access to ThreatAware's current allowlist IP addresses, available in-product under **Settings → Integrations → AWS Account / IP Whitelist Info**
    * Note the **public IP address** and **forwarded port** for ThreatAware configuration

    <Info>
      Port forwarding is necessary if your Tenable server is behind a firewall
    </Info>
  </Step>

  <Step title="Input Details into ThreatAware">
    Return to the ThreatAware connection popup and enter:

    * **API Access Key**: From step 5
    * **API Secret Key**: From step 5
    * **Public IP Address**: Your public-facing IP or forwarded address
    * **Port Number**: The forwarded port from step 6
    * Click **Connect** to establish the integration
  </Step>

  <Step title="Verify Connection">
    After connecting:

    * Check that the **Integration Status** shows as **Active**
    * Verify vulnerability scan data begins appearing in ThreatAware within 5-10 minutes
    * Check the last sync timestamp
  </Step>
</Steps>

## Required credentials

<AccordionGroup>
  <Accordion title="API Access Key" icon="key">
    **Field Name**: Tenable Nessus API Access Key
    **Type**: Password (encrypted)
    **Description**: Your API Access Key generated in Tenable Nessus

    Used for API authentication and requests
  </Accordion>

  <Accordion title="API Secret Key" icon="lock">
    **Field Name**: Tenable Nessus API Secret Key
    **Type**: Password (encrypted)
    **Description**: Your API Secret Key generated in Tenable Nessus

    <Warning>
      This is a sensitive credential. Store it securely and never share it.
    </Warning>
  </Accordion>

  <Accordion title="Public IP Address" icon="server">
    **Field Name**: Tenable Server Public IP
    **Type**: String
    **Description**: The public IP address or forwarded address for your Tenable Nessus server

    **Format**: IPv4 address (e.g., `203.0.113.42`)
  </Accordion>

  <Accordion title="Port Number" icon="plug">
    **Field Name**: Tenable Server Port
    **Type**: Integer
    **Description**: The forwarded port number configured in step 6

    **Example**: `8834` (default Nessus port) or your forwarded port number
  </Accordion>
</AccordionGroup>

## Verification and testing

After setup, verify the integration is working correctly:

1. **Check Integration Status**
   * Navigate to **Settings** > **Systems** in ThreatAware
   * Confirm Tenable Nessus shows **Active** status
   * Check the last sync timestamp

2. **Verify Data Collection**
   * Wait 5-10 minutes for the initial data poll
   * Check for vulnerability data in ThreatAware
   * Verify scan results match what you see in Tenable Nessus

3. **Test Queries**
   * Create a test query to filter devices with Nessus vulnerability data
   * Verify the scan results and remediation status match your expectations

## Troubleshooting

<AccordionGroup>
  <Accordion title="Invalid API Keys" icon="triangle-exclamation">
    **Symptoms**: Authentication fails or access is denied

    **Solutions**:

    * Verify the **API Access Key** and **API Secret Key** are correct
    * Ensure keys were copied without extra spaces
    * Confirm the keys have not been revoked in Tenable
    * Check that the user account still has API access enabled
    * Generate new API keys if needed
  </Accordion>

  <Accordion title="Connection Timeout" icon="clock">
    **Symptoms**: Integration fails to connect or times out

    **Solutions**:

    * Verify the **Public IP Address** and **Port** are correct
    * Confirm the port forward is correctly configured on your firewall
    * Test connectivity: `telnet <public-ip> <port>` from a terminal
    * Ensure ThreatAware's allowlist IPs are whitelisted (see **Settings → Integrations → AWS Account / IP Whitelist Info**)
    * Verify your Tenable Nessus server is online and accessible
  </Accordion>

  <Accordion title="Firewall Configuration Issues" icon="ban">
    **Symptoms**: Connection timeout despite correct credentials

    **Solutions**:

    * Verify firewall rules restrict access to ThreatAware's current allowlist IPs (see **Settings → Integrations → AWS Account / IP Whitelist Info**)
    * Confirm the port forward points to the correct Tenable server
    * Check that inbound HTTPS (443) or custom port is allowed
    * Verify no WAF or additional security blocks the connection
    * Contact your network administrator for firewall verification
  </Accordion>

  <Accordion title="No Vulnerability Data" icon="database">
    **Symptoms**: Integration shows active but no vulnerability data appears

    **Solutions**:

    * Verify there are completed scans in Tenable Nessus
    * Confirm the API account has permissions to view scan results
    * Check that vulnerability data is not restricted by user permissions
    * Ensure scans have completed and have results available
    * Wait up to 30 minutes for initial data sync to complete
  </Accordion>

  <Accordion title="API Permission Issues" icon="lock-exclamation">
    **Symptoms**: Connection succeeds but limited or no data appears

    **Solutions**:

    * Verify the API user has sufficient permissions in Tenable
    * Check that the user can access all required scans
    * Ensure the user is not restricted to specific asset groups
    * Review the [Tenable API Documentation](https://docs.tenable.com/) for required permissions
    * Consider using an admin account for API access
  </Accordion>
</AccordionGroup>

## Additional resources

<CardGroup cols={2}>
  <Card title="Tenable Nessus Documentation" icon="book" href="https://docs.tenable.com/tenablesc/">
    Official Tenable Nessus documentation for API setup and configuration
  </Card>

  <Card title="ThreatAware Support" icon="life-ring" href="mailto:help@threataware.com">
    Contact ThreatAware support for integration assistance
  </Card>
</CardGroup>

## Best practices

<Tip>
  **API Key Management**

  * Create a dedicated API user specifically for ThreatAware
  * Document API keys in your organisation's credential manager
  * Rotate API keys annually or per your security policy
  * Monitor for authentication failures in ThreatAware regularly
</Tip>

<Tip>
  **Security Considerations**

  * Never share API Secret Keys publicly or in version control
  * Use firewall rules to restrict API access to ThreatAware only
  * Limit the API account to read-only permissions
  * Review Tenable audit logs to monitor API usage
  * Follow your organisation's principle of least privilege
</Tip>
