Linux
The configuration file for the server is located in /etc/ometascan/ometascan.conf
After modifying the server configuration file you must restart the Metadefender Core service in order for the changes to take effect. You should use the distribution-standard way to restart the service.
[global] section
| parameter | required | description |
|---|---|---|
restaddress | required | IP address of the computer that runs MetaDefender Core to serve REST API and web user interface (* means listening from all interfaces including IP version 4 and 6). Just in case IP version 6 is not enabled on the system, then changing it to Default value: * |
restport | required | Designated port number for the web management console and REST interface. Default value: 8008 |
report_engine_issue | optional | Enable reporting of engine issue count. (possible values: "true" or "false") Default value: true |
dlppath | optional | Directory for DLP-processed database and items. Default value: [Data directory]/dlp |
quarantinepath | optional | Directory for quarantine database and quarantined items. Default value: [Data directory]/quarantine |
sanitizepath | optional | Directory for sanitized database and sanitized items. Default value: [Data directory]/sanitized |
dbmode | optional | Support database mode, possible values:
After changed, a Core service restart is required to take effect. Only available starting MetaDefender Core 4.19.2 |
tempdirectory | optional | Full path of a directory to use for storing temporary files rather than using their default directories: Users need to prepare this directory in advance. MetaDefender Core creates a subfolder called Default: |
tempdirectory_create_timeout | optional | Maximum time allowed for MetaDefender Core to access device and create temporary folder on it. |
[logger] section
From version 5.15.1, MetaDefender Core (MD Core) allows configuring log file and syslog settings via the MD Core UI or API endpoints (Advanced Log Configurations). Therefore, the configurations here will be overridden if they conflict with the configurations for the log file or syslog set through the MD Core UI or API endpoints.
| key | required | description |
|---|---|---|
logfile | optional | Full path of a logfile to write log messages to. Default value: /var/log/ometascan/ometascan.log |
loglevel | optional | Level of logging. Supported values are: debug, info, warning, error. Default value: info |
log_rotation | optional | Should only set this key when logfile key is also set accordingly. Supported values:
|
syslog | optional | Switch on logging to a local ('local') or remote ('protocol://<hostname>:<port>') syslog server (Multiple server can be specified separated with comma). More details: HERE |
syslog_level | optional | Level of logging. Supported values are: debug, info, warning, error |
local_timezone | optional | Set local timezone for events sending to local syslog server. Default value: false |
override | optional | Override specific log ids to display them on another level e.g.: "1723:error,663:info" If there is no level set for an id, it will be displayed on every occasion. e.g.: "1723,663:info" means id 1723 dump message will be displayed every time and id 663 warning message is reduced to info level. |
cef | optional | If true, the log format is Common Event Format. Default value: false |
nginx_logfile | optional | File name and path to store the NGINX logs. If this value is changed, the /etc/logrotate.d/ometascan should be changed accordingly. Default value: /var/log/ometascan/nginx-ometascan.log |
Setting both syslog and syslog_level, or none of them.
Setting both logfile and loglevel, or none of them.
[internal] section
| key | required | description |
|---|---|---|
db_connection | optional | Define maximum number of concurrent connections allows MetaDefender Core to open to work with PostgreSQL database server. Only available starting MetaDefender Core 4.19.1. Default value: 10 |
data_directory | optional | Full path for MD Core’s data (database, updates etc.) E.g. /var/lib/ometascan/test Default value: /var/lib/ometascan |
skip_upgrade_scan_data | optional | When enabled (set to 1), upgrading MetaDefender Core will auto skip migrating history processing data which is usually big in size (only migrate configurations and audit history). This setting is to save upgrade time when users do not need to migrate entire scan data. Default value: 0 |
parallelcount | optional | Set maximum number of threads (files) sending to engine at the same time, applicable to all engines. Default value: 20 Exception:
|
parallelcount_<enginename> | optional |
For example: engine id: Some common use-cases:
|
next_extraction_polling_interval | optional | Fine-tuning this interval between the range of 100-200ms may help stabilize the performance and processing time when dealing with small archive files or office document files under high load. In case this polling interval is set to out of range (invalid number, < 100, or > 1000), the application cannot start, and an exception will log to system event log. Default value: 1000 |
Windows
The configuration for the server is located in Windows Registry: HKEY_LOCAL_MACHINE\SOFTWARE\OPSWAT\Metascan\
After modifying the server configuration file you must restart the MetaDefender Core service in order for the changes to take effect.
Global
HKEY_LOCAL_MACHINE\SOFTWARE\OPSWAT\Metascan\global
| parameter | type | required | description |
|---|---|---|---|
restaddress | string value | required | IP address of the computer that runs MetaDefender Core to serve REST API and web user interface (* means listening from all interfaces including IP version 4 and 6). Just in case IP version 6 is not enabled on the system, then changing it to Default value: * |
restport | string value | required | Designated port number for the web and REST interface. Default value: 8008 |
report_engine_issue | string value | optional | Enable reporting of engine issue count. (possible values: "true" or "false"). Default value: true |
dlppath | string value | optional | Directory for DLP-processed database and items. Default value: [installdir]\data\dlp |
quarantinepath | string value | optional | Directory for quarantine database and quarantined items. Default value: [installdir]\data\quarantine |
sanitizepath | string value | optional | Directory for sanitized database and sanitized items. Default value: [installdir]\data\sanitized |
dbmode | string value | optional | Support database mode, possible values:
After changed, a Core service restart is required to take effect. Only available starting MetaDefender Core 4.19.2 |
tempdirectory | string value | optional | Full path of a directory to use for storing temporary files. Users need to prepare this directory in advance. MetaDefender Core creates a subfolder called Default: |
tempdirectory_create_timeout | string value | optional | Maximum time allowed for MetaDefender Core to access device and create temporary folder on it. |
Logger
HKEY_LOCAL_MACHINE\SOFTWARE\OPSWAT\Metascan\logger
From version 5.15.1, MetaDefender Core (MD Core) allows configuring log file and syslog settings via the MD Core UI or API endpoints (Advanced Log Configurations). Therefore, the configurations here will be overridden if they conflict with the configurations for the log file or syslog set through the MD Core UI or API endpoints.
Event Viewer logging can only be configured in the registry.
| key | type | required | description |
|---|---|---|---|
logfile | string value | optional | Location of a logfile to write log messages to. |
loglevel | string value | optional | Level of logging. Supported values are: debug, info, warning, error. Must set value on this key when logfile key is also set accordingly. |
log_rotation | string value | optional | This setting is only applicable on Windows only (on Linux, we use built-in OS log rotation). Should only set this key when logfile key is also set accordingly. Supported values:
|
wineventlog_level | string value | optional | Level of event viewer logging. Supported values are: debug, info, warning, error. Default value: info |
syslog | string value | optional | Value can only by in form of 'protocol://<hostname>:<port>' (Multiple server can be specified separated with comma). More details: HERE |
syslog_level | string value | optional | Level of logging. Supported values are: debug, info, warning, error. Must set value on this key when syslog key is also set accordingly. |
local_timezone | string value | optional | Set local timezone for events sending to local syslog server. Default value: false |
override | string value | optional | Override specific log ids to display them on another level e.g.: "1723:error,663:info". If there is no level set for an id, it will be displayed on every occasion. e.g.: "1723,663:info" means id 1723 dump message will be displayed every time and id 663 warning message is reduced to info level. |
cef | string value | optional | If true, the log format is Common Event Format. Default value: false |
nginx_logfile | string value | optional | File name and path to store the NGINX logs. Default value: [installdir]\nginx\nginx.log |
nginx_log_rotation | string value | optional | This setting is only applicable on Windows only (on Linux, we use built-in OS log rotation). Should only set this key when nginx_logfile key is also set accordingly. Supported values:
|
Setting both syslogand syslog_level, or none of them.
Setting both logfile and loglevel, or none of them.
Internal
HKEY_LOCAL_MACHINE\SOFTWARE\OPSWAT\Metascan\internal
| key | type | required | description |
|---|---|---|---|
db_connection | string value | optional | Define maximum number of concurrent connections allows MetaDefender Core to open to work with PostgreSQL database server. Only available since MetaDefender Core 4.19.1. Default value: 10 |
data_directory | string value | optional | Full path for MD Core’s data (database, updates etc.) E.g. D:\custom_path Default value: <MD Core installation folder>\data |
skip_upgrade_scan_data | string value | optional | When enabled (set to 1), upgrading MetaDefender Core will auto skip migrating history processing data which is usually big in size (only migrate configurations and audit history). This setting is to save upgrade time when users do not need to migrate entire scan data. Default value: 0 |
parallelcount | string value | optional | Set maximum number of threads (files) sending to engine at the same time, applicable to all engines Default value: 20 Exception:
|
parallelcount_<enginename> | string value | optional |
For example: engine id: Some common use-cases:
|
next_extraction_polling_interval | string value | optional | Fine-tuning this interval between the range of 100-200ms may help stabilize the performance and processing time when dealing with small archive files or office document files under high load. In case this polling interval is set to out of range (invalid number, < 100, or > 1000), the application cannot start, and an exception will log to system event log. Default value: 1000 |
