{% extends "base.html" %} {% load i18n %} {% block title %}{% translate "ClamAV Settings" %} - Eenos{% endblock %} {% block content %}

{% translate "ClamAV Settings" %}

{% translate "Configure malware detection, scan engines, resource limits, and on-access protection." %}
{% if onaccess %} {% endif %}
{% include "includes/form_alerts.html" %}
{% csrf_token %}
{% translate "Daemon and Logging" %}
{% translate "Control Clamd logging, file traversal, health checks, and daemon timeouts." %}
{% include "includes/clamav_switch.html" with field_name="LogTime" field_value=settings.LogTime field_label=_("Timestamp Log Entries") field_help=_("Include the event time in every ClamAV log entry.") %} {% include "includes/clamav_switch.html" with field_name="LogRotate" field_value=settings.LogRotate field_label=_("Rotate Logs") field_help=_("Allow ClamAV to rotate its own log files.") %} {% include "includes/clamav_switch.html" with field_name="FollowDirectorySymlinks" field_value=settings.FollowDirectorySymlinks field_label=_("Follow Directory Symlinks") field_help=_("Follow symbolic links that point to directories during scans.") %} {% include "includes/clamav_switch.html" with field_name="FollowFileSymlinks" field_value=settings.FollowFileSymlinks field_label=_("Follow File Symlinks") field_help=_("Follow symbolic links that point to files during scans.") %} {% include "includes/clamav_number.html" with field_name="SelfCheck" field_value=settings.SelfCheck default_value="600" minimum="600" field_unit=_("seconds") field_label=_("Database Self-Check Interval") field_help=_("How often Clamd checks whether virus definitions changed.") required_message=_("Enter the database self-check interval.") minimum_message=_("The self-check interval must be at least 600 seconds.") %} {% include "includes/clamav_number.html" with field_name="IdleTimeout" field_value=settings.IdleTimeout default_value="30" minimum="30" field_unit=_("seconds") field_label=_("Idle Timeout") field_help=_("Maximum wait for data on an idle client connection.") required_message=_("Enter the Clamd idle timeout.") minimum_message=_("The idle timeout must be at least 30 seconds.") %} {% include "includes/clamav_number.html" with field_name="MaxDirectoryRecursion" field_value=settings.MaxDirectoryRecursion default_value="15" minimum="15" field_label=_("Directory Recursion Limit") field_help=_("Maximum directory depth traversed during a scan.") required_message=_("Enter the directory recursion limit.") minimum_message=_("The directory recursion limit must be at least 15.") %} {% include "includes/clamav_number.html" with field_name="LogFileMaxSize" field_value=settings.LogFileMaxSize default_value="1" minimum="1" field_unit="MB" field_label=_("Maximum Log Size") field_help=_("Rotate or stop logging when the configured size is reached.") required_message=_("Enter the maximum log size.") minimum_message=_("The maximum log size must be at least 1 MB.") %}
{% translate "Heuristic Alerts" %}
{% translate "Flag suspicious, malformed, encrypted, or evasive content using heuristic signatures." %}
{% include "includes/clamav_switch.html" with field_name="DetectPUA" field_value=settings.DetectPUA field_label=_("Detect Potentially Unwanted Applications") field_help=_("Detect software that may be unwanted without being traditional malware.") %} {% include "includes/clamav_switch.html" with field_name="AlertBrokenExecutables" field_value=settings.AlertBrokenExecutables field_label=_("Alert on Broken Executables") %} {% include "includes/clamav_switch.html" with field_name="AlertBrokenMedia" field_value=settings.AlertBrokenMedia field_label=_("Alert on Broken Media") %} {% include "includes/clamav_switch.html" with field_name="AlertEncryptedArchive" field_value=settings.AlertEncryptedArchive field_label=_("Alert on Encrypted Archives") %} {% include "includes/clamav_switch.html" with field_name="AlertEncryptedDoc" field_value=settings.AlertEncryptedDoc field_label=_("Alert on Encrypted Documents") %} {% include "includes/clamav_switch.html" with field_name="AlertOLE2Macros" field_value=settings.AlertOLE2Macros field_label=_("Alert on OLE2 Macros") %} {% include "includes/clamav_switch.html" with field_name="AlertPhishingSSLMismatch" field_value=settings.AlertPhishingSSLMismatch field_label=_("Alert on Phishing SSL Mismatch") %} {% include "includes/clamav_switch.html" with field_name="AlertPhishingCloak" field_value=settings.AlertPhishingCloak field_label=_("Alert on Cloaked Phishing URLs") %} {% include "includes/clamav_switch.html" with field_name="AlertPartitionIntersection" field_value=settings.AlertPartitionIntersection field_label=_("Alert on Partition Intersections") %}
{% translate "Content Scanners" %}
{% translate "Choose which document, email, web, and archive formats ClamAV inspects." %}
{% include "includes/clamav_switch.html" with field_name="ScanOLE2" field_value=settings.ScanOLE2 field_label=_("Scan OLE2 Documents") %} {% include "includes/clamav_switch.html" with field_name="ScanPDF" field_value=settings.ScanPDF field_label=_("Scan PDF Documents") %} {% include "includes/clamav_switch.html" with field_name="ScanSWF" field_value=settings.ScanSWF field_label=_("Scan SWF Files") %} {% include "includes/clamav_switch.html" with field_name="ScanXMLDOCS" field_value=settings.ScanXMLDOCS field_label=_("Scan XML Documents") %} {% include "includes/clamav_switch.html" with field_name="ScanHWP3" field_value=settings.ScanHWP3 field_label=_("Scan HWP3 Documents") %} {% include "includes/clamav_switch.html" with field_name="ScanMail" field_value=settings.ScanMail field_label=_("Scan Email Messages") %} {% include "includes/clamav_switch.html" with field_name="PhishingSignatures" field_value=settings.PhishingSignatures field_label=_("Phishing Signatures") %} {% include "includes/clamav_switch.html" with field_name="PhishingScanURLs" field_value=settings.PhishingScanURLs field_label=_("Scan URLs for Phishing") %} {% include "includes/clamav_switch.html" with field_name="ScanPartialMessages" field_value=settings.ScanPartialMessages field_label=_("Scan Partial Messages") %} {% include "includes/clamav_switch.html" with field_name="ScanHTML" field_value=settings.ScanHTML field_label=_("Scan HTML Content") %} {% include "includes/clamav_switch.html" with field_name="ScanArchive" field_value=settings.ScanArchive field_label=_("Scan Archives") %}
{% translate "Sensitive Data Detection" %}
{% translate "Detect payment-card and Social Security number patterns in scanned content." %}
{% include "includes/clamav_switch.html" with field_name="StructuredDataDetection" field_value=settings.StructuredDataDetection field_label=_("Structured Data Detection") %} {% include "includes/clamav_switch.html" with field_name="StructuredCCOnly" field_value=settings.StructuredCCOnly field_label=_("Credit Cards Only") %} {% include "includes/clamav_switch.html" with field_name="StructuredSSNFormatNormal" field_value=settings.StructuredSSNFormatNormal field_label=_("Normal SSN Format") %} {% include "includes/clamav_switch.html" with field_name="StructuredSSNFormatStripped" field_value=settings.StructuredSSNFormatStripped field_label=_("Stripped SSN Format") %} {% include "includes/clamav_number.html" with field_name="StructuredMinCreditCardCount" field_value=settings.StructuredMinCreditCardCount default_value="3" minimum="3" field_label=_("Minimum Credit Card Count") required_message=_("Enter the minimum credit card count.") minimum_message=_("The minimum credit card count must be at least 3.") %} {% include "includes/clamav_number.html" with field_name="StructuredMinSSNCount" field_value=settings.StructuredMinSSNCount default_value="3" minimum="3" field_label=_("Minimum SSN Count") required_message=_("Enter the minimum SSN count.") minimum_message=_("The minimum SSN count must be at least 3.") %}
{% translate "On-Access Protection" %}
{% translate "Tune real-time scanning behavior, file limits, timeouts, and prevention mode." %}
{% if onaccess %} {% else %} {% translate "On-Access Scanner Unavailable" %} {% endif %}
{% if not onaccess %}
{% translate "On-access scanning is not installed" %}
{% translate "These values can be configured now, but real-time protection and its restart action remain unavailable until clamonacc is installed." %}
{% endif %}
{% include "includes/clamav_number.html" with field_name="OnAccessMaxFileSize" field_value=settings.OnAccessMaxFileSize default_value="10" minimum="10" field_unit="MB" field_label=_("Maximum On-Access File Size") required_message=_("Enter the maximum on-access file size.") minimum_message=_("The on-access file size must be at least 10 MB.") %} {% include "includes/clamav_number.html" with field_name="OnAccessMaxThreads" field_value=settings.OnAccessMaxThreads default_value="5" minimum="5" field_label=_("On-Access Threads") required_message=_("Enter the on-access thread limit.") minimum_message=_("The on-access thread limit must be at least 5.") %} {% include "includes/clamav_number.html" with field_name="OnAccessCurlTimeout" field_value=settings.OnAccessCurlTimeout default_value="5000" minimum="5000" field_unit="ms" field_label=_("On-Access Request Timeout") required_message=_("Enter the on-access request timeout.") minimum_message=_("The request timeout must be at least 5,000 ms.") %} {% include "includes/clamav_number.html" with field_name="OnAccessRetryAttempts" field_value=settings.OnAccessRetryAttempts default_value="0" minimum="0" field_label=_("On-Access Retry Attempts") required_message=_("Enter the number of on-access retry attempts.") minimum_message=_("Retry attempts cannot be negative.") %} {% include "includes/clamav_switch.html" with field_name="OnAccessDisableDDD" field_value=settings.OnAccessDisableDDD field_label=_("Disable Dynamic Directory Determination") %} {% include "includes/clamav_switch.html" with field_name="OnAccessPrevention" field_value=settings.OnAccessPrevention field_label=_("Prevention Mode") field_help=_("Block access to files detected as malicious.") %}
{% translate "Scan and Resource Limits" %}
{% translate "Protect the server from oversized files, archive bombs, excessive recursion, and expensive pattern matching." %}
{% include "includes/clamav_number.html" with field_name="MaxScanTime" field_value=settings.MaxScanTime default_value="120000" minimum="0" field_unit="ms" field_label=_("Maximum Scan Time") required_message=_("Enter the maximum scan time.") minimum_message=_("Maximum scan time cannot be negative.") %} {% include "includes/clamav_number.html" with field_name="MaxScanSize" field_value=settings.MaxScanSize default_value="100" minimum="0" field_unit="MB" field_label=_("Maximum Scan Size") required_message=_("Enter the maximum scan size.") minimum_message=_("Maximum scan size cannot be negative.") %} {% include "includes/clamav_number.html" with field_name="MaxFileSize" field_value=settings.MaxFileSize default_value="25" minimum="0" maximum="2048" field_unit="MB" field_label=_("Maximum File Size") required_message=_("Enter the maximum file size.") minimum_message=_("Maximum file size cannot be negative.") maximum_message=_("Maximum file size cannot exceed 2,048 MB.") %} {% include "includes/clamav_number.html" with field_name="MaxRecursion" field_value=settings.MaxRecursion default_value="16" minimum="16" field_label=_("Archive Recursion Limit") required_message=_("Enter the archive recursion limit.") minimum_message=_("Archive recursion must be at least 16.") %} {% include "includes/clamav_number.html" with field_name="MaxFiles" field_value=settings.MaxFiles default_value="10000" minimum="10000" field_label=_("Maximum Files per Scan") required_message=_("Enter the maximum files per scan.") minimum_message=_("Maximum files must be at least 10,000.") %} {% include "includes/clamav_number.html" with field_name="MaxEmbeddedPE" field_value=settings.MaxEmbeddedPE default_value="10" minimum="10" field_unit="MB" field_label=_("Maximum Embedded PE Size") required_message=_("Enter the maximum embedded PE size.") minimum_message=_("Embedded PE size must be at least 10 MB.") %} {% include "includes/clamav_number.html" with field_name="MaxHTMLNormalize" field_value=settings.MaxHTMLNormalize default_value="10" minimum="10" field_unit="MB" field_label=_("Maximum HTML Normalize Size") required_message=_("Enter the maximum HTML normalization size.") minimum_message=_("HTML normalization size must be at least 10 MB.") %} {% include "includes/clamav_number.html" with field_name="MaxHTMLNoTags" field_value=settings.MaxHTMLNoTags default_value="2" minimum="2" field_unit="MB" field_label=_("Maximum HTML No-Tags Size") required_message=_("Enter the maximum HTML no-tags size.") minimum_message=_("HTML no-tags size must be at least 2 MB.") %} {% include "includes/clamav_number.html" with field_name="MaxScriptNormalize" field_value=settings.MaxScriptNormalize default_value="5" minimum="5" field_unit="MB" field_label=_("Maximum Script Normalize Size") required_message=_("Enter the maximum script normalization size.") minimum_message=_("Script normalization size must be at least 5 MB.") %} {% include "includes/clamav_number.html" with field_name="MaxZipTypeRcg" field_value=settings.MaxZipTypeRcg default_value="1" minimum="1" field_unit="MB" field_label=_("Maximum ZIP Recognition Size") required_message=_("Enter the maximum ZIP recognition size.") minimum_message=_("ZIP recognition size must be at least 1 MB.") %} {% include "includes/clamav_number.html" with field_name="MaxPartitions" field_value=settings.MaxPartitions default_value="50" minimum="50" field_label=_("Maximum Partitions") required_message=_("Enter the maximum partition count.") minimum_message=_("Maximum partitions must be at least 50.") %} {% include "includes/clamav_number.html" with field_name="MaxIconsPE" field_value=settings.MaxIconsPE default_value="100" minimum="100" field_label=_("Maximum PE Icons") required_message=_("Enter the maximum PE icon count.") minimum_message=_("Maximum PE icons must be at least 100.") %} {% include "includes/clamav_number.html" with field_name="MaxRecHWP3" field_value=settings.MaxRecHWP3 default_value="16" minimum="16" field_label=_("Maximum HWP3 Recursion") required_message=_("Enter the maximum HWP3 recursion.") minimum_message=_("HWP3 recursion must be at least 16.") %} {% include "includes/clamav_number.html" with field_name="PCREMatchLimit" field_value=settings.PCREMatchLimit default_value="100000" minimum="100000" field_label=_("PCRE Match Limit") required_message=_("Enter the PCRE match limit.") minimum_message=_("The PCRE match limit must be at least 100,000.") %} {% include "includes/clamav_number.html" with field_name="PCRERecMatchLimit" field_value=settings.PCRERecMatchLimit default_value="2000" minimum="2000" field_label=_("PCRE Recursive Match Limit") required_message=_("Enter the PCRE recursive match limit.") minimum_message=_("The PCRE recursive match limit must be at least 2,000.") %} {% include "includes/clamav_number.html" with field_name="PCREMaxFileSize" field_value=settings.PCREMaxFileSize default_value="25" minimum="0" field_unit="MB" field_label=_("Maximum PCRE File Size") required_message=_("Enter the maximum PCRE file size.") minimum_message=_("Maximum PCRE file size cannot be negative.") %} {% include "includes/clamav_switch.html" with field_name="AlertExceedsMax" field_value=settings.AlertExceedsMax field_label=_("Alert When Limits Are Exceeded") field_help=_("Report files that cannot be fully scanned because a configured limit was reached.") %}
{% translate "Virus Event Command" %}
{% translate "Optionally execute a command when malware is detected. Use %v for the virus name and %f for the file path." %}
{% include "includes/clamav_switch.html" with field_name="VirusEventAlert" field_value=settings.VirusEventAlert field_label=_("Enable Virus Event Command") field_help=_("Run the configured command after a malware detection.") detail_target="virusEventCommand" %}
{% translate "Ensure the command is trusted and safe to run with the ClamAV service permissions." %}
{% csrf_token %}
{% endblock %} {% block extra_js %} {% endblock %}