Configure the Tenable Identity Exposure Syslog Collector App
Required User Role: Basic User
Note: The Tenable integration with Microsoft Azure Sentinel works with a Basic User if that user is assigned Can View permissions on the assets they are to export, along with Can Use permissions on tags the assets are assigned. Without the Can Use tag permissions, the assets return undefined or the integration fails to export vulnerabilities if a tag filter is used. For more information on Tenable Vulnerability Management permissions and user roles, refer to Permissions in the Tenable Developer Portal.
The TIE syslog collector allows you to send TIE syslog messages to Microsoft Azure Sentinel for centralized alerting and reporting. Microsoft Azure Sentinel is a scalable, cloud-native, security information event management (SIEM), and security orchestration automated response (SOAR) solution. For more information about Microsoft Sentinel, refer to the Microsoft documentation. To complete this setup, follow these configuration processes:
-
Configure the Syslog server
- Install and onboard the Microsoft agent for Linux
- Check agent logs on the Syslog server
- Configure TenableIE to send logs to your Syslog server
- Configure the agent to collect the custom logs
Note: This data connector depends on afad_parser based on a Kusto function to work as expected. This is deployed with the Microsoft Sentinel solution.
Before you begin:
- You must have a Logs Analytics Workspace with Microsoft Sentinel enabled in your Azure subscription.
- For assistance with launching Microsoft Sentinel, see the Microsoft Sentinel quick start guide.
Note: Tenable Identity Exposure currently does not support the Azure Monitor Agent (AMA).
Configure the Syslog Server
Configure rsyslog to accept logs from your TenableIE IP address. Choose one of the following options:
Option 1: Using AllowedSender directive
This configuration restricts which hosts can send logs to your syslog server at the network level. This is more secure as it rejects unauthorized connections before processing them.
-
Set TenableIE source IP address by running the following command:
Copysudo -i
export TENABLE_IE_IP={Enter your IP address} -
Download the configuration file located at 80-tenable-allowedsender.conf by running the following command:
Copycat > /etc/rsyslog.d/80-tenable.conf << EOF
\$ModLoad imudp
\$UDPServerRun 514
\$ModLoad imtcp
\$InputTCPServerRun 514
\$AllowedSender TCP, 127.0.0.1, $TENABLE_IE_IP
\$AllowedSender UDP, 127.0.0.1, $TENABLE_IE_IP
\$template MsgTemplate,"%TIMESTAMP:::date-rfc3339% %HOSTNAME% %programname%[%procid%]:%msg%\n"
\$template remote-incoming-logs, "/var/log/%PROGRAMNAME%.log"
*.* ?remote-incoming-logs;MsgTemplate
EOF -
Execute the commands from the downloaded configuration file.
-
Restart rsyslog by running the following command:
Copysystemctl restart rsyslog
Option 2: Filter logs by source IP (For environments with multiple syslog sources)
This configuration accepts all incoming logs but only processes those from the specified TenableIE IP address. This is useful when you have multiple syslog servers or applications sending logs to the same syslog server, and you want to selectively process only TenableIE logs.
-
Set TenableIE source IP address by running the following command:
Copysudo -i
export TENABLE_IE_IP={Enter your IP address} -
Download the configuration file located at 80-tenable-allowedsender.conf by running the following command:
Copycat > /etc/rsyslog.d/80-tenable.conf << EOF
\$ModLoad imudp
\$UDPServerRun 514
\$ModLoad imtcp
\$InputTCPServerRun 514
\$template MsgTemplate,"%TIMESTAMP:::date-rfc3339% %HOSTNAME% %programname%[%procid%]:%msg%\n"
\$template remote-incoming-logs, "/var/log/%PROGRAMNAME%.log"
:fromhost-ip, isequal, "$TENABLE_IE_IP" ?remote-incoming-logs;MsgTemplate
& stop
EOF -
Execute the commands from the downloaded configuration file.
-
Restart rsyslog by running the following command:
Copysystemctl restart rsyslog
Note: The OMS agent receives the TenableIE syslog events and publish them in Microsoft Sentinel instructions.
-
Choose where to install the agent:
-
Install agent on Azure Linux Virtual Machine
-
Select the machine to install the agent on and then click Connect.
-
Find this URL: InstallAgentOnLinuxVirtualMachine
-
-
Install agent on a non-Azure Linux Machine
-
Download the agent on the relevant machine and follow the instructions
-
Find this URL: InstallAgentOnLinuxNonAzure
-
-
```shell
tail -f /var/opt/microsoft/omsagent/log/omsagent.log
```
-
In your TenableIE portal, go to System > Configuration > Syslog.
-
Create a new Syslog alert toward your Syslog server.
-
Check that the logs are correctly gathered on your server in a separate file (you can use the Test the configuration button in the Syslog alert configuration in TenableIE).
Note: If you used the Quickstart template, the Syslog server listens by default on port 514 in UDP and 1514 in TCP, without TLS.
-
In Microsoft Sentinel, go to Configuration > Settings > Workspace settings > Custom logs.
-
Click Add custom log.
-
Upload a sample Tenable.ad.log Syslog file from the Linux machine running the Syslog server.
-
Click Next.
-
Set the record delimiter to New Line (if not already set).
-
Click Next.
-
Select Linux and enter the file path to the Syslog file and click the + icon.
-
Click Next.
Note: The default location of the file is /var/log/Tenable.ad.log if you have a Tenable version <3.1.0, you must also add this Linux file location /var/log/AlsidForAD.log.
-
Set the Name to Tenable_IE_CL.
Note: Azure automatically adds "_CL" at the end of the name. There must be only one addition, so make sure the name is not Tenable_IE_CL_CL.
-
Click Next.
-
Click Create.