Recently Viewed Topics
Upload a Custom CA Certificate
To upload a custom CA-signed certificate:
- Copy your PEM-encoded certificate into a text file.
- Name it custom_CA.inc. Make sure you include the -----BEGIN CERTIFICATE----- and -----END CERTIFICATE----- lines and everything in between. (If you need to upload multiple certificates, paste them all in back-to-back.)
- Create a new text file named custom_feed_info.inc and include the following 2 lines:
PLUGIN_SET = "201310161758";
PLUGIN_FEED = "Custom";Note: The PLUGIN_SET date should be the same as the time the bundle is uploaded to SecurityCenter. It cannot be after the present date/time in SCNote: The typical format for PLUGIN_SET is a string of numbers in the format "YYYYMMDDHHMM" for the regular feed so that format is copied here.
- Tar the 2 files into a .tar.gz archive. (7-Zip or running tar on a Mac will not work for this.)
# tar -zcvf upload_this.tar.gz custom_feed_info.inc custom_CA.inc
- Upload the archive to SecurityCenter:
- Log in to SecurityCenter as admin.
- Click Username > Plugins.
- Click Upload Custom Plugins.
- Click Submit.
To verify the upload succeeded, click System > System Logs. You should see logs similar to the following:
- To verify your issue is resolved, run another scan including plugin 51192. You can verify that Nessus has the custom plugin bundle by checking it's plugin directory.
If this process does not work, check the following items:
The Custom_CA.inc format
The CA certificate should be in PEM (Base64) format. To verify, open it in a text editor. The certificate should be between -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----. If you do not see those lines, it is in the wrong format and should be changed to PEM (Base64) format.
The /opt/sc/data/customNasl/custom_CA.inc file
If the SecurityCenter installation is not on the Appliance, check the uploaded custom_CA.inc with the following command: # cat /opt/sc/data/customNasl/custom_CA.inc
The output should match the custom_CA.inc file that you checked in a text editor in step T1 above. If the file does not exist, the upload was not successful. If the file does not match, the most recent upload may not have been successful. Go over the steps above for creating and uploading upload_this.tar.gz and ensure it is being done correctly.
The /opt/nessus/lib/nessus/plugins/custom_CA.inc or \ProgramData\Tenable\Nessus\nessus\plugins\custom_CA.inc file
If Nessus is not on the Appliance, navigate to the plugins folder and cat or type custom_CA.inc to verify it exists and matches the custom_CA.inc file contents verified in steps 1 and 2 above. If custom_CA.inc does not exist in the plugins folder, or does not match the most recent custom_CA.inc in SecurityCenter, it has not propagated to the scanner. Check Resources > Nessus Scanners in SecurityCenter to see if the scanner is still updating plugins. If it is in a Working state, try updating the active plugins in SecurityCenter to prompt a plugin push. If the plugin feed version has not incremented and the customer really has to push plugins right now, see the following article: Force plugin update on scanner managed by SecurityCenter (Comparable to nessus-update-plugins -f).
The plugin output
Adding the custom CA certificate to custom_CA.inc will not resolve the issue if the issue is something else - the service is missing intermediate certificate(s), the service has a self-signed or default certificate (if not self-signed with the server name, it may be issued by a vendor name like "Nessus Certification Authority") and not a certificate signed by their custom CA at all, the certificate is expired, etc.
Look at the detailed plugin output of 51192 to see exactly why the certificate is untrusted. If custom_CA.inc will fix it, the output will say that the certificate at the top of the certificate chain is unrecognized, and the certificate it shows will be either issued by the custom CA (matching the name exactly) or the actual custom CA self-signed certificate.