{"id":4658,"date":"2026-09-20T23:01:05","date_gmt":"2026-09-20T17:31:05","guid":{"rendered":"https:\/\/cpanelfree.com\/blog\/automating-linux-vulnerability-scanning-with-openvas-and-wazuh-siem-integration\/"},"modified":"2026-09-20T23:01:05","modified_gmt":"2026-09-20T17:31:05","slug":"automating-linux-vulnerability-scanning-with-openvas-and-wazuh-siem-integration","status":"publish","type":"post","link":"https:\/\/cpanelfree.com\/blog\/automating-linux-vulnerability-scanning-with-openvas-and-wazuh-siem-integration\/","title":{"rendered":"Automating Linux Vulnerability Scanning with OpenVAS and Wazuh SIEM Integration"},"content":{"rendered":"<p>Enterprise Linux fleet security demands continuous, automated vulnerability discovery paired with real-time host-level telemetry to prevent zero-day exploitation and configuration drift. When managing high-density environments on platforms like <a href=\"https:\/\/cpanelfree.com\">CpanelFree<\/a>, running manual vulnerability scans creates operational blind spots, unmanageable alert fatigue, and delayed patching cycles. By bridging the Greenbone Vulnerability Management (OpenVAS) network scanner with Wazuh SIEM\u2019s centralized log aggregation and active response framework, security engineers can establish a closed-loop vulnerability management lifecycle that automatically discovers, correlates, and mitigates Linux vulnerabilities without manual human triage.<\/p>\n<p><!-- more --><\/p>\n<h2 style=\"color:#38bdf8;font-size:24px;margin-top:32px;margin-bottom:16px\">Unified Security Architecture: Integrating Network Scans with Host Telemetry<\/h2>\n<div style=\"background:#1e293b;border-left:4px solid #38bdf8;padding:16px 20px;margin:24px 0;border-radius:0 8px 8px 0;color:#e2e8f0;font-size:15px;line-height:1.6\">\n  <strong style=\"color:#38bdf8\">Direct Answer:<\/strong> Integrating OpenVAS with Wazuh SIEM unifies external network attack surface discovery with internal kernel-level host telemetry. OpenVAS identifies network-accessible software flaws, unpatched daemons, and misconfigurations, while Wazuh correlates these Common Vulnerabilities and Exposures (CVEs) with active process logs, system calls, and integrity monitoring, triggering automated mitigation rules directly through the Wazuh agent framework.\n<\/div>\n<p>Traditional Linux infrastructure security frequently suffers from functional silos. Network scanners evaluate systems purely from the outside in, probing open ports, listening sockets, and banner versions over TCP\/UDP. Conversely, host-based intrusion detection systems (HIDS) like Wazuh monitor processes, file integrity (FIM), system log streams, and kernel auditing records from the inside out. When these platforms operate independently, an engineer must manually cross-reference an OpenVAS vulnerability report against live system processes to determine whether an identified CVE is actively exploitable or merely dormant code.<\/p>\n<p>By automating the ingestion of OpenVAS Greenbone Management Protocol (GMP) scan outputs directly into the Wazuh SIEM pipeline, security teams transform point-in-time vulnerability reports into dynamic, real-time threat intelligence. When OpenVAS detects a critical vulnerability\u2014such as an unpatched OpenSSH daemon or an exploitable web service\u2014it pushes structured JSON reports into a dedicated Wazuh ingestion socket or log channel. Wazuh decodes the CVE identifier, checks active socket bindings on the host via the Wazuh agent, and can automatically execute targeted containment scripts, adjust local firewall policies, or quarantine vulnerable services before an external adversary achieves remote code execution.<\/p>\n<h2 style=\"color:#38bdf8;font-size:24px;margin-top:32px;margin-bottom:16px\">Comparative Matrix: Standalone Auditing vs. Integrated SIEM Pipeline<\/h2>\n<p>Deploying automated vulnerability scanning alongside centralized SIEM integration dramatically reduces Mean Time to Detection (MTTD) and Mean Time to Remediation (MTTR). The matrix below illustrates the performance and operational differences between isolated periodic scanning and a synchronized Wazuh-OpenVAS architecture.<\/p>\n<table style=\"width:100%;border-collapse:collapse;margin:24px 0;background:#1e293b;color:#e2e8f0;font-size:14px;border-radius:8px;overflow:hidden\">\n<thead style=\"background:#0f172a;color:#38bdf8\">\n<tr>\n<th style=\"padding:12px 16px;border-bottom:2px solid #334155;text-align:left\">Feature \/ Metric<\/th>\n<th style=\"padding:12px 16px;border-bottom:2px solid #334155;text-align:left\">Standard \/ Default (Manual OpenVAS)<\/th>\n<th style=\"padding:12px 16px;border-bottom:2px solid #334155;text-align:left\">Tuned \/ Production (Wazuh Integrated)<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155\">Scan-to-Detection Latency<\/td>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155\">Hours to days (manual PDF export)<\/td>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155;color:#10b981;font-weight:600\">Sub-second event correlation (&lt; 850ms)<\/td>\n<\/tr>\n<tr>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155\">False Positive Filtration<\/td>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155\">Manual analyst review required<\/td>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155;color:#10b981;font-weight:600\">Automated cross-check with active process table<\/td>\n<\/tr>\n<tr>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155\">Remediation Workflow (MTTR)<\/td>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155\">Manual ticket creation &amp; patch cycles<\/td>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155;color:#10b981;font-weight:600\">Automated Wazuh Active Response isolation<\/td>\n<\/tr>\n<tr>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155\">Host CPU \/ RAM Overhead<\/td>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155\">Spikes during unthrottled port sweeps<\/td>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155;color:#10b981;font-weight:600\">Rate-limited, sysctl-tuned socket handling<\/td>\n<\/tr>\n<tr>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155\">Audit &amp; Compliance Trail<\/td>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155\">Fragmented CSV\/XML files<\/td>\n<td style=\"padding:12px 16px;border-bottom:1px solid #334155;color:#10b981;font-weight:600\">Centralized, tamper-evident OpenSearch logs<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 style=\"color:#38bdf8;font-size:24px;margin-top:32px;margin-bottom:16px\">Kernel and Network Stack Tuning for High-Concurrency Vulnerability Scans<\/h2>\n<p>Running comprehensive vulnerability assessments against modern cloud infrastructure generates significant network socket churn. A full OpenVAS scan launches thousands of concurrent stateful TCP probes, syn-scans, and TLS handshakes. Under stock Linux kernel configurations, this volume of traffic causes connection tracking table saturation (<code>nf_conntrack: table full, dropping packet<\/code>), TCP socket exhaustion, and dropped SYN packets that distort scan accuracy.<\/p>\n<p>To prepare your dedicated scanning nodes and target Linux hosts for automated, high-throughput scanning without false positives or network degradation, deploy the following production sysctl configuration file at <code>\/etc\/sysctl.d\/99-vulnerability-scanner.conf<\/code>:<\/p>\n<pre><code style=\"background:#0f172a;color:#38bdf8;padding:16px;border-radius:8px;display:block;font-family:monospace;font-size:13px;line-height:1.6\"># \/etc\/sysctl.d\/99-vulnerability-scanner.conf\n# Production Kernel Tuning for High-Concurrency OpenVAS &amp; Wazuh Telemetry\n\n# Expand TCP connection backlog and maximum connection capacity\nnet.core.somaxconn = 65535\nnet.core.netdev_max_backlog = 16384\nnet.ipv4.tcp_max_syn_backlog = 3240000\n\n# Optimize ephemeral port range for rapid socket recycling\nnet.ipv4.ip_local_port_range = 1024 65535\nnet.ipv4.tcp_tw_reuse = 1\nnet.ipv4.tcp_fin_timeout = 15\n\n# Increase connection tracking table capacity to prevent dropped probes\nnet.netfilter.nf_conntrack_max = 1048576\nnet.netfilter.nf_conntrack_tcp_timeout_established = 600\nnet.netfilter.nf_conntrack_tcp_timeout_time_wait = 30\nnet.netfilter.nf_conntrack_tcp_timeout_close_wait = 30\n\n# TCP Window Scaling and Memory Buffers (Min, Default, Max in bytes)\nnet.ipv4.tcp_rmem = 4096 87380 16777216\nnet.ipv4.tcp_wmem = 4096 65536 16777216\nnet.core.rmem_max = 16777216\nnet.core.wmem_max = 16777216\n\n# Prevent SYN Flood false detections on scanning engines\nnet.ipv4.tcp_syncookies = 1\nnet.ipv4.tcp_synack_retries = 2\nnet.ipv4.tcp_syn_retries = 3\n\n# Virtual memory management under high scanning load\nvm.swappiness = 10\nvm.dirty_ratio = 15\nvm.dirty_background_ratio = 5\nfs.file-max = 2097152<\/code><\/pre>\n<p>Apply the parameters dynamically without rebooting by executing:<\/p>\n<pre><code style=\"background:#0f172a;color:#38bdf8;padding:16px;border-radius:8px;display:block;font-family:monospace;font-size:13px;line-height:1.6\">sudo sysctl --system<\/code><\/pre>\n<div style=\"background:#1e293b;border-left:4px solid #38bdf8;padding:16px 20px;margin:24px 0;border-radius:0 8px 8px 0;color:#e2e8f0\">\n  <strong style=\"color:#38bdf8\">Architecture Note:<\/strong> When performing vulnerability scans against containers or high-density virtualization nodes, ensure that <code>net.netfilter.nf_conntrack_max<\/code> is tuned on the host hypervisor. If the host conntrack table fills up, even lightweight TCP checks will fail silently, leading to false negatives where OpenVAS reports closed ports on active services.\n<\/div>\n<h2 style=\"color:#38bdf8;font-size:24px;margin-top:32px;margin-bottom:16px\">Automating OpenVAS Scans via Python GVM and Systemd<\/h2>\n<p>To eliminate manual interaction with the Greenbone Security Assistant web interface, we implement an autonomous scanning daemon using the official <code>python-gvm<\/code> API library. This script authenticates with the OpenVAS daemon (gvmd) over a local Unix domain socket, triggers targeted vulnerability scans against your Linux server subnets, extracts structured XML results, transforms findings into standardized JSON, and appends them to a dedicated log monitored by the local Wazuh agent.<\/p>\n<p>Create the automation script at <code>\/usr\/local\/bin\/openvas_wazuh_bridge.py<\/code>:<\/p>\n<pre><code style=\"background:#0f172a;color:#38bdf8;padding:16px;border-radius:8px;display:block;font-family:monospace;font-size:13px;line-height:1.6\">#!\/usr\/bin\/env python3\n\"\"\"\nOpenVAS to Wazuh SIEM Pipeline Bridge\nAutomates scheduled vulnerability scans and exports JSON events for Wazuh ingestion.\n\"\"\"\n\nimport os\nimport sys\nimport json\nimport time\nimport logging\nfrom gvm.connections import UnixSocketConnection\nfrom gvm.protocols.gmp import Gmp\nfrom gvm.transforms import EtreeTransform\nimport xml.etree.ElementTree as ET\n\nSOCKET_PATH = \"\/run\/gvmd\/gvmd.sock\"\nOUTPUT_LOG = \"\/var\/log\/openvas_wazuh_feed.log\"\nGVMD_USER = \"admin\"\nGVMD_PASS = os.getenv(\"GVMD_PASSWORD\", \"EnterpriseSecurePass2026\")\n\nlogging.basicConfig(\n    level=logging.INFO,\n    format=\"%(asctime)s [%(levelname)s] %(message)s\",\n    handlers=[logging.StreamHandler(sys.stdout)]\n)\n\ndef run_pipeline():\n    connection = UnixSocketConnection(path=SOCKET_PATH)\n    transform = EtreeTransform()\n\n    logging.info(\"Connecting to OpenVAS gvmd socket...\")\n    with Gmp(connection=connection, transform=transform) as gmp:\n        gmp.authenticate(username=GVMD_USER, password=GVMD_PASS)\n        logging.info(\"Authenticated successfully with OpenVAS GMP daemon.\")\n\n        # Retrieve existing tasks\n        tasks = gmp.get_tasks()\n        root = tasks\n\n        for task in root.xpath(\"\/\/task\"):\n            task_id = task.get(\"id\")\n            task_name = task.find(\"name\").text\n            status = task.find(\"status\").text\n\n            logging.info(f\"Evaluating Task: {task_name} (ID: {task_id}, Status: {status})\")\n\n            # Fetch latest report for completed tasks\n            last_report = task.find(\"last_report\")\n            if last_report is not None:\n                report_id = last_report.find(\"report\").get(\"id\")\n                logging.info(f\"Extracting report ID: {report_id}\")\n                \n                report_xml = gmp.get_report(\n                    report_id=report_id,\n                    filter_string=\"rows=-1 min_qod=70 apply_overrides=0\"\n                )\n                parse_and_export_report(report_xml)\n\ndef parse_and_export_report(report_tree):\n    events = []\n    for result in report_tree.xpath(\"\/\/result\"):\n        host_node = result.find(\"host\")\n        host_ip = host_node.text.strip() if host_node is not None else \"unknown\"\n        \n        nvt = result.find(\"nvt\")\n        name = nvt.find(\"name\").text if nvt is not None and nvt.find(\"name\") is not None else \"Unknown NVT\"\n        cve = nvt.find(\"cve\").text if nvt is not None and nvt.find(\"cve\") is not None else \"None\"\n        cvss = result.find(\"severity\").text if result.find(\"severity\") is not None else \"0.0\"\n        port = result.find(\"port\").text if result.find(\"port\") is not None else \"0\/tcp\"\n        description = result.find(\"description\").text if result.find(\"description\") is not None else \"\"\n\n        severity_float = float(cvss)\n        if severity_float = 9.0 else \"HIGH\" if severity_float &gt;= 7.0 else \"MEDIUM\",\n            \"summary\": description[:250].replace(\"\\n\", \" \")\n        }\n        events.append(event)\n\n    # Write NDJSON to target log\n    with open(OUTPUT_LOG, \"a\", encoding=\"utf-8\") as f:\n        for ev in events:\n            f.write(json.dumps(ev) + \"\\n\")\n    \n    logging.info(f\"Exported {len(events)} vulnerability events to {OUTPUT_LOG}\")\n\nif __name__ == \"__main__\":\n    run_pipeline()<\/code><\/pre>\n<p>To execute this bridge reliably as a system service, create the corresponding systemd service and timer units at <code>\/etc\/systemd\/system\/openvas-wazuh-bridge.service<\/code> and <code>\/etc\/systemd\/system\/openvas-wazuh-bridge.timer<\/code>:<\/p>\n<pre><code style=\"background:#0f172a;color:#38bdf8;padding:16px;border-radius:8px;display:block;font-family:monospace;font-size:13px;line-height:1.6\"># \/etc\/systemd\/system\/openvas-wazuh-bridge.service\n[Unit]\nDescription=OpenVAS to Wazuh Vulnerability Feed Bridge\nAfter=gvmd.service network-online.target\nWants=network-online.target\n\n[Service]\nType=oneshot\nUser=gvm\nGroup=gvm\nEnvironment=\"GVMD_PASSWORD=EnterpriseSecurePass2026\"\nExecStart=\/usr\/bin\/python3 \/usr\/local\/bin\/openvas_wazuh_bridge.py\nStandardOutput=journal\nStandardError=journal\nProtectSystem=strict\nReadWritePaths=\/var\/log\/openvas_wazuh_feed.log\n\n[Install]\nWantedBy=multi-user.target<\/code><\/pre>\n<pre><code style=\"background:#0f172a;color:#38bdf8;padding:16px;border-radius:8px;display:block;font-family:monospace;font-size:13px;line-height:1.6\"># \/etc\/systemd\/system\/openvas-wazuh-bridge.timer\n[Unit]\nDescription=Trigger OpenVAS to Wazuh Bridge Daily\nRefuseManualStart=no\nRefuseManualStop=no\n\n[Timer]\nOnCalendar=*-*-* 02:00:00\nPersistent=true\nRandomizedDelaySec=600\n\n[Install]\nWantedBy=timers.target<\/code><\/pre>\n<p>Enable and start the timer using standard systemctl commands:<\/p>\n<pre><code style=\"background:#0f172a;color:#38bdf8;padding:16px;border-radius:8px;display:block;font-family:monospace;font-size:13px;line-height:1.6\">sudo systemctl daemon-reload\nsudo systemctl enable --now openvas-wazuh-bridge.timer<\/code><\/pre>\n<h2 style=\"color:#38bdf8;font-size:24px;margin-top:32px;margin-bottom:16px\">Wazuh SIEM Ingestion: Custom Decoders and Correlation Rules<\/h2>\n<p>Once OpenVAS generates structured NDJSON events in <code>\/var\/log\/openvas_wazuh_feed.log<\/code>, configure the Wazuh Agent to monitor the file and forward the log entries to the Wazuh Manager. Add the following <code>localfile<\/code> block inside <code>\/var\/ossec\/etc\/ossec.conf<\/code> on the scanner host:<\/p>\n<pre><code style=\"background:#0f172a;color:#38bdf8;padding:16px;border-radius:8px;display:block;font-family:monospace;font-size:13px;line-height:1.6\">&lt;ossec_config&gt;\n  &lt;localfile&gt;\n    &lt;log_format&gt;json&lt;\/log_format&gt;\n    &lt;location&gt;\/var\/log\/openvas_wazuh_feed.log&lt;\/location&gt;\n  &lt;\/localfile&gt;\n&lt;\/ossec_config&gt;<\/code><\/pre>\n<p>On the Wazuh Manager node, define custom decoders to parse the JSON fields and extract the CVE ID, CVSS score, and affected port. Append the decoder definition to <code>\/var\/ossec\/etc\/decoders\/local_decoder.xml<\/code>:<\/p>\n<pre><code style=\"background:#0f172a;color:#38bdf8;padding:16px;border-radius:8px;display:block;font-family:monospace;font-size:13px;line-height:1.6\">&lt;!-- \/var\/ossec\/etc\/decoders\/local_decoder.xml --&gt;\n&lt;decoder name=\"openvas-json\"&gt;\n  &lt;prematch&gt;^\\{\"timestamp\":.*\"scanner\": \"OpenVAS-GMP\"&lt;\/prematch&gt;\n&lt;\/decoder&gt;\n\n&lt;decoder name=\"openvas-json-fields\"&gt;\n  &lt;parent&gt;openvas-json&lt;\/parent&gt;\n  &lt;plugin_decoder&gt;JSON_Decoder&lt;\/plugin_decoder&gt;\n&lt;\/decoder&gt;<\/code><\/pre>\n<p>Next, define production correlation rules inside <code>\/var\/ossec\/etc\/rules\/local_rules.xml<\/code>. These rules evaluate the vulnerability severity and trigger high-priority alerts whenever an exploitable CVSS score is reported:<\/p>\n<pre><code style=\"background:#0f172a;color:#38bdf8;padding:16px;border-radius:8px;display:block;font-family:monospace;font-size:13px;line-height:1.6\">&lt;!-- \/var\/ossec\/etc\/rules\/local_rules.xml --&gt;\n&lt;group name=\"openvas,vulnerability,\"&gt;\n  &lt;!-- Base rule for all ingested OpenVAS reports --&gt;\n  &lt;rule id=\"100500\" level=\"3\"&gt;\n    &lt;decoded_as&gt;openvas-json&lt;\/decoded_as&gt;\n    &lt;description&gt;OpenVAS: Vulnerability scan event detected on $(target_ip)&lt;\/description&gt;\n    &lt;mitre&gt;\n      &lt;id&gt;T1595.002&lt;\/id&gt;\n    &lt;\/mitre&gt;\n  &lt;\/rule&gt;\n\n  &lt;!-- Medium Severity Vulnerabilities (CVSS 4.0 - 6.9) --&gt;\n  &lt;rule id=\"100501\" level=\"7\"&gt;\n    &lt;if_sid&gt;100500&lt;\/if_sid&gt;\n    &lt;field name=\"severity_level\"&gt;^MEDIUM$&lt;\/field&gt;\n    &lt;description&gt;OpenVAS: Medium severity flaw on $(target_ip) [CVE: $(cve)] - $(vulnerability_name)&lt;\/description&gt;\n  &lt;\/rule&gt;\n\n  &lt;!-- High Severity Vulnerabilities (CVSS 7.0 - 8.9) --&gt;\n  &lt;rule id=\"100502\" level=\"10\"&gt;\n    &lt;if_sid&gt;100500&lt;\/if_sid&gt;\n    &lt;field name=\"severity_level\"&gt;^HIGH$&lt;\/field&gt;\n    &lt;description&gt;OpenVAS: High severity vulnerability on $(target_ip) Port $(port) [CVE: $(cve)]&lt;\/description&gt;\n  &lt;\/rule&gt;\n\n  &lt;!-- Critical Severity Vulnerabilities (CVSS 9.0+) with Active Response --&gt;\n  &lt;rule id=\"100503\" level=\"14\"&gt;\n    &lt;if_sid&gt;100500&lt;\/if_sid&gt;\n    &lt;field name=\"severity_level\"&gt;^CRITICAL$&lt;\/field&gt;\n    &lt;description&gt;OpenVAS: CRITICAL remotely exploitable flaw on $(target_ip):$(port) [CVE: $(cve)] - Action Required&lt;\/description&gt;\n    &lt;mitre&gt;\n      &lt;id&gt;T1190&lt;\/id&gt;\n    &lt;\/mitre&gt;\n  &lt;\/rule&gt;\n&lt;\/group&gt;<\/code><\/pre>\n<p>After updating the configuration, validate rule syntax and restart the Wazuh Manager:<\/p>\n<pre><code style=\"background:#0f172a;color:#38bdf8;padding:16px;border-radius:8px;display:block;font-family:monospace;font-size:13px;line-height:1.6\">\/var\/ossec\/bin\/wazuh-logtest &lt; \/dev\/null\nsudo systemctl restart wazuh-manager<\/code><\/pre>\n<h2 style=\"color:#38bdf8;font-size:24px;margin-top:32px;margin-bottom:16px\">Production Hardening and Operational Remediation<\/h2>\n<p>Integrating OpenVAS and Wazuh provides automated threat intelligence, but security engineers must avoid the trap of unconstrained automated remediation. Automatically severing network connections or stopping system services based solely on external scan data can inadvertently trigger service outages. Follow these battle-tested architectural guidelines:<\/p>\n<ul style=\"color:#cbd5e1;line-height:1.8;margin-left:20px\">\n<li><strong style=\"color:#38bdf8\">Correlate with Wazuh SCA (Security Configuration Assessment):<\/strong> Before executing remediation, use Wazuh\u2019s built-in CIS benchmark checks to verify whether compensating controls (such as SELinux enforcing mode or AppArmor profiles) mitigate the vulnerability in the running environment.<\/li>\n<li><strong style=\"color:#38bdf8\">Enforce Scan Windows:<\/strong> Restrict high-intensity OpenVAS network scans to off-peak operational maintenance windows to prevent CPU starvation on production database and caching instances.<\/li>\n<li><strong style=\"color:#38bdf8\">Isolate Management Networks:<\/strong> Never expose the Greenbone Management Protocol socket or the Wazuh cluster API over public Internet interfaces. Enforce strict TLS mutual authentication (mTLS) or restrict traffic to isolated WireGuard\/VPC management tunnels.<\/li>\n<li><strong style=\"color:#38bdf8\">Log Rotation and Retention:<\/strong> Ensure <code>\/var\/log\/openvas_wazuh_feed.log<\/code> is managed by <code>logrotate<\/code> with compression enabled to prevent disk exhaustion on scanning nodes.<\/li>\n<\/ul>\n<h2 style=\"color:#38bdf8;font-size:24px;margin-top:32px;margin-bottom:16px\">Frequently Asked Questions<\/h2>\n<details style=\"background:#1e293b;border:1px solid #334155;border-radius:8px;padding:14px;margin-bottom:12px\">\n<summary style=\"cursor:pointer;font-weight:600;color:#38bdf8\">How does this integration differ from Wazuh&#8217;s built-in Vulnerability Detector module?<\/summary>\n<p style=\"margin-top:10px;color:#cbd5e1\">Wazuh&#8217;s native Vulnerability Detector examines installed software package inventories against national vulnerability databases (NVD\/OVAL). However, it cannot assess network-level attack surfaces, misconfigured TLS ciphers, unauthenticated exposed services, or custom application endpoints. OpenVAS performs dynamic, network-level vulnerability probing, complementing Wazuh\u2019s package-level inspection with active operational validation.<\/p>\n<\/details>\n<details style=\"background:#1e293b;border:1px solid #334155;border-radius:8px;padding:14px;margin-bottom:12px\">\n<summary style=\"cursor:pointer;font-weight:600;color:#38bdf8\">Does automated vulnerability scanning impact production Linux performance?<\/summary>\n<p style=\"margin-top:10px;color:#cbd5e1\">Aggressive port scanning and deep protocol fuzzing can saturate Linux connection tracking tables and exhaust file descriptors. By applying kernel tuning parameters (such as increasing <code>nf_conntrack_max<\/code> and optimizing <code>tcp_tw_reuse<\/code>) alongside rate-limited OpenVAS scan policies, production performance overhead remains minimal and predictable.<\/p>\n<\/details>\n<details style=\"background:#1e293b;border:1px solid #334155;border-radius:8px;padding:14px;margin-bottom:12px\">\n<summary style=\"cursor:pointer;font-weight:600;color:#38bdf8\">Can Wazuh Active Response automatically patch or isolate vulnerable Linux hosts?<\/summary>\n<p style=\"margin-top:10px;color:#cbd5e1\">Yes. When a rule with a severity level of 14 (Critical) fires, Wazuh can trigger an Active Response script on the target agent. This script can execute targeted iptables or nftables rules to restrict the affected port to trusted bastion hosts, isolate the container network namespace, or trigger an automated Ansible remediation playbook.<\/p>\n<\/details>\n<details style=\"background:#1e293b;border:1px solid #334155;border-radius:8px;padding:14px;margin-bottom:12px\">\n<summary style=\"cursor:pointer;font-weight:600;color:#38bdf8\">How frequently should automated OpenVAS scans be scheduled?<\/summary>\n<p style=\"margin-top:10px;color:#cbd5e1\">In enterprise production environments, light discovery and port change scans should run continuously or daily, while full, deep vulnerability assessments should execute on a weekly schedule during low-traffic maintenance windows. Wazuh provides real-time file integrity and log monitoring between scheduled scan runs.<\/p>\n<\/details>\n<div style=\"background:linear-gradient(135deg, #0f172a 0%, #1e293b 100%);border:1px solid #334155;border-radius:12px;padding:32px;margin:40px 0;text-align:center\">\n<h3 style=\"color:#ffffff;margin-top:0;font-size:22px\">Ready to Deploy High-Performance Infrastructure?<\/h3>\n<p style=\"color:#cbd5e1;font-size:16px;line-height:1.6;max-width:680px;margin:12px auto 24px auto\">Experience blazing-fast NVMe storage, unmetered bandwidth, and enterprise LiteSpeed caching on CpanelFree.<\/p>\n<p>  <a href=\"https:\/\/cpanelfree.com\" style=\"background:#38bdf8;color:#0f172a;font-weight:700;padding:12px 28px;border-radius:6px;text-decoration:none;display:inline-block;font-size:15px\">Get Started with Free Cloud Hosting &rarr;<\/a>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Automate Linux vulnerability scanning by bridging OpenVAS network audits with Wazuh SIEM telemetry. Streamline CVE triage and harden enterprise workloads.<\/p>\n","protected":false},"author":1,"featured_media":4657,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[172],"tags":[57,177,87,173,101],"class_list":["post-4658","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-security-hardening","tag-almalinux","tag-databases-performance","tag-devops","tag-security-hardening","tag-sysadmin"],"_links":{"self":[{"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/posts\/4658","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/comments?post=4658"}],"version-history":[{"count":0,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/posts\/4658\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/media\/4657"}],"wp:attachment":[{"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/media?parent=4658"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/categories?post=4658"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cpanelfree.com\/blog\/wp-json\/wp\/v2\/tags?post=4658"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}