Drweb 444 Maild en
Drweb 444 Maild en
Administrator Manual
Version 4.44.1
The material published herein is the property of Doctor Web, Ltd.
and may not be reproduced in any form without written permission
of Doctor Web, Ltd. and proper attribution.
http://www.drweb.com/
2
Contents
1.1. What is this Manual about?................................................................................8
1.2. Terms and abbreviations....................................................................................9
1.3. Requirements....................................................................................................10
2. Installation, upgrade and deinstallation.............................................................11
3. Operation............................................................................................................33
3.4. Components......................................................................................................77
3.4.1. Checker......................................................................................................77
3.4.2. Receiver.....................................................................................................78
3
Dr.Web® for Unix mail servers
3.4.3. Sender........................................................................................................79
3.4.4. Notifier......................................................................................................80
3.4.5. Monitor......................................................................................................80
3.4.5.1. Command line options....................................................................80
3.4.5.2. Settings............................................................................................81
3.4.5.3. Starting the Monitor........................................................................85
3.4.6. Agent ........................................................................................................86
3.4.6.1. Anti-virus statistics collection........................................................87
3.4.6.2. Operation modes.............................................................................88
3.4.6.3. Command line options....................................................................88
3.4.6.4. Settings............................................................................................89
3.4.6.5. Starting the Agent ..........................................................................96
4
4.1.3.3. Upgrading for Solaris....................................................................123
4.1.4. Connecting with the plug-in.....................................................................124
4.1.5. Configuring plug-in.................................................................................124
5
Dr.Web® for Unix mail servers
5.2. Integration with CommuniGate Pro MTA....................................................159
5.2.1. Configuring CommuniGate Pro...............................................................159
5.2.2. Configuring Dr.Web for mail servers......................................................161
5.2.3. Known issues...........................................................................................165
6
5.8.1. Interaction with Courier...........................................................................193
5.8.2. Configuring Dr.Web for mail servers......................................................195
6. Contact information..........................................................................................197
7
Dr.Web® for Unix mail servers
1. Introduction
1.1. What is this Manual about?
This Manual describes Dr.Web for Unix mail servers, based on the
Dr.Web MailD technology – a product from the Dr.Web Mail Security
Suite product group.
In this Manual we will call this program Dr.Web MailD, or Dr.Web for
Unix mail servers.
Depending on the set of connected plug-ins, the Dr.Web MailD filters
check e-mails for viruses, spam and unwanted messages.
Dr.Web MailD can be administrated from Dr.Web Enterprise Suite.
Operation of Dr.Web MailD is controlled by one of its component –
the Agent (for more information see p. 3.4.6)
At the end of the Manual you can find contact information of Dr.Web
technical support service.
8
as integration with other Unix applications. A list of applications
compatible with Dr.Web MailD keeps extending. Therefore, the
current Manual may not fully cover the version you are using. To
keep abreast of the latest changes, refer to the documentation
distributed with the mail filtering systems.
Symbol Comment
9
Dr.Web® for Unix mail servers
The following abbreviation will be used in the Manual without further
explanation:
• OS — operating system
1.3. Requirements
Dr.Web MailD is designed for Linux, FreeBSD and Solaris operating
systems (for x86 platforms only).
Dr.Web MailD for Linux is compatible with the Linux distribution
based on the glibc library versions 2.2 and 2.3. (Dr.Web MailD for
Linux OS based on glibc version 2.3 is compatible with Linux OS
based on glibc 2.4). Dr.Web MailD for FreeBSD is compatible with
FreeBSD versions 4.11, 5.x, 6.0. Dr.Web MailD for Solaris is
compatible with Solaris versions 9 and 10.
Hardware requirements for Dr.Web MailD are similar to requirements
for the operation in the console (text) mode in the OS the software is
designed to be used – Linux, FreeBSD and Solaris. To install the
program 20 Mb of disk space are required.
Depending on the computational load and used plug-ins hardware
requirements may differ.
10
2. Installation, upgrade and deinstallation
Names of distributions and directories created
during the installation depend on the version of the
anti-virus software and the OS.
11
Dr.Web® for Unix mail servers
2. Log on as a root user. For this, execute the su command
and enter the password of the root user.
3. Go to the directory where the archive is saved.
4. Extract files from the archive. A drweb-maild-
qmail-4.44.1-glibc2.3 directory will be created
Example:
> tar xzf drweb-maild-qmail-4.44.1-
glibc2.3.tar.gz
12
4. It integrates Dr.Web MailD with a mail system
13
Dr.Web® for Unix mail servers
14
2.2. Installing for FreeBSD
Examples given below describe installation of
Dr.Web MailD configured to operate with the Qmail
mail system. In all these examples Dr.Web MailD
for FreeBSD 6.0 is used. For other Unix-based OSs,
names of files and directories may differ (namely,
the part with the Dr.Web MailD version number,
the OS version and the name of the used mail
system).
15
Dr.Web® for Unix mail servers
Then, there are 2 modes to install the
software: the manual and the automatic.
The installation in the automatic mode is
done by the install.sh installation
script located in the drweb-maild-
qmail-4.44.1-freebsd60 directory
created during the unpacking of the
archive with the main modules. The
install.sh script does the following:
1 It saves the directory tree nested in the drweb-
maild-qmail-4.44.1-freebsd60 directory to
the root directory.
2 It creates the drweb user and the drweb group.
16
> cp -pR drweb-maild-qmail-4.44.1-
freebsd60/* /
2 Create a drweb user and a drweb group. Then set
access rights to the directories:
Example:
> chown -R drweb:drweb /usr/local/etc/drweb
> chown -R drweb:drweb /usr/local/drweb
> chown -R drweb:drweb /var/drweb
3 Specify values for the main parameters of the
configuration file of Dr.Web MailD. If Perl command
processor is installed on the computer, you can set these
values by launching the configure.pl script which is
located in the /opt/drweb/maild/scripts/
directory (by default). The script will ask you to enter the
values of the necessary parameters and save them to the
configuration file.
In case you cannot or do not want to launch the
configure.pl script, specify the values for the main
parameters of the configuration file of Dr.Web MailD
manually (see p. 3.3).
4 Integrate Dr.Web MailD with a mail system (read.p. 5)
17
Dr.Web® for Unix mail servers
Example:
> tar xzf drweb-updater-4.44.1-
freebsd60.tar.gz
5 Copy the directory tree nested in the drweb-
updater-4.44.1-freebsd60 directory to the root
directory (you can also set your own structure of
directories, but you should edit Dr.Web MailD
configuration file accordingly, read p. 3.3.1).
Example:
> cp -pR drweb-updater-4.44.1-freebsd60/*
/
6 Set access rights for created directories.
Example:
> chown -R drweb:drweb /usr/local/etc/drweb
> chown -R drweb:drweb /usr/local/drweb
> chown -R drweb:drweb /var/drweb
18
1 Save the archive with the main modules of Dr.Web MailD
onto a computer.
2 Log on as a root user. For this, execute the su command
and enter the password of the root user.
3 Go to the directory the archive is saved.
4 Extract files from the archive. A drweb-maild-
qmail-4.44.1-solaris10, directory will be
created
Example:
> gzip -d drweb-maild-qmail-4.44.1-
solaris10.tar.gz
> tar xf drweb-maild-qmail-4.44.1-
solaris10.tar
Then, there are 2 modes to install the software: the manual and the
automatic. The installation in the automatic mode is done by the
install.sh installation script located in the drweb-maild-
qmail-4.44.1-solaris10 directory created during the
unpacking of the archive with the main modules of Dr.Web MailD.
The install.sh script does the following:
19
Dr.Web® for Unix mail servers
5 It integrates Dr.Web MailD with a mail system
20
Then, the updating utility should be installed
1 Copy the archive with the updating utility onto a computer
where the program is installed.
2 Change the current user of the system to the root user.
For this, execute the su command and input the
password of the root user into the corresponding dialog.
3 Go to the directory with the archive of the updating utility.
4 Unpack the archive. The drweb-updater-4.44.1-
solaris10 directory will be created.
Example:
> gzip -d drweb-updater-4.44.1-
solaris10.tar.gz
> tar xf drweb-updater-4.44.1-solaris10.tar
5 Move the directory tree nested in the drweb-
updater-4.44.1-solaris10 directory to the root
directory (you can also set your own structure of
directories, but you will have to edit the Dr.Web MailD
configuration file accordingly, read p. 3.3.1).
Example:
> cp -pR drweb-updater-4.44.1-solaris10/* /
21
Dr.Web® for Unix mail servers
2.4. Upgrading for Linux
The examples below describe the upgrade of
Dr.Web MailD configured to operate with the Qmail
mail system. In all these examples Dr.Web MailD v.
4.44.1 for Linux based on glibc 2.3 is used. In other
cases, names of files and directories will differ
accordingly (namely, the part of the Dr.Web MailD
version number, the glibc version and the name of
the mail system will differ).
22
of Dr.Web MailD. To upgrade Dr.Web MailD, launch this
script with the update parameter. Being launched with
this parameter, the install.sh script performs the
following actions:
5.1Terminates the already installed Dr.Web MailD
5.2Copies the directory tree nested in the drweb-
maild-qmail-4.44.1-glibc2.3 directory to the
root directory and files of the installed version of Dr.Web
MailD replace all files of the already installed Dr.Web
MailD, except for configuration files. The configuration
files of the already installed Dr.Web MailD remain
unchanged. During the replacement of the configuration
files of the new version of Dr.Web MailD the script adds
the .new suffix to their names.
5.3Sets access rights for Dr.Web MailD directories.
5.4If necessary, integrates Dr.Web MailD with a mail
system.
23
Dr.Web® for Unix mail servers
directories, but you should edit the Dr.Web MailD
configuration file accordingly, read p. 3.3.1).
Example:
> cp -a drweb-updater-4.44.1-glibc2.3/* /
11 Set access rights for created directories.
Example:
> chown -R drweb:drweb /etc/drweb
> chown -R drweb:drweb /opt/drweb
> chown -R drweb:drweb /var/drweb
24
14 Go to the directory with the archive with the main modules
of Dr.Web MailD.
15 Unpack the archive. The drweb-maild-
qmail-4.44.1-freebsd60,
Example:
> tar xzf drweb-maild-qmail-4.44.1-
freebsd60.tar.gz
16 The install.sh installation script is located in the
drweb-maild-qmail-4.44.1-freebsd60
directory created during the unpacking of the archive with
the main modules of Dr.Web MailD. To upgrade Dr.Web
MailD, run the script with the update parameter. Being
launched with such parameter, the install.sh script
will perform the following actions:
16.1Terminates the already installed Dr.Web MailD
16.2Copies the directory tree nested in the drweb-
maild-qmail-4.44.1-freebsd60 directory to
the root directory and files of the installed version of
Dr.Web MailD replace all files of the already installed
Dr.Web MailD, except for configuration files. The
configuration files of the already installed Dr.Web MailD
remain unchanged. During the replacement of the
configuration files of the new version of Dr.Web MailD
the script adds the .new suffix to their names.
16.3Sets access rights for Dr.Web MailD directories.
16.4If necessary, integrates Dr.Web MailD with a mail
system.
25
Dr.Web® for Unix mail servers
2 Change the current user of the system to the root user.
For this, execute the su command and input the password
of the root user into the corresponding dialog.
3 Go to the directory with the archive of the updating utility.
4 Unpack the archive. The drweb-updater-4.44.1-
freebsd60 directory will be created.
Example:
> tar xzf drweb-updater-4.44.1-freebsd60.tar.gz
5 Copy the directory tree nested in the drweb-
updater-4.44.1-freebsd60 to the root directory
(you can also set your own directory tree, but you will
have to edit the Dr.Web MailD configuration file
accordingly, read p. 3.3.1).
Example:
> cp -pR drweb-updater-4.44.1-freebsd60/* /
6 Set access rights for created directories.
Example:
> chown -R drweb:drweb /usr/local/etc/drweb
> chown -R drweb:drweb /usr/local/drweb
> chown -R drweb:drweb /var/drweb
26
solaris10.tar.gz contains the main modules of Dr.Web
MailD; the drweb-updater-4.44.1-solaris10.tar.gz
archive contains the updating utility of Dr.Web MailD.
The main modules of Dr.Web MailD for Solaris are upgraded as
follows:
7 Copy the archive with the main modules of Dr.Web MailD
onto a computer where the program will be upgraded.
8 Change the current user of the system to the root user.
For this, execute the su command and input the password
of the root user into the corresponding dialog.
9 Go to the directory with the archive with the main modules
of Dr.Web MailD.
10 Unpack the archive. The drweb-maild-qmail-4.44.1-
solaris10,
Example :
> gzip -d drweb-maild-qmail-4.44.1-solaris10.tar.gz
> tar xf drweb-maild-qmail-4.44.1-solaris10.tar
11 The install.sh script is located in the drweb-maild-
qmail-4.44.1-solaris10 directory created during the
unpacking of the archive with the main modules of Dr.Web
MailD. To upgrade Dr.Web MailD, run the script with the
update parameter. Being launched with such parameter,
the install.sh script performs the following actions:
11.1Terminates the already installed Dr.Web MailD
11.2Copies the directory tree nested in the drweb-
maild-qmail-4.44.1-solaris10 directory to
the root directory and files of the installed version of
Dr.Web MailD replace all files of the already installed
Dr.Web MailD, except for configuration files. The
configuration files of the already installed Dr.Web MailD
remain unchanged. During the replacement of the
configuration files of the new version of Dr.Web MailD
the script adds the .new suffix to their names.
27
Dr.Web® for Unix mail servers
11.3Sets access rights for Dr.Web MailD directories.
11.4If necessary, integrates Dr.Web MailD with a mail
system.
28
2.7. Deinstalling
When uninstalling Dr.Web MailD, it is recommended to save (copy to
a safe location) license key files, log files of various components of
Dr.Web MailD, and configuration files. Before the program is
uninstalled, the launched components must be terminated.
If Dr.Web MailD was installed manually, just delete all files and
directories created during the installation to uninstall Dr.Web MailD.
If necessary, you can also delete the drweb user and the drweb
group by standard OS tools.
29
Dr.Web® for Unix mail servers
The key file has the key extension and must be located by default in
the installation directory.
If you place the key file to a different directory than the program
installation directory, you should specify its location in the
LicenseFile parameter of the StandaloneMode section of
the configuration of the Agent component (read p. 3.4.6)
If the key file cannot be read (wrong path or not enough rights,
usage term expired, blocked or wrong key), the system terminates its
operation.
30
The limitation for check of messages is set for 15000
messages a day as for the vaderetro plug-in the limitation
is set for 15000 a day, the sum of two different key files has
the limitation for 20000 messages a day for the drweb plug-
in. Dr.Web MailD chooses the greater limitation of 15000
messages a day.
31
Dr.Web® for Unix mail servers
drweb for Linux and Solaris, /usr/local/drweb for
FreeBSD and OpenBSD)
• included into the distribution package
• supplied on a media as a file with the .key extension. The
user should copy it manually to the directory specified above
The license key file is sent to users via email, as a rule, after the
registration on the web site (the location of the web site is specified
in the registration card accompanying the product). Visit this site, fill
in the web form with the customer data and type the registration
serial number (printed in the registration card). The key file will be
sent to the specified address.
32
3. Operation
Dr.Web MailD is a group of interacting program modules. Program
modules process messages according to the following algorithm:
• A component called Receiver deals with incoming
messages first. Then Receiver directs them to
Checker – a component responsible for scanning of
messages.
• The Checker component calls plug-ins one by one,
which assures complete analysis of messages.
• Messages that pass the analysis are delivered to the mail
system by the Sender component.
33
Dr.Web® for Unix mail servers
%etc_dir/maild_{mail system name}.conf
34
• -l <level>, --level<level> — sets details level
for the startup log of Dr.Web MailD. Default value: info
• -t <value, in sec>, -timeout<value, in
sec> – timeout for receiving configuration data
Example:
drweb-maild -t 30 local:/var/drweb/ipc/.agent
– to start the main module of Dr.Web MailD with 30 second timeout
to receive configuration data and the following socket address
local:/var/drweb/ipc/.agent.
Some modules of Dr.Web MailD support specific command line
options. This will be discussed separately.
All the modules staying constantly in program’s memory support
processing of the following signals:
• SIGHUP. When this signal is received, the modules reread
their configuration files. When such a signal is received by
the Monitor module, configuration files are reread by all
launched modules.
• SIGINT and SIGTERM – having received one of these
signals the modules terminate.
Some modules of Dr.Web MailD may support processing of additional
signals, which is described in each case separately.
35
Dr.Web® for Unix mail servers
Basic configuration of Dr.Web MailD (provided all files of the system
are located in default directories) includes the following parameters:
• In [Maild] section:
ProtectedNetworks
ProtectedDomains
InMaxThreads
OutMaxThreads
• In [Notifier] section
AdminMail
FilterMail
NotifyLangs
• In [Filters] section
BeforeQueueFilters
AfterQueueFilters
If a Perl command processor is installed on the computer, you can
set these values by launching the configure.pl script which is
located in the %bin_dir/maild/scripts/directory (by
default). The script will ask you to enter the values of the necessary
parameters and saves them to the configuration file.
36
Parameter1 = value1, ..., valueK
.....
ParameterM = value1, ..., valueK
......
[Section name X]
Parameter1 = value1, ..., valueK
.....
ParameterY = value1, ..., valueK
--- end ---
";" and "#" symbols in the configuration file are used to mark the
beginning of comments. Text that goes after these symbols in each
line is ignored by modules of the Dr.Web MailD when they read
parameters of the configuration file.
If a certain parameter of the configuration file is not specified, it does
not mean that this parameter has no value (this mistake frequently
occurs when customizing software). In this case the default value is
used.
For some parameters default value is automatically specified when
the parameters are not defined correctly. Only a few parameters are
optional or do not have default values. They will be described later.
If some value of the parameter is specified incorrectly, Dr.Web MailD
displays an error message and terminates.
If during the load of any configuration file unknown parameters are
detected, Dr.Web MailD continues to operate and a corresponding
message is written to a log file.
Values can be set in commas (and must be set in commas if they
contain blanks).
Some parameters can have several values. In this case values either
are delimited using "," (comma) or parameter’s value is specified
several times in different lines of the configuration file. When it is
possible to specify several values for a certain parameter, it is
indicated explicitly.
Examples:
37
Dr.Web® for Unix mail servers
Values are delimited using commas:
Names = drweb, headersfilter
A value is specified in several lines of the configuration file:
Names = drweb
Names = headersfilter
Parameters are described in the same order as they are given in the
configuration file created during installation of the program. The
exact set of parameters in the configuration file depends on a mail
system the version of Dr.Web MailD is designed for.
In the Parameter type field you can enter the following values:
38
used as the size unit.
Examples: 20b, 15k;
39
Dr.Web® for Unix mail servers
o inet – TCP sockets are used. Address must be specified
in the PORT@HOST_NAME format
HOST_NAME can be IP address or host domain name.
Example: Address = inet:3003@localhost
40
Error – log all errors;
Warn (alert) – log errors and alerts;
Info – log errors, warnings and notifications
Debug – detailed logging of all events (used for
debugging purposes)
[General] section
This section includes settings that affect operation of Dr.Web MailD.
MaxTimeoutForThreadActivity = {time}
Timeout to close a thread. The parameter is applied when Dr.Web
MailD is restarted or shut down. Timeout for Dr.Web MailD to shut
down can be calculated in the following way: multiply the number of
pools by the value of the MaxTimeoutForThreadActivity
parameter and add a specified time constant "to be more accurate".
Default value: 30s.
IpcTimeout = {time}
Timeout to establish interaction between components of Dr.Web
MailD.
Default value: 40s
41
Dr.Web® for Unix mail servers
Hostname = {text}
Name of the host under which the program operates. If the value is
not specified, the value returned by the gethostname (3) function is
used.
Default value: no value
[Logging] section
This section includes parameters that define level of logging details
for the basic modules of Dr.Web MailD.
Level = {Quiet|error|Alert|info|debug}
Defines level of logging details.
Default value: Info
IpcLevel = {Quiet|error|Alert|info|debug}
Level of logging details for Ipc library.
Default value: Alert
[MailBase] section
MaxStoredMessages ={number}
Maximum number of messages stored in the database (0 – number
of messages is not limited). If the number of messages in the
42
database exceeds the number specified in this parameter, old
messages are deleted from the database until the necessary number
of messages is reached. The messages already sent are immediately
deleted. The messages which are not sent yet are being sent and
deleted.
Default value: 100000
MaxStorageSize = {size}
Maximum size of the database, specified in bytes. (0 – means that
size is not limited). If the size of the database exceeds the database
limit, the database is cleaned from old messages until necessary size
of the database is reached (read description of the
MaxStoredMessages parameter).
Default value: 0
FrozenTimeout = {time}
Additional time for processing a message. If plug-in cannot process a
message within the specified time, in the SendTimeout parameter
time can be extended by a value specified in FrozenTimeout
parameter. In the current version of Dr.Web MailD, additional time
for processing messages can be set only for anti-spam plug-in and
must be enabled explicitly.
43
Dr.Web® for Unix mail servers
Default value: 2h
DeleteTimeout = {time}
Time period for message to be stored in database. The value of
DeleteTimeout must be greater than the value of the
FrozenTimeout timeout
Default value: 48h
BackupPeriod= {value}
Time period to backup database. If value is set to 0, no backup is
performed.
Default value: 0
[Filters] section
44
• In Dr.Web MailD for FreeBSD – /usr/local/drweb/
maild/plug-ins
max_size = {size}
Max size of a message to scan. 0 – there is no limitation.
Limitation to size by default depends on the queue the plug-in
is started from and is defined by the value of the
MaxSizeBeforeQueueFilters or
MaxSizeAfterQueueFilters parameter.
log_level = {Quiet|Error|Alert|Info|Debug}
log details level of a plug-in.
default value coincides with the value of the Level
parameter in the [Logging] section.
45
Dr.Web® for Unix mail servers
log_ipc_level = {Quiet|Error|Alert|Info|
Debug}
Logging details for Ipc library
Default value of this parameter coincides with the value of the
IpcLevel parameter of the [Logging] section.
syslog_facility = {Daemon|Mail|Local0 ..
Loca7}
Type of facility that syslog service uses to generate
notifications on events (for details refer to documentation on
syslog).
Default value coincides with the value of the
SyslogFacility parameter of the [Logging] section.
print_to_console = {yes|no}
yes value instructs plug-in to display its log in the console.
Default value coincides with the value of the
PrintToConsole parameter of the [Logging] section.
path_to_lib = {path to file}
Path to the plug-in’s library. The path can be either relative or
absolute one. If relative, path to the library is set with regard
to the directory specified by the LibDir parameter in the
[Filters] section. Default value is formed in the following
way: to the value of the LibDir parameter add /lib line
and then a name of the plug-in with the .so extension. The
name of the plug-in is written in small letters. For example,
for VadeRetro plug-in for the Dr.Web MailD installed on
Linux with default settings, the path will be as follows:
46
–/opt/drweb/maild/plug-
ins/libvaderetro.so
Examples:
Settings = vaderetro: max_size = 400k|
log_level=debug, drweb: max_size = 10m
This line sets for the vaderetro plug-in the maximum size
of a message to 400 Kb and logging details to debug, and
for drweb plug-in maximum size of a message to 10 Mb.
MaxSizeBeforeQueueFilters = {size}
Maximum size of a message to be processed by plug-ins defined as
BeforeQueueFilters. This parameter affects only plug-ins for
which a maximum size of a message is not specified separately. In
case 0 is specified, there is no limitation to the size of the message.
Default value: 0
47
Dr.Web® for Unix mail servers
MaxSizeAfterQueueFilters = {size}
Maximum size of a message to be processed by plug-ins defined as
AfterQueueFilters. This parameter affects only plug-ins for
which a maximum size of a message is not specified separately. In
case 0 is specified, there is no limitation to the size of the message.
Default value: 0
[Stat] section
This section includes parameters that affect collection of statistics on
operation of Dr.Web MailD.
Send = {yes|no}
This parameter defines whether the statistics on operation of Dr.Web
MailD is sent to the statistics server (or to the ES server in case
Dr.Web anti-virus system operates within the anti-virus network
created with Enterprise Suite). In case Send = yes, statistics are
sent, otherwise not sent.
Default value: Yes.
SendPeriod ={value}
Time interval to send statistics on operation of Dr.Web MailD to the
server.
Default value: 10m
48
Timeout = {time}
Timeout to wait for response from the statistics server.
Default value: 30s
[Reports] section
In this section parameters that affect generation and dispatch of
reports on operation of the plug-ins of Dr.Web MailD.
Send = {yes|no}
This parameter defines dispatch of reports. In case Send = yes is
specified reports are sent, otherwise not sent.
Default value: yes.
SendPeriod = {time}
The parameter defines time interval to generate and send reports.
Default value: 24h
49
Dr.Web® for Unix mail servers
If parameter is not specified, report is created for plug-ins set as
BeforeQueueFilter and AfterQueueFilter in the
[Filters] section.
[Maild] section
50
Example: ProtectedNetworks = 10.0.0.0/24,
127.0.0.0/8, 192.168.0.68
Default value: not specified
IncludeSubdomains = {yes|no}
With yes specified, sub domains which are indicated in
ProtectedDomains parameter are protected.
Default value: yes
51
Dr.Web® for Unix mail servers
QuarantineFilenamesMode = {Std|Tai|Rand48}
There are several modes that determine the process of naming of
quarantined files:
• Std – names of files are created with mkstemp command.
The %QuarantineFilenamesPrefix.XXXXXX
template is used, where
%QuarantineFilenamesPrefix is a prefix, specified
by the QuarantineFilenamesPrefix parameter, and
XXXXXX is a combination of random letters and figures.
• Tai – names of files are created according to the TAI
format. The sec.%usec.
%QuarantineFilenamesPrefix.XXXXXX
template is used;
• Rand48 – names of files are created with the lrand48
command. The
%QuarantineFilenamesPrefix.XXXXXXXX.
template is used.
Default value: Std
52
%QuarantineFilenamesPrefix.
Default value: drweb.quarantine
LicenseLimit = {actions}
This parameter defines actions that should be applied to messages
which have not been scanned due to license limitations.
Possible main actions: pass, discard, reject and other
additional actions.
Default value: pass
EmptyFrom = {Actions}
The parameter defines actions applied to messages with a blank
SMTP envelope of the sender. Such messages are generated when
the mail notifications are created or by spammers. The following
main actions are possible: continue, discard and reject.
Additional actions are also possible.
Default value: continue
ProcessingErrors ={actions}
This parameter defines what action should be applied to messages
that generate errors at scanning.
Possible main actions: tempfail, pass, discard, reject
RulesLogLevel = {Quiet|Error|Alert|Info|Debug}
Logging level for rules processor
Default value: Info
53
Dr.Web® for Unix mail servers
UseCustomReply = {yes|no}
In case yes value is set for this parameter, contents of SMTP-
responses of Dr.Web MailD are specified by the parameters given
below. When no is set, default values are used.
Default value: no
54
[Receiver] section
Address ={address}
Socket for receiving smtp/lmtp calls from Dr.Web MailD.
Default value: 10
ProcessingErrors ={actions}
This parameter defines what action should be applied to messages
that generate errors at scanning.
Possible main actions: tempfail, discard, reject
StalledProcessingInterval = {time}
Time interval to send to drweb-maild stalled messages which
have been received by Dr.Web MailD, but have not been processed
on time by its plug-ins. This can happen when power outages take
place or network problems occur.
55
Dr.Web® for Unix mail servers
Default value: 10m
OneCommandTimeout = {time}
Maximum time for an smtp/lmtp command to be executed
Default value: 5m
OneMessageTimeout = {time}
Maximum time for a message to be received
Default value: 10m
AddReceivedHeader = {yes|no}
If yes is specified, the Received header is added to all received
messages
Default value: depends_upon_distribution
ReturnReject ={yes|no}
ReturnReject parameter defines operation of the Receiver
module in case the Reject event occurs. If yes is specified, an
error with 5xx number is returned; otherwise the error with 2xx
number is returned and a DSN report is sent to a sender. In case
Dr.Web MailD interacts with Exim mail system and the
BeforeQueueFilters parameter instructs to use certain plug-
ins, the value for the ReturnReject parameter should be no to
avoid possible freezing of messages in the Exim’s queue.
Default value: depends_upon_distribution
56
(for Dr.Web MailD operating as smtp-proxy only)
Maximum number of recipients (if 0 is set, the number of recipients
is not limited)
Default value: 100
Default value: 20
Default value: 10
MaxMsgSize ={size}
57
Dr.Web® for Unix mail servers
(for Dr.Web MailD operating as smtp-proxy only)
Maximum size of a message.
Default value: 10m
RelayDomains = {Strings_and_files}
(for Dr.Web MailD operating as smtp-proxy only)
List of domains messages can be forwarded to.
Default value: no value
SessionRestrictions={text}
58
The parameter defines checks made immediately at the beginning of
a connection.
Actions specific for this stage:
• trust_protected_network – Checks if an IP-
address of a connection is in the list defined by the
ProtectedNetworks parameter, the address is
marked as Trusted IP
• trust_protected_domains – Checks if an IP-
address of a connection is in the list defined by the
ProtectedDomains parameter. The check is made via
the double DNS request:
A PTR request is sent and then the host is checked against
the ProtectedDomains list. If it is in the list, an A
request is sent and checked, if it matches at least one of the
received IP-address with the address which initiated the
connection. If they match, then the IP-address of the
connection is marked as Trusted IP.
• trust_white_networks – Checks if an IP-address is
in the whitelist. The whitelist is specified in the
WhiteNetworks parameter. If it is in the whitelist, the
IP-address is marked as Trusted IP.
• trust_white_domains – Checks if the domain of the
connection address is in the whitelist of domains. The
whitelist is specified in the WhiteDomains parameter. To
perform this check a PTR request is sent. If the domain is in
the whitelist, the address is marked as Trusted IP.
• reject_dnsbl – A check against RBL/DNSBL blacklists.
The servers are specified in the DNSBLList parameter. To
perform the check, an A request is sent. If the address is
listed in one of the lists, the session terminates and the
error is returned.
59
Dr.Web® for Unix mail servers
• reject_black_networks – An address is checked
against the blacklist of IP-addresses. Addresses are specified
in the BlackNetworks parameter. If the address is in
the blacklist, the session terminates and the error is
returned
• reject_black_domains – A domain address is
checked against the blacklist of domains. Domains are
specified in the BlackNetworks parameter. To perform
the check a PTR request is sent. If the address is in the list,
the session terminates and the error is returned
HeloRestrictions ={text}
The parameter sets checks for the HELO/EHLO stage. Actions
specific for this stage:
SenderRestrictions = {text}
Checks performed at the FROM stage. Actions specific for this stage:
60
• trust_sasl_authenticated – if SASL-
authentication was successful, the address is marked as
Trusted IP
• reject_unknown_domain – if the host of a sender
does not have either DNS A, or MX records, the message is
blocked. During the check A or sometimes MX request is
sent.
Default value: no value
RecipientRestrictions = {text}
Checks performed at the RCPT stage. All senders of the message are
checked one by one. Actions specific for this stage:
• reject_unknown_domain – if the host name of a
recipient does not have either DNS A, or MX records, the
sending of a message to this recipient is blocked. During the
check A and sometimes MX requests are sent.
DataRestrictions = {text}
Checks performed at the DATA stage. Actions specific for this stage:
61
Dr.Web® for Unix mail servers
blocked. The SpamTrap list may also contain full e-mail
addresses, and then full e-mail address is checked against
this list.
• reject_multi_recipient_bounce – blocking
messages with empty senders or several recipients.
Default value: no value.
RestrictionStat = {yes|no}
The parameter defines if the statistics of checks should be collected.
If the collection of the statistics is allowed, it can be collected by
sending the SIGUSER1 signal to the drweb-receiver process. The
statistics will be saved in the restrictions.txt file in the directory
specified in the BaseDir parameter of the General section of this
configuration file.
Default value: no
DelayRejectToRcpt = {yes|no}
The yes value for this parameter instructs Dr.Web MailD to
postpone blocking of messages till the RCPT stage. It allows to
operate with old «bugged» mail clients and write addresses of
blocked recipients to a log file.
Default value: yes
62
actions. The syntax of the parameter is equal to the
ProtectedNetworks parameter syntax.
Default value: no value.
PositiveDNSBLCacheTimeout = {time}
Positive timeout for caching of responses from DNSBL-servers.
Default value: 24h
NegativeDNSBLCacheTimeout = {time}
Negative timeout for caching of responses from DNSBL-servers
Default value: 10m
NegativeDNSCacheTimeout = {time}
Negative timeout for caching of all DNS responses, except for DNSBL
Default value: 10m
63
Dr.Web® for Unix mail servers
actions are performed. The syntax of the parameter is equal to the
ProtectedDomains parameter syntax.
Default value: no value.
[SASL] section
Use = {yes|no}
The yes value of this parameter enables SASL-authorization
Default value: no
Driver = {cyrus}
Name of the driver of SASL-authorization. In current version only one
driver is available: cyrus. To use it, the cyrus-sasl2 library should
be installed and set up
Default value: cyrus
BrokenAuthClients = {yes|no}
The parameter enables/disables support of old SMTP-clients with
non-standard version of syntax of the AUTH protocol.
64
AuthenticatedHeader = {yes|no}
If yes is set for this parameter, names of registered users are added
to the Received header of a message
Note: if parameter is set to yes, names of SASL users are visible for
all.
Default value: no
[Cyrus-SASL] section
Path = {text}
A string from which a name of the configuration file is made (the
.conf extension is added to the parameter value) from which the
cyrus-sasl2 library receives its settings
Default value: maild
ServerHostname = {text}
Host name. If the parameter value is not specified, the Hostname
parameter value of the General section of this configuration file is
used as the host name. If the value for this parameter is not
specified either, the value returned by the gethostname function is
used as the hodt name.
Default value: no value.
65
Dr.Web® for Unix mail servers
ServerRealm = {text}
The parameter defines the SASL area of the server.
Default value: no value.
SecurityOptions = {text}
A list of security settings. The settings are separated by commas.
[Sender] section
66
UseSecureHash = {yes|no}
When yes is specified, SecureHash header is added to outgoing
messages. The value of the parameter depends on the mail system
daemon integrates with and settings of this system.
The UseSecureHash and SecureHash parameters are not
necessary when Dr.Web MailD integrates with Courier and Exim and
when it operates as an smtp proxy server.
If messages are sent to the same mail system they have been
received from, yes must be specified to avoid cycling of
messages and to optimize the system efficiency.
If messages are received from the one mail system and sent
to a different Sendmail system, no must be specified as a
value to keep the value of the SecureHash header within
the system.
When Dr.Web MailD is integrated with Zmailer:
67
Dr.Web® for Unix mail servers
adding the SecureHash header helps to avoid cycling of
messages as well as unnecessary double-checking.
Default value: depends on the distribution file
SecureHash={text value}
Defines value of the SecureHash header (see description of the
UseSecureHash parameter). To increase system stability, it is
recommended to change the default value of this parameter.
Default value: «PLEASE EDIT - !!! SECURITY CRITICAL
!!!»
Method = {smtp|lmtp|pipe}
Sender can send messages to clients in the following ways:
• smtp – messages are sent via SMTP
68
• lmtp - messages are sent via LMTP
• pipe – messages are sent by starting external program and
sent to that program via pipe
MailerName = {Sendmail|Postfix|CommuniGate|
Qmail|Exim|Zmailer|Courier}
Name of the mail system Dr.Web MailD is integrated with.
Parameter is used if Method = pipe
Address = {address}
If pipe set as the value of the Method parameter, in the Address
parameter a full path should be specified to the mail system which
receives messages. If other values of the Method parameter are
specified, a socket via which messages are sent is specified in the
Address parameter.
If Dr.Web MailD operates as SMTP-proxy, in additional to standard
types, YPE of the following type is allowed to be used in this
parameter:
mx:HOSTNAME, where HOSTNAME – is the host name. If such type
is used, the program receives all XM records from HOSTNAME and
sends the message accordingly.
Default value: depends on the distribution file
69
Dr.Web® for Unix mail servers
Default value: not specified
HeloCmdTimeout = {time}
Timeout for HELO/EHLO commands to be executed
Default value: 5m
MailFromCmdTimeout = {time}
Timeout for MAIL command to be executed
Default value: 5m
RcptToCmdTimeout = {time}
Timeout for RCPT command to be executed
Default value: 5m
DataCmdTimeout = {time}
Timeout for DATA/BDAT commands to be executed
70
Default value: 2m
DataBlockTimeout = {time}
Timeout for a message to be sent
Default value: 3m
EndOfDataTimeout = {time}
Timeout to send acknowledgement that a message has been
received from mail system.
Default value: 10m
OtherCmdsTimeout = {time}
Timeout for other SMTP/LMTP commands to be executed.
Default value: 2m
PipeTimeout = {time}
Timeout for receiving a response through pipe
Default value: 2m
SendDSN = {yes|no}
The parameter defines if DSN reports should be sent
Default value: yes
71
Dr.Web® for Unix mail servers
If a message has several recipients, and messages to different
recipients should be routed to different addresses, the list of
recipients is divided into groups and the messages aimed for
recipients of one group are sent to one definite address.
For each group of recipients a copy of the message is created and
then the messages are sent via different addresses.
The values of the parameter are set in DOMAIN ADDRESS,
where:
• DOMAIN – a string against which the envelopes of
recipients are checked. The envelopes look like
<user@host>. The search is case-insensitive. For
example, if @localhost is searched, it will be found both
in <test@localhost> and in the
<[email protected]> envelope, and if
@localhost> is searched, it will be found in the
<test@localhost> envelope only
• ADDRESS – address via which a message is sent, if the
domain string is found in the envelope. The format of the
address is similar to the Address parameter of the current
section of the configuration file.
Default value: no value.
[Milter] section
Address = {address}
72
Address for connection via milter that corresponds to that
specified in the settings of the mail system (must be set in the
sendmail.cf file for Sendmail and main.cf file for Postfix).
Path to PID file must not be used as address.
Default value: inet:[email protected]
Timeout = {time}
Timeout to wait for establishing connection via milter
The value of this parameter must be greater than a value of any
timeout in the configuration file of the mail system.
Default value: 2h
Default value: 0
HaveInsHeader = {yes|no}
In case yes is specified as a value of this parameter, it tells Dr.Web
MailD that the milter library supports smfi_insheader function
which allows for adding headers to the beginning and the end of
messages. This support is available in the Sendmail version 8.13.1
and later and all versions of Postfix
73
Dr.Web® for Unix mail servers
Default value: yes
CanChangeBody = {yes|no}
In case yes is specified as the value of this parameter, it tells
Dr.Web MailD that the mail system supports modification of the
message body. Sendmail has this function. Postfix supports this
function beginning from v. 2.4.
When the program is restarted on receiving HUP signal, this
parameter does not change.
Default value:
For Sendmail: yes
For Postfix: no
ProcessingErrors = {actions}
Actions applied to messages in case processing errors occur. Only
one of the main actions (tempfail, discard, pass,
reject) can be specified as the value of this parameter.
Default value: reject
74
Maximum number of threads in the pool that process message check
results.
Default value: 3
[Notifier] section
For FreeBSD:
/usr/local/etc/drweb/maild/templates
LngBaseDir={path to directory}
Directory with language resources.
Default value:
For Linux and Solaris: /etc/drweb/maild/lng
75
Dr.Web® for Unix mail servers
Default value: [email protected]
Default value: en
TemplatesParserLogLevel = {Quiet|Error|Alert|
Info|Debug}
Logging level for the subsystem which is responsible for generation
of reports on the basis of templates.
Default value: Info
RulesLogLevel = {Quiet|Error|Alert|Info|Debug}
Level of logging details for rules processor.
Default value: Info
76
3.4. Components
3.4.1. Checker
The Checker, which is a main component of the system, is
represented by the drweb-maild module. It performs mime-
processing of messages, sends messages to plug-ins for analysis and
is responsible for storing messages to the database.
77
Dr.Web® for Unix mail servers
When plug-ins are specified as
BeforeQueueFilters, messages are
processed with a high speed but system reliability is
low. When plug-ins are specified as
AfterQueueFilters, the speed is slower but
the reliability increases. Moreover some plug-ins
can operate only as AfterQueueFilters.
Check results are sent either to the Receiver component (in case
it is possible, for example the timeout for waiting for results is not
expired and this function is available in the used version of the
component) or to the Sender component. Moreover, all
notifications generated by plug-ins go through the Sender
component.
Operation of some plug-ins requires usage of database. Such plug-ins
cannot be specified as BeforeQueueFilters.
3.4.2. Receiver
The Receiver component is responsible for receiving mail directly
from mail systems or via smtp/lmtp protocols and transferring it to
the Checker component. Depending on used mail systems and
protocols, functions of the Receiver component are taken up by
different modules (drweb-receiver, drweb-milter,
drweb-cgp-receiver and so on). Moreover, a simultaneous
operation of several modules of the Receiver component is
supported, which makes possible to receive and process messages
from different sources simultaneously. Some modules of the
Receiver component allow to modify/forward messages; this
depends on the check results received from the Checker
component. For example, such capability is implemented in the
78
drweb-milter module, which allows to send messages’ check
results to the SendMail system before the end of an smtp-session.
All the modules of the Receiver component support processing of
SIGALRM. If this signal is received, the Receiver component
checks the internal structure of directories in search of ”lost” for
some reasons messages. If such messages are found, an attempt to
send them to their recipients is taken.
The drweb-receiver module operating as smtp-proxy supports
also processing of SIGUSR1. If this signal is received, the module
saves to a file the addresses’ check statistics (read comments to the
Receiver/RestrictionStat parameter of the configuration file of Dr.Web
Mail Daemon)
3.4.3. Sender
The Sender component is responsible for channeling mail either
directly to different mail systems or via smtp/lmtp protocols.
Depending on used mail systems and protocols, functions of the
Sender component are taken up by different modules (drweb-
sender, drweb-cgp-sender, etc.).
The Sender component can receive calls for messages from
Checker, Notifier and Monitor components.
All the modules of the Sender component support processing of the
following signals:
• SIGALRM – when this signal is received, the Sender
component checks the internal structure of directories in
search of "lost" for some reasons messages. If such
messages are found, an attempt to send them to their
recipients is taken.
• SIGUSR2 – if this signal is received, the component makes
an attempt to send all the messages waiting to be sent in its
internal queue.
79
Dr.Web® for Unix mail servers
3.4.4. Notifier
The Notifier component is responsible for reports generated
during the operation of the system and represented by the drweb-
notifier module. Calls for reports can be sent by plug-ins (for
example, in case a virus is found) as well as by system components.
For instance, the Checker module can send calls for general report
with information on operation of all connected plug-ins; the Sender
component can send calls for DSN reports informing on inability to
send a message.
3.4.5. Monitor
The Monitor component (further called monitor) is represented by
the drweb-monitor module and assures stable operation of
Dr.Web MailD system. The monitor is responsible for loading system
components starting additional components if necessary. If an
attempt to load a module is unsuccessful, the monitor takes another
attempt. Number of attempts and time period between attempts are
defined by components’ settings.
During its operation, the monitor can interact with other system
modules by sending signals.
As soon as all anti-virus modules are loaded, the monitor starts to
control their operation. In case a module or one of its components
starts to operate abnormally, the monitor reload its. A number of
attempts and time period between attempts are also defined by
monitor settings.
If an anti-virus module starts to operate abnormally, the monitor
informs the system administrator.
80
• -c <file name>, --conf <file name> – instructs
to use alternative configuration file
• -r, --run application1[,application2] –
instruct to start applications. For example, -r
AGENT,MAILD – without blanks.
3.4.5.2. Settings
Settings of the Monitor components are specified in a separate
configuration file – %etc_dir/monitor.conf.
[Logging] section.
This section includes parameters which affect details level of logging
for the monitor.
Level = {fatal|error|warn|info|debug}
Defines details level for the monitor’s log.
Default value: Info
IPCLevel = {fatal|error|warn|info|debug}
Defines the detail level of logging for interaction of the monitor with
other modules of Dr.Web MailD.
Default value: Error
Default value: no
Name of the group whose privileges are used to start the monitor
Default value: drweb
82
MetaConfigDir {path to directory}
Name of directory containing meta-configuration files. These
parameters regulate interaction of the monitor with Dr.Web MailD
modules. The content of meta-configuration files is set by Dr.Web
MailD developers and its editing is unnecessary.
Default value:
for FreeBSD: /usr/local/etc/drweb/monitor/
Address ={address}
Socket through which monitor receives signals.
Default value: local:/var/drweb/ipc/.monitor
83
Dr.Web® for Unix mail servers
Default value: MAILD
UseEnterpriseMode = {Yes|No}
When yes is specified, list of modules that must be started by the
monitor is taken not from the RunAppList parameter, but from
the drweb-agent.
AgentAddress = {address}
Socket through which monitor interacts with the agent.
(the parameter value should be the same as the Address
parameter value of the Agent’s configuration file).
Default value: local:/var/drweb/ipc/.agent
84
AgentResponseTime = {digital value}
Timeout (in seconds) to wait for response from drweb-agent. If
there is no response from the component during the specified time,
the monitor assumes drweb-agent is not running and restarts it.
Default value: 30
[Update] section
85
Dr.Web® for Unix mail servers
2 Monitor disconnects from the terminal. Therefore
notifications on errors can not reach the terminal and are
only logged.
3 A socket for interaction with other modules of Dr.Web
MailD is created. It is possible to establish several
connections via TCP (loading will continue if at least one
connection is successful)
In case a unix-socket is used, make sure that its directory
is accessible for reading and writing by a user whose
privileges is used by drweb-monitor module. If not a
single socket can be created, loading of the monitor is
aborted.
4 a PID-file storing monitor process id is created. If the file
is not found, loading is aborted.
5 drweb-monitor loads other modules of the Dr.Web
MailD. If a certain module cannot be loaded properly, the
monitor takes another attempt to load it. In case all
attempts taken by the monitor to load a module failed,
the monitor unloads all loaded modules and terminates its
operation. All problems are reported by the monitor using
one of the possible notification modes (by logging, via e-
mail, by starting a selected application). Notification
modes used for different modules are defined in the
monitor’s meta configuration file.
3.4.6. Agent
The Agent component (also called «agent») represented by
drweb-agent module controls settings of Dr.Web MailD modules,
regulates operation of Dr.Web MailD according to the used license
and collects anti-virus statistics.
During its operation, agent can interact with other system modules
by sending signals.
86
Agent controls system operation in the standalone mode and when
the system is integrated with Dr.Web Enterprise Suite.
87
Dr.Web® for Unix mail servers
Agent needs a user id (UUID) to connect to the site at
http://stat.drweb.com. By default, md5 of a key file is used as UUID.
You can also receive your personal UUID. For this, contact technical
support. When you receive a personal UUID, you must specify it in
the configuration file.
88
3.4.6.4. Settings
Settings of the Agent component are defined in the
%etc_dir/agent.conf configuration file.
The structure and principles of description of parameters of the
configuration file are fully described in p. 3.3.
[Logging] section.
This section includes parameters that affect logging of drweb-
agent.
Level = {quiet|error|alert|info|debug}
Defines details level of the agent’s log
Default value: Info
IPCLevel = {quiet|error|alert|info|debug}
Defines detail level of logging for interaction of the agent with other
modules of Dr.Web MailD.
Default value: Error
89
Dr.Web® for Unix mail servers
Directory with meta configuration files of drweb-agent. Meta
configuration files describe interaction of drweb-agent with other
modules.
These files are created by developers of Dr.Web MailD and do not
require editing.
Default value:
For Linux/Solaris: /opt/drweb/agent/
RunForeground = {Yes|No}
When yes is specified for this parameter, the monitor does not
function as a “daemon” which allows to get information on its state
using special tools (for example daemontools).
Default value: no
UseMonitor = {Yes|No}
The Yes value tells the drweb-agent module that the Monitor
component is used with Dr.Web MailD.
Default value: Yes
MonitorAddress = {address}
A socket through which the anti-virus agent interacts with the
drweb-monitor module (the value of the parameter must be the
same as the value of the Address parameter in the configuration
file of the monitor).
Default value: local:/var/drweb/ipc/.monitor
90
MonitorResponseTime = {digital value}
Timeout (in seconds) for drweb-monitor to respond. If within
this period the monitor does not respond, the agent think that it is
running and does not attempt to interact with the monitor.
Default value: 3.
[Server] section.
This section includes parameters that affect interaction between
drweb-agent with other modules of Dr.Web MailD.
Address = {address}
Socket through which drweb-agent interacts with other modules.
Backlog ={value}
91
Dr.Web® for Unix mail servers
Maximum number of requests to establish connection through the
socket defined by the Address parameter of the [Server]
section.
Default value: 24
[EnterpriseMode] section.
This section includes parameters that affect operation of drweb-
agent in the Enterprise mode.
UseEnterpriseMode = {Yes|No}
When Yes is set for this parameter drweb-agent operates in the
Enterprise mode. When No is set, the module operates in the
Standalone mode.
Default value: No
PasswordFile={path to file}
Name of file where name and password hashes for accessing ES
server are stored.
Default value: /var/drweb/agent.pwd
92
VirusbaseDir={path to directory}
Path to virus base
Default value: /var/drweb/bases
ServerHost = {IP-address}
IP-address of ES server
Default value: 127.0.0.1
CryptTraffic ={yes|possible|no}
Encryption of traffic between ES server and the drweb-agent
module
Default value: possible
CompressTraffic = {yes|possible|no}
Compression of traffic between ES server and the drweb-agent
module
93
Dr.Web® for Unix mail servers
Default value: possible
[StandaloneMode] section
Settings of drweb-agent that affect its operation in the
standalone mode.
UUID = {identifier}
Personal identifier which is used to access the virus statistics server
at http://stat.drweb.com.
The parameter must be set in case, if a personal UUID is required to
access the virus statistics server.
If the parameter is not set, a hash function of the md5 of the license
key file is used for accessing the server
Default value: not specified
94
For FreeBSD: /usr/local/drweb/drweb32.key
[Update] section
95
Dr.Web® for Unix mail servers
3.4.6.5. Starting the Agent
When drweb-agent is started (with default settings), the
following is performed:
1 The module searches for the configuration file. In case
the file is not found, loading is aborted. If parameters of
the [EnterpriseMode] section are specified in the
configuration file (and computer is included into ES
network), agent works in the Enterprise mode.
Otherwise, if parameters of the[Standalone] section
are specified in the configuration file, agent works in the
Standalone mode. If parameters of
the[Standalone] section are not specified, loading is
aborted.
2 A socket for interaction with other modules of Dr.Web
MailD is created. It is possible to establish several
connections via TCP (loading will continue, if at least one
connection is successful).
In case a unix-socket is used, make sure that its directory
is accessible for reading and writing for a user whose
privileges is used by the drweb-agent module. If not a
single socket can be created, loading of the agent is
aborted.
Further process flow depends on the
mode of agent operation. If agent
operates in the Enterprise mode, the
process goes on like this:
1. The module attempts to establish connection to ES server.
If the server is inaccessible or authorization on the sever
failed, agent tries to load in the standalone mode. If
connection is established, loading continues.
96
2. Agent receives license key files and settings for anti-virus
modules from ES server. As soon as license keys and
settings are received, agent is ready for operation.
If agent operates in the Standalone
mode, the process goes on like this:
1 Meta configuration files of Dr.Web MailD modules are
being loaded. These files describe parameters of agent
interaction with modules. Location of meta configuration
files is defined by the MetaConfigDir parameter of
the [Agent] section in the configuration file. After that
agent is ready for operation.
Each rule is written in a single line and consists of two parts: regular
expression which defines value for application of a rule and Dr.Web
MailD parameters specified in the rule. If a line is not enough, the
"\" symbol is used at the end of the line and the rule is further
described in the next line.
98
• To invert a regular expression, (i.e. to put a rule into
application when no matches with regular expression found)
you should insert exclamation mark "!" in front of it.
• In front of regular expression in the user section you can
specify a qualifier indicating types of addresses which are
checked for matches with regular expression. Qualifier can take
on two values: Rcpt: – instructs to check only recipient
addresses and Sender: – instructs to check only sender
addresses. If no qualifier is specified, recipient addresses as
well as sender addresses are checked. Qualifiers for regular
expressions can be specified in the virus section, but it does not
affect usage of regular expressions.
Examples:
Rcpt:!@example\
com - this regular expression will work in case
recipient address does not belong to example.com domain.
The rule with this regular expression will be applied if sender
address is "A. [email protected]".
99
Dr.Web® for Unix mail servers
commands of the rule (search for matches of address types
and conditions and setup of parameters) are executed.
• if parameter value has been specified several times, the last
specified value will be saved. The exception is parameters
which depend on conditions (see description of the Notify
parameter below).
• Settings set by rules on the basis of recipient address match
have a higher priority over settings set by rules on the basis of
sender address match.
• If a message is meant for several recipients, search of regular
expressions and application of rules are performed for each
recipient separately, and therefore different reports can be sent
to recipients.
• For parameters left without specified values after application of
all suitable rules values from default section are set.
default section is described below.
Quarantine={yes|no}
Yes instructs to move a message to quarantine.
100
Algorithm for setting a parameter is as follows: suitable rules of
[Viruses] section are analyzed first. If for all viruses detected in a
message, Quarantine parameter is set to no, further search for
parameter match is aborted. Otherwise the [Users] section is
searched. Even if the [Quarantine] parameter is set to yes only
for a single recipient or sender, message will be moved to
quarantine.
Default value: no
Examples:
• scan = all - message is checked by all plug-ins
• scan = all:-foo – message is checked by all plug-ins
apart from foo
101
Dr.Web® for Unix mail servers
• scan = Foo:Moo message is checked only by foo and moo
plug-ins
• scan = all:foo – wrong parameter format: after keyword
all you cannot specify names of plug-ins without the '–' sign.
• scan = -foo:all – wrong parameter format: the keyword
all should be placed at the very beginning of the line.
• scan = -foo – wrong parameter format: you cannot
specify plug-in’s names with '-' signs, if the keyword all is
missing.
notify[.{notification mode}]=
{allow|block}[({types of
addresses})] [condition]
The parameter regulates display of certain types of notifications. The
allow value enables a correspondent type of the notification and
the block value disables it. In case type of notification is not
specified, this parameter controls display of all notifications.
Possible types of notifications depend on types of report that the
drweb-notifier module supports. Additional plug-ins can have
their own types of notifications. By default the following types of
notifications are supported:
• notify.Virus – notifications on viruses detected in a
message
• notify.Cured – notifications on viruses cured in a message
• notify.Skip – notifications on skipped messages
• notify.Archive – notifications on messages, which have
not been checked due to restrictions for archives
• notify.Error – notifications on errors occurred when
checking messages
102
• notify.Rule – notifications on messages blocked by
certain rules
• notify.License – notifications on messages skipped due
to license limitations
• notify.Malware – notifications on detected malware
Parameter value can be followed by optional qualifier specified in
brackets which indicates address types for notifications.
You can specify several address types divided by a colon. Possible
qualifier values:
• sender – notifications for sender
• rcpt – notifications for recipient
• admin – notifications for administrator
• any, (or no qualifier at all) - notifications for all address types
Optional qualifier can be followed by conditions of the notify
parameter setup. A condition consists of the keyword if and a
regular expression. Regular expressions in conditions of the notify
parameter correspond to regular expressions, specified for the rules
of the [Users] section, i.e. can work for certain email addresses.
Parameters with somewhat different conditions are not ignored in
favor of parameters of the same type which are described further in
the configuration file.
Examples:
• Notify=block; notify=block (any) – the same
action is performed: all notification types are blocked.
• notify.Virus = block (sender:admin) –
notifications on detected viruses are blocked for administrator
and sender.
• notify.Error = allow if
Sender:@example\.com – allows all notifications on
103
Dr.Web® for Unix mail servers
occurred errors when processing a message if sender address
belongs to example.com;
104
enabled even for a single virus, search for parameter match
goes on in the [Users] section.
Once these rules are executed, reports will be blocked and moving
messages to quarantine whose recipient belongs to example.com
domain will be disabled. If a message has been sent from
[email protected], only reports on found viruses will be enabled if
recipient belongs to foo.com domain and moving files to
quarantine will be disabled. Pay attention to the fact that in the last
example the notify.Skip=allow parameter is disabled by
notify=block parameter from MySection.
On the server you can see statistics for your server as well as global
statistics for all servers where Dr.Web for Unix system or Dr.Web
MailD with an anti-virus plug-in is deployed.
106
Statistics reflect information on the most frequently detected viruses
(their detection frequency and rating in percentage) for a definite
period.
The data can be displayed both in HTML and in XML formats. The
latter is especially useful in case you want to publish these data on
your web-site: you can customize it to your web-site design and
content.
To get information on global statistics for all used servers, visit the
web-page at http://stat.drweb.com. The web-page contains a list of
viruses detected on all used web-servers (arranged by frequency in
the descending order) with information on the number of detection
cases and rating in percentage (see a table fragment in pic. 1). The
look of the table depends on your browser.
107
Dr.Web® for Unix mail servers
108
4. Select the Plot graph checkbox to see data in a
graphical form.
5. Click Query.
109
Dr.Web® for Unix mail servers
• updatedutc – time of last update
• vname – virus name
• place – rating position
• percents – detection rating in percentage
Time period for collecting statistics data and a number of viruses to
display in the table cannot be changed by a user.
To receive personal statistics data, go to the web-page at
http://stat.drweb.com/view/<UID>, where <UID> is an md5
checksum indicated in the user key file. The page containing personal
statistics data has the format that matches the format of a page with
global statistics.
A file containing personal statistics in XML format can be found at
http://stat.drweb.com/xml/<UID>, where <UID> — is an md5
checksum indicated in the user key file. A fragment from such file is
given below:
<?xml version="1.0" encoding="UTF-8" ?>
- <drwebvirustop period="24" top="20"
user="<UID>"
lastdata="2005-04-12 07:00:00+04">
- <item>
<caught>69</caught>
<percents>24.1258741258741</percents>
<place>1</place>
<vname>Win32.HLLM.Netsky.35328</vname>
</item>
- <item>
<caught>57</caught>
<percents>19.9300699300699</percents>
<place>2</place>
<vname>Win32.HLLM.MyDoom.54464</vname>
</item>
..............................................
</drwebvirustop>
Here the following attributes are used:
• period – time spent on collection of statistics (set in hours)
110
• top – number of the most frequently detected viruses to
display in the table
• user – user id
• lastdata – last time when data is received from the user
• vname – virus name
• place – rating position
• caught – number of detection cases
• percents – detection rating in percentage
As in case you send a query for global statistics,
you cannot set the time period and number of
viruses to be displayed
111
Dr.Web® for Unix mail servers
4. Plug-ins
At the moment the following plug-ins of Dr.Web MailD system are available:
anti-virus plug-in, VadeRetro anti-spam plug-in and headersfilter plug-in.
112
4.1.1. Installing base package
In all examples given below it is assumed that the base package will
be installed on a computer after Dr.Web MailD is installed. Depending
on the OS version and version of the base package digits in file
names may somewhat differ from those given below.
113
Dr.Web® for Unix mail servers
4.1.1.2. Installing for FreeBSD
The distribution of the base package for FreeBSD is delivered as a
tar-archive (drweb-4.44.1-freebsd60.tar.gz). This type
of delivery is not connected to any distribution of the system. The
base package for FreeBSD is installed as follows:
1 Copy the distribution of the base package onto a
computer you want to install it.
2 Change the current user of the system to the root user.
For this, execute the su command and input the
password of the root user into the corresponding dialog.
3 Go to the directory with the base package distribution.
4 Unpack the archive. The drweb-4.44.1-
freebsd60 directory will be created
Example :
> tar xzf drweb-4.44.1-freebsd60.tar.gz
5 Move the directory tree nested in the drweb-4.44.1-
freebsd60 to he root directory (you can also set your
own directory tree, but you will have to edit the Dr.Web
MailD configuration file accordingly, read p. 3.3.1).
Example :
> cp -pR drweb-4.44.1-freebsd60/* /
6 Set access rights for created directories.
Example :
> chown -R drweb:drweb /usr/local/etc/drweb
> chown -R drweb:drweb /usr/local/drweb
> chown -R drweb:drweb /var/drweb
114
1 Copy the distribution of the base package onto a
computer you want to install it.
2 Change the current user of the system to the root user.
For this, execute the su command and input the
password of the root user into the corresponding dialog.
3 Go to the directory with the base package distribution.
4 Unpack the archive. The drweb-4.44.1-
solaris10 directory will be created
Example :
> tar xzf drweb-4.44.1-solaris10.tar.gz
5 Move the directory tree nested in the drweb-4.44.1-
solaris10 to he root directory (you can also set your
own directory tree, but you will have to edit the Dr.Web
MailD configuration file accordingly, read p. 3.3.1).
Example:
> cp -a drweb-4.44.1-solaris10/* /
6 Set access rights for created directories.
Example :
> chown -R drweb:drweb /etc/drweb
> chown -R drweb:drweb /opt/drweb
> chown -R drweb:drweb /var/drweb.
115
Dr.Web® for Unix mail servers
4.1.2.1. Installing for Linux
Drweb for Linux is distributed as a tarball-archive (drweb-maild-
plugin-drweb-4.44.1-glibc2.3.tar.gz). The software
is installed manually in the following way:
1. Save a distribution file of the plug-in to a computer where
you want to install the software.
2. Switch to root user. For this, execute the su command
and type the root password
3. Go to the directory where you have saved the distribution
file.
4. Switch to root user. For this, execute the su command
and type the root password
5. Extract files from archive. A drweb-maild-plugin-
drweb-4.44.1-glibc2.3 directory with subdirectories
arranged in the tree will be created.
Example:
> tar xzf drweb-maild-plugin-drweb-4.44.1-
glibc2.3.tar.gz
Then, there are 2 modes to install the plug-in: the manual and the
automatic. The installation in the automatic mode is done by the
install.sh installation script located in the drweb-maild-
plugin-drweb-4.44.1-glibc2.3 directory created during
the unpacking of the anti-virus plug-in the install.sh script does
the following:
116
3 It integrates the plug-in with Dr.Web MailD.
117
Dr.Web® for Unix mail servers
5. Extract files from archive. A drweb-maild-plugin-
drweb-4.44.1-freebsd60 directory with
subdirectories arranged in a tree will be created.
Example:
> tar xzf drweb-maild-plugin-drweb-4.44.1-
freebsd60.tar.gz
Then, there are 2 modes to install the plug-in: the manual and the
automatic. The installation in the automatic mode is done by the
install.sh installation script located in the drweb-maild-
plugin-drweb-4.44.1- freebsd60 directory created
during the unpacking of the anti-virus plug-in. The install.sh
script does the following:
118
> cp -pR drweb-maild-plugin-drweb-4.44.1-
freebsd60/* /
2 Then set access rights to the created directories:
Example:
> chown -R drweb:drweb /usr/local/etc/drweb
> chown -R drweb:drweb /usr/local/drweb
3 Integrate the plug-in with Dr.Web MailD (read p. 4.1.4)
Then, there are 2 modes to install the plug-in: the manual and the
automatic. The installation in the automatic mode is done by the
install.sh installation script located in the drweb-maild-
plugin-drweb-4.44.1-solaris10 directory created during
the unpacking of the anti-virus plug-in. The install.sh script
does the following:
119
Dr.Web® for Unix mail servers
120
4.1.3.1. Upgrading for Linux
The drweb distribution for Linux is delivered as a tar-archive
(drweb-maild-plugin-drweb-4.44.1-
glibc2.3.tar.gz). The drweb plug-in for Linux is upgraded as
follows:
1 Copy the distribution of the plug-in onto a computer
where you want to upgrade it.
2 Change the current user of the system to the root user.
For this, execute the su command and input the
password of the root user into the corresponding dialog.
3 Go to the directory with the plug-in distribution.
4 Unpack the archive. The drweb-maild-plugin-
drweb-4.44.1-glibc2.3 directory will be created
Example :
> tar xzf drweb-maild-plugin-drweb-4.44.1-
glibc2.3.tar.gz
5 In the drweb-maild-plugin-drweb-4.44.1-
glibc2.3 directory created during the unpacking of
the archive with the plug-in the install.sh script
resides. To upgrade, run this script with the update
parameter. If launched with this parameter, the
install.sh script will perform the following actions:
5.1Copies the directory tree nested in the drweb-
maild-plugin-drweb-4.44.1-glibc2.3
directory to the root directory and files of the installed
version of plug-in replace all files of the already installed
plug-in, except for configuration files. The configuration
files of the already installed plug-in remain unchanged.
During the replacement of the configuration files of the
new version of plug-in the script adds the .new suffix to
their names.
121
Dr.Web® for Unix mail servers
5.2Sets access rights for directories of the plug-in.
122
22.2Sets access rights for directories of the plug-in.
123
Dr.Web® for Unix mail servers
new version of plug-in the script adds the .new suffix to
their names.
27.2Sets access rights for directories of the plug-in.
[Anti-virus] section
Address ={address}
Address of socket, which anti-virus plug-in uses to send tasks for
checking messages to daemon. It is possible to specify several
addresses of different daemons on different servers. Address at the
124
top of the list is considered as the main one, the rest is kept in
reserve. Apart from standard address types, this parameter supports
pid.
Examples:
• Format of pid – Address =
pid:/var/drweb/run/drwebd.pid
• Format of several addresses – Address =
pid:/var/drweb/run/drwebd.pid, inet:
[email protected]
Default value: pid:/var/drweb/run/drwebd.pid
Timeout ={time}
Timeout for daemon to execute a command (0 - time is not limited).
TCP_NODELAY = {yes|no}
With the yes value, the socket will work with TCP_NODELAY
Default value: no
HeuristicAnalysis = {yes|no}
Enabling/disabling the heuristic analyzer to detect unknown viruses.
The heuristic analysis allows detection of unknown viruses. It is
based on an a priori assumption how a virus code is arranged. Such
kind of analysis is approximate and probabilistic, and we can speak of
not infected, but suspicious objects only.
With the heuristic analyzer disabled, only known viruses the
signatures of which are stored in the database can be detected. With
the heuristic analyzer enabled, programs can trigger false alarms due
to usage of codes similar to viruses. Moreover, the heuristic analyzer
125
Dr.Web® for Unix mail servers
can somewhat extend the duration of scanning (not for long,
though).
Default value: yes.
ReportMaxSize = {size}
Maximum size of Dr.Web MailD log file. If for ReportMaxSize
parameter 0 is specified, log file size is not limited.
AddXHeaders ={yes|no}
If yes is specified, X-Anti-virus and X-Anti-virus-Code
headers will be added to the scanned messages.
Default value: depends on the distribution file
LocalScan = {yes|no}
If yes is specified, daemon scans messages in local mode.
126
Paranoid = {yes|no}
If yes is specified, messages will be scanned in "paranoid" mode.
LicenseLimit = {Action}
This parameter defines action that should be applied to messages
which have not been scanned due to license limitations.
Possible main actions: pass, discard, reject, tempfail.
Infected = {Action}
Defines action for messages infected with a known virus. All main
and possible actions can be specified for this parameter.
Default value: cure, quarantine.
127
Dr.Web® for Unix mail servers
Adware – message contains adware
Dialers – message contains a dialer
Jokes – message contains a joke that can scare or annoy a user.
Riskware – message contains riskware that can be used even by
criminals.
Hacktools – message contains programs used to hack into
computers
SkipObject – messages contains objects that cannot be scanned
by daemon (for example, when password protection is used)
ArchiveRestriction – message contains archive that cannot
be scanned by daemon due to limits set for archives in daemon
settings
ScanningErrors – messages, which when being scanned make
daemon generate errors. For example, it has run short of memory or
does not have proper rights for processing.
ProcessingErrors – Messages which when being scanned
make plug-in generate errors, for example, anti-virus plug-in runs
short of memory or cannot connect to daemon.
UseCustomReply = {yes|no}
If yes is set, content of SMTP-responses sent by the Dr.Web MailD
are determined by the parameters given below. If no is set, default
values are used.
Default value: no
128
ReplyInfected = {text value}
SMTP-response, generated in cases when a message is blocked due
to detection of a virus.
Default value: "DrWEB Anti-virus: Message is
rejected because it contains a virus."
129
Dr.Web® for Unix mail servers
Default value: "DrWEB Anti-virus: Message is
rejected because it contains archive which
violates restrictions."
130
2. Switch to root user. For this, execute the su command and
type the root password
3. Go to the directory where you have saved the distribution file.
4. Extract files from archive. A drweb-maild-plugin-
headersfilters-4.44.1-glibc2.3 directory with
subdirectories arranged in a tree will be created.
Example:
> tar xzf drweb-maild-plugin-
headersfilters-4.44.1-glibc2.3.tar.gz
Then, there are 2 modes to install the plug-in: the manual and the
automatic. The installation in the automatic mode is done by the
install.sh installation script located in the drweb-maild-
plugin-headersfilters-4.44.1-glibc2.3 directory
created during the unpacking of the plug-in. The install.sh
script does the following:
131
Dr.Web® for Unix mail servers
program’s configuration file accordingly, read p. 3.3.1).
Example:
> cp -a drweb-maild-plugin-
headersfilters-4.44.1-glibc2.3/* /
2. Then set access rights to the created directories:
Example:
> chown -R drweb:drweb /etc/drweb
> chown -R drweb:drweb /opt/drweb
3. Integrate the plug-in with Dr.Web MailD (read p. 4.2.3)
132
plugin-headersfilters-4.44.1-freebsd60 directory
created during the unpacking of the plug-in. The install.sh
script does the following:
133
Dr.Web® for Unix mail servers
4.2.1.3. Installing for Solaris
Headersfilter for Solaris is distributed as a tarball-archive (drweb-
maild-plugin-headersfilters-4.44.1-
solaris10.tar.gz). This software is installed manually in the
following way:
1. Save a distribution file of the plug-in to a computer where you
want to install the software.
2. Switch to root user. For this, execute the su command and
type the root password
3. Go to the directory where you have saved the distribution file.
4. Extract files from archive. A drweb-maild-plugin-
headersfilters-4.44.1-solaris10 directory with
subdirectories arranged in a tree will be created.
Example:
> gzip -d drweb-maild-plugin-
headersfilters-4.44.1-solaris10.tar.gz
> tar xf drweb-maild-plugin-
headersfilters-4.44.1-solaris10.tar
Then, there are 2 modes to install the plug-in: the manual and the
automatic. The installation in the automatic mode is done by the
install.sh installation script located in the drweb-maild-
plugin-headersfilters-4.44.1-solaris10 directory
created during the unpacking of the plug-in. The install.sh
script does the following:
134
In case you cannot or do not want to use the install.sh script,
the installation can be done manually:
135
Dr.Web® for Unix mail servers
1. Copy the distribution of the plug-in onto a computer where
you want to upgrade it.
2. Change the current user of the system to the root user.
For this, execute the su command and input the
password of the root user into the corresponding dialog.
3. Go to the directory with the plug-in distribution.
4. Unpack the archive. The drweb-maild-plugin-
headersfilter-4.44.1-glibc2.3 directory will
be created.
Example :
> tar xzf drweb-maild-plugin-
headersfilter-4.44.1-glibc2.3.tar.gz
5. In the drweb-maild-plugin-
headersfilter-4.44.1-glibc2.3 directory
created during the unpacking of the archive with the plug-
in the install.sh installation script resides. To upgrade,
run this script with the update parameter. Being
launched with this parameter, the install.sh script
will perform the following actions:
5.1.Copies the directory tree nested in the drweb-
maild-plugin-headersfilter-4.44.1-
glibc2.3 directory to the root directory and files of
the installed version of the plug-in replace all files of the
already installed plug-in, except for configuration files.
The configuration files of the already installed plug-in
remain unchanged. During the replacement of the
configuration files of the new version of the plug-in the
script adds the .new suffix to their names.
5.2.Sets access rights for directories of the plug-in.
136
4.2.2.2. Upgrading for FreeBSD
The headersfilter distribution for FreeBSD is delivered as a tar-archive
(drweb-maild-plugin-headersfilter-4.44.1-
freebsd60.tar.gz). The headersfilter plug-in for FreeBSD is
upgraded as follows:
1. Copy the distribution of the plug-in onto a computer where
you want to upgrade it.
2. Change the current user of the system to the root user.
For this, execute the su command and input the
password of the root user into the corresponding dialog.
3. Go to the directory with the plug-in distribution.
4. Unpack the archive. The drweb-maild-plugin-
headersfilter-4.44.1-freebsd60 directory
will be created.
Example :
>tar xzf drweb-maild-plugin-
headersfilter-4.44.1-freebsd60.tar.gz
5. In the drweb-maild-plugin-
headersfilter-4.44.1-freebsd60 directory
created ruing the unpacking of the archive with the plug-in
the install.sh installation script resides. To upgrade,
run this script with the update parameter. Being
launched with this parameter, the install.sh script
will perform the following actions:
5.1.Copies directory tree nested in the drweb-maild-
plugin-headersfilter-4.44.1-freebsd60
directory to the root directory and files of the installed
version of the plug-in replace all files of the already
installed plug-in, except for configuration files. The
configuration files of the already installed plug-in remain
unchanged. During the replacement of the configuration
137
Dr.Web® for Unix mail servers
files of the new version of the plug-in the script adds the
.new suffix to their names.
5.2.Sets access rights for directories of the plug-in.
138
5.1.Copies the directory tree nested in the drweb-
maild-plugin-headersfilter-4.44.1-
solaris10 directory to the root directory and files of
the installed version of the plug-in replace all files of the
already installed plug-in, except for configuration files.
The configuration files of the already installed plug-in
remain unchanged. During the replacement of the
configuration files of the new version of the plug-in the
script adds the .new suffix to their names.
5.2.Sets access rights for directories of the plug-in.
139
Dr.Web® for Unix mail servers
[HeadersFilter] section
ScanEncodedHeaders = {yes|no}
If yes is specified as the parameter’s value, headers of messages
are processed until decoding is complete. For example, yes as the
value for the ScanEncodedHeaders parameter and
RejectCondition = Subject = "iso-8859-5"
rule allow to filter out messages whose subject string is encoded with
iso-8859-5. In case yes is specified as the parameter’s value all
the encoded headers will be scanned twice: before and after
encoding is complete.
Default value: yes.
140
HEADER = regular expression. You can combine several
conditions using parentheses or OR and AND operations. Values
containing blanks must be set in inverted commas.
Example: RejectCondition = Subject = "money"
AND "Content-Type" = "text/html"
"!=" (not equal) operator can also be used when setting a condition.
Moreover, there are two additional types of filtration:
• No HEADER – conditions, suitable for messages without a
certain header
Example: according to the following rule:
RejectCondition = No From
FilterParts = {yes|no}
Yes enables processing of rules specified by the
RejectPartCondition and AcceptPartCondition
parameters.
Default value: no
141
Dr.Web® for Unix mail servers
RejectPartCondition = {set of conditions}
AcceptPartCondition = {set of conditions}
Rules are similar to those of RejectCondition and
AcceptCondition, but they affect also headers of attached
objects. In addition to conditions used in RejectCondition and
AcceptCondition rules, in rules for RejectPartCondition
and AcceptPartCondition you can use the following
condition – FileName = mask, where mask is a regular
expression that complies with POSIX 1003.2 standard. Filtration of
messages according to these rules is possible if yes is set for the
FilterParts parameter (see above).
Default value: not specified
Action = {actions}
Actions applied to filtered objects. When you set the value, you must
specify one main and up to 3 additional values. Main values must be
set first.
142
In case a message is blocked by the header’s filter, SMTP-response
of Dr.Web MailD has 550 5.7.0 error code and a message defined
by the parameters that go further.
UseCustomReply = {yes|no}
In case yes is specified for this parameter, contents of SMTP-
responses are defined by the parameters given below. If no is
specified, default values are used.
Default value: no
143
Dr.Web® for Unix mail servers
probability that the message is not spam. The threshold is set in the
SpamThreshold parameter of the plug-in’s configuration file (if
the score given to a message either equals to the SpamThreshold
parameter value, or is greater, the message is classified as spam).
Once analysis is complete, VadeRetro library adds to it the following
headers:
• X-DRWEB-SCORE: n. n – mark that Vade Retro gives to
a message
• X-DRWEB-STATE: s. s – message classification results
can take 4 values: 0, 1 , 2 and 3:
0 – message is not spam;
1 – message is spam;
2 – message is infected;
3 – message is a notification saying that delivery
failed.
• X-DRWEB-VERSION: version. version – version of
VadeRetro library. This header is added only in case yes is
specified for the AddVersionHeader parameter of the
VadeRetro plug-in's configuration file.
144
names of files can be different from those which are mentioned
below.
If the vaderetro plug-in of any previous versions is already installed
on a computer, you can upgrade it. The upgrade procedure is
described in p. 4.3.2.
145
Dr.Web® for Unix mail servers
2 It sets rights to access directories of the vaderetro plug-
in.
3 It integrates the plug-in with Dr.Web MailD.
146
4. Extract files from archive. A drweb-maild-plugin-
vaderetro-4.44.1-freebsd60 directory with
subdirectories arranged in a tree will be created.
Example:
tar xzf drweb-maild-plugin-vaderetro-4.44.1-
freebsd60.tar.gz
Then, there are 2 modes to install the plug-in: the manual and the
automatic. The installation in the automatic mode is done by the
install.sh installation script located in the drweb-maild-
plugin-vaderetro-4.44.1-freebsd60 directory created
during the unpacking of the anti-spam plug-in. The install.sh
script does the following:
147
Dr.Web® for Unix mail servers
> cp -pR drweb-maild-plugin-
vaderetro-4.44.1-freebsd60/* /
2 Then set access rights to the created directories:
Example:
> chown -R drweb:drweb /usr/local/etc/drweb
> chown -R drweb:drweb /usr/local/drweb
3 Integrate the plug-in with Dr.Web MailD (read p. 4.3.3)
148
1 It copies the directory tree nested in the drweb-
maild-plugin-vaderetro-4.44.1-
solaris10 directory to the root directory.
2 It sets rights to access directories of the vaderetro plug-
in.
3 It integrates the plug-in with Dr.Web MailD.
149
Dr.Web® for Unix mail servers
4.3.2.1. Upgrading for Linux
The vaderetro distribution for Linux is delivered as a tar-archive
(drweb-maild-plugin-vaderetro-4.44.1-
glibc2.3.tar.gz). The vaderetro plug-in for Linux is
upgraded as follows:
1. Copy the distribution of the plug-in onto a computer where
you want to upgrade it.
2. Change the current user of the system to the root user.
For this, execute the su command and input the password
of the root user into the corresponding dialog.
3. Go to the directory with the plug-in distribution.
4. Unpack the archive. The drweb-maild-plugin-
vaderetro-4.44.1-glibc2.3 directory will be
created.
Example :
> tar xzf drweb-maild-plugin-
vaderetro-4.44.1-glibc2.3.tar.gz
5. In the drweb-maild-plugin-
vaderetro-4.44.1-glibc2.3 directory created
during the unpacking of the archive with the plug-in the
install.sh installation script resides. To upgrade, run
this script with the update parameter. Being launched
with this parameter, the install.sh script will perform
the following:
5.1.It copies the directory tree nested in the drweb-
maild-plugin-vaderetro-4.44.1-
glibc2.3 directory to the root directory. The files of
the installed version of the plug-in replace the files of
the already installed plug-in, except for configuration
files. The configuration files of the already installed plug-
in remain unchanged. When configuration files of the
150
new version are created, the .new suffix is added to
their names by the script.
5.2.It sets rights to access directories of the plug-in.
151
Dr.Web® for Unix mail servers
installed version of the plug-in replace all files of the
already installed plug-in, except for configuration files.
The configuration files of the already installed plug-in
remain unchanged. When configuration files of the new
version are created, the .new suffix is added to their
names by the script.
5.2.It sets rights to access directories of the plug-in.
152
with this parameter, the install.sh script will
perform the following:
5.1.It moves the directory tree nested in the drweb-
maild-plugin-vaderetro-4.44.1-
solaris10 directory to the root directory. Files of the
installed version of the plug-in replace all files of the
already installed plug-in, except for configuration files.
The configuration files of the already installed plug-in
remain unchanged. When configuration files of the new
version are created, the .new suffix is added to their
names by the script
5.2.It sets rights to access directories of the plug-in.
153
Dr.Web® for Unix mail servers
4.3.4. Configuring plug-in
All the main parameters concerning operation of the plug-in are set
in the %etc_dir/plugin_vaderetro.conf configuration file.
The structure and principles of description of parameters of the
configuration file are described above (see p. 3.3).
[VadeRetro] section
FullCheck ={yes|no}
The yes value instructs vaderetro to thoroughly check all messages
for spam at the expense of time spent for scanning.
Default value: yes
NoHamFrom = {yes|no}
The yes value instructs vaderetro to ignore messages sent to
system mailboxes domains (mailboxes like [email protected]).
AddVersionHeader = {yes|no}
The yes value instructs vaderetro to add X-DRWEB-VERSION
header with information on VadeRetro version to scanned messages.
Default value: no
CheckForViruses = {yes|no}
The yes value instructs vaderetro to perform heuristic check for
spamming viruses.
Default value:yes
154
CheckDelivery = {yes|no}
The yes value instructs vaderetro to perform check of notifications
saying that delivery failed.
Default value:no
AllowRussian = {yes|no}
In case no is set for this parameter, messages with Cyrillic encoding
are regarded mostly as spam.
Default value: yes
AllowCJK = {yes|no}
In case no is set for this parameter, messages in Chinese/Japanese/
Korean (messages in Unicode) are regarded mostly as spam.
Default value:no
155
Dr.Web® for Unix mail servers
used in the whitelists.
Default value: not specified
156
If the score given to a message exceeds this value or equals to it, the
message is considered to be a spam and action specified in the
Action parameter. The score of the message is compared against
this parameter only if the score of the message is less than the
UnconditionalSpamThreshold parameter value. The value
of this parameter must be either less than the value of the
UnconditionalSpamThreshold, parameter, or be equal to it.
Default value:100
UnconditionalAction = {action}
Actions to be taken for unconditional spam. The notify action
cannot be used.
Default value: pass
Action = {action}
Actions to be taken for spam. The notify action cannot be used.
UseCustomReply = {yes|no}
If yes is set for this parameter, the content of SMTP-responses is set
by the SpamCustomReply parameter. If no is set, standard
responses are used.
157
Dr.Web® for Unix mail servers
Default value: no
SpamCustomReply ={text}
SMTP-response formed in case a message is blocked by the plug-in.
158
5. Integration with mail systems
In this section we’ll deal with peculiarities of integration of Dr.Web
MailD with different mail systems. If Dr.Web MailD was installed
automatically using the install.sh script (read p. 2), in most cases no
additional actions are required to integrate Dr.Web MailD with a mail
system. If it was installed manually, you should set up the mail
system as described in this section.
As there is a variety of mail systems, to make integration simple,
there is a specific distribution file of Dr.Web MailD for each mail
system. This helps to simplify configuration and management of
Dr.Web MailD.
159
Dr.Web® for Unix mail servers
• Specify Enabled for the not yet specified filter in the
content-filter group. In the correspondent fie
• lds set the following values:
• Type the name of the filter (DrWeb Maild) in the field
right from the field where Enabled is specified:
160
you can add the following setting to the rule: Submit
Address not in GROUP*,LIST*,RULES*.
For more detailed information on configuration (in particular,
information on how to enable/disable filtering for any user) consult
documentation which comes with CGP.
161
Dr.Web® for Unix mail servers
Other parameters that affect interaction of Dr.Web MailD with CGP
are included into the [CgpReceiver] and [CgpSender] sections
of the configuration file of Dr.Web MailD and are described below.
The structure and the principles of description of the configuration
file are fully described above, see p. 3.3).
[CgpReceiver]
ProcessingErrors = {actions}
Actions applied to messages in case processing errors occur. Only
one of the main actions (tempfail, discard, pass,
reject) can be specified as a parameter's value.
Default value: reject
162
This parameter sets the owner for messages received
by MailD from CommuniGate Pro.
As drweb-cgp module is started with user name – root; you
must either leave the ChownToUser parameter unspecified starting
maild with user name - root or specify a different user name in the
ChownToUser parameter, which is used to start other maild
segments
Default value: drweb
[CgpSender]
UseSecureHash = {yes|no}
If yes is set for this parameter, the SecureHash header is
added to sent messages.
Default value: no
SecureHash={text}
The parameter sets the content of the SecureHash header (read
description of the UseSecureHash parameter). To increase
security of Dr.Web MailD, the default value of this parameter should
be changed to any other value.
Default value: «PLEASE EDIT - !!! SECURITY CRITICAL
!!!»
163
Dr.Web® for Unix mail servers
Default value: 3
SubmitFilesMode = {permissions}
Permissions assigned to created notifications of cured messages
Default value: 0600
SubmitFilenamesMode = {std|tai|rand48}
A mode that defines the process of naming of files sent to
CommuniGate Pro:
• Std – names of files are created with mkstemp command. the
drweb_submit_XXXXXX template is used where XXXXXX
is a combination of random letters and numbers.
• Tai – names of files are created according to the TAI format.
The %sec.%usec.drweb_submit_XXXXXX template is
used.
164
• Rand48 – names of files are created with the lrand48
command. The drweb_submit_XXXXXXXX template is
used.
Default value: Std
165
Dr.Web® for Unix mail servers
milter module is specified and Sendmail chooses an
appropriate client’s address to establish connection with.
• Via other transport connection drweb-milter module sends
to the drweb-maild module commands and waits for reply.
166
In the sendmail.cf file add the following:
-------------------- cut ------------------
############################
# Input mail filters
############################
O InputMailFilters=drweb-filter
O Milter.LogLevel=6
############################
# Xfilters
############################
Xdrweb-filter, S=__ADDRESS__, F=T,
T=C:1m;S:5m;R:5m;E:1h
------------------- cut -------------------
To enable checking сообщения отправленные локально (via mail
or sendmail), you must change the submit.cf and
submit.mc files in the same way as you have changed the
sendmail.cf file.
Moreover, add the nobodyreturn value to the
PrivacyOptions parameter.
Example:
-------------------- cut ------------------
# privacy flags
O PrivacyOptions=goaway,noetrn,nobodyreturn
-------------------- cut ------------------
Or in {sendmail_src}/cf/cf/feature/msp.m4:
-------------------- cut ------------------
define(`confPRIVACY_FLAGS'
`goaway,noetrn,nobodyreturn,restrictqrun')dnl
-------------------- cut ------------------
167
Dr.Web® for Unix mail servers
README located in the directory storing source texts of the libmilter
library):
Only for Sendmail version 8.11:
------------------- cut -------------------
define(`_FFR_MILTER',1)
INPUT_MAIL_FILTER(`drweb-filter', `S=__ADDRESS__,
F=T, T=S:5m;R:5m;E:1h')
------------------- cut -------------------
For Sendmail version 8.12 and later:
------------------- cut -------------------
INPUT_MAIL_FILTER(`drweb-filter', `S=__ADDRESS__,
F=T, T=C:1m;S:5m;R:5m;E:1h')
define(`confMILTER_LOG_LEVEL',`6')
------------------- cut -------------------
Timeout value should be the same as Sendmail
timeout values "O
Timeout.datablock=XX" (default value is 1
hour, XX=>1h).
168
__ADDRESS__ – line where transport address is
specified. Its format and value are the same as
those ones which are used for the Address
parameter of the [Milter] section of the
configuration file of Dr.Web MailD.
The address can be specified for TCP/IP sockets:
inet:__PORT__@__HOST__
(__PORT__ and __HOST__ must have
specific values, for example,
inet:3001@localhost)
or for UNIX-DOMAIN sockets:
local:__SOCKPATH__
(__SOCKPATH__ must define the path which will
be accessible with the same rights you use to start
the filter, for example:
local:/var/run/drweb-smf.sock)
169
Dr.Web® for Unix mail servers
To assure interaction between drwebd anti-virus
daemon and Dr.Web MailD, it is recommended to
install and run drwebd and Dr.Web MailD on the
same computer (it is not required to install also the
Sendmail system on this computer). In this case for
sending messages between drwebd and Dr.Web
MailD you can use scanning of local files instead of
sockets. For this, privileges under which daemon
and Dr.Web MailD are run must permit accessing
the shared directory. Moreover, privileges under
which drwebd is run must permit accessing
temporary files of drweb-maild module for
reading.
170
add the user with whose privileges drweb-milter module is run
(drweb by default) to the list of trusted-users in the submit.cf
file:
------------------- cut -------------------
#####################
# Trusted users #
#####################
Tdrweb
------------------- cut -------------------
Or add to the submit.mc file
------------------- cut -------------------
define(`confTRUSTED_USERS', `drweb')"
------------------- cut -------------------
171
Dr.Web® for Unix mail servers
5.3.3. Known issues
Description. In case a Unix socket is used for communication
between the filter and Sendmail, Milter API library (distributed with
Sendmail) does not delete (till version 8.12.2) the socket file.
Solution. For version 8.12.x there is
listener-8.12.0-1.patch. For version 8.11 you must
manually delete this file or edit the script which controls the
operation of the filter. This issue is resolved in Sendmail version
8.12.2
Description. When filter is used on computers with a high
computation load, in the mail log the following entries may appear:
"... Milter (drweb-filter): select(read):
interrupted system call"
Solution. This issue is resolved in Sendmail version 8.12.3 (and
later).
Description. When filter is used on computers with a high
computation load in the mail log the following entries may appear:
"... Milter (drweb-filter): select(read): timeout
before data write"
"... Milter (drweb-filter): to error state"
Solution. The Sendmail system cannot establish connection with the
filter within the specified timeout. In version 8.11 the timeout is set
to 5 seconds and cannot be changed. In version 8.12 the timeout can
be changed in the description of the filter (value with C):
Xdrweb-filter, S=__ADDRESS__, F=T,
T=C:1m;S:5m;R:5m;E:1h
172
• In the before-queue mode
(http://www.postfix.org/SMTPD_PROXY_README.html)
• Using the milter protocol
(http://www.postfix.org/MILTER_README.html)
Dr.Web MailD can interact with the Postfix server in the before queue
mode too (but it is not recommended to use this mode in case a
computation load is high)
Details on how to configure this mode can be found at
http://www.postfix.org/SMTPD_PROXY_README.html.
173
Dr.Web® for Unix mail servers
segments depending on the stage of mail session: hello,
mail from:, rcpt to: and so on. Segments are saved by the
drweb-milter module to the temporary files directory.
Via Milter API drweb-milter module sends to the
Postfix system instructions on action with the message.
Milter API is a multihreading library; this allows to process
simultaneously several mail sessions. The Postfix system
acts as a client and and drweb-milter acts as a
server. Therefore, in the main.cf (configuration file of
the Postfix system) address of the drweb-milter
module is specified and Postfix chooses an appropriate
client’s address to establish connection with.
2. Via other transport connection drweb-milter module
sends commands to the drweb-maild module and
waits for reply.
174
where _ADDR_REC_ is the address of the listening drweb-
receiver module (the Address parameter of the [Receiver]
section in the configuration file of Dr.Web MailD) -
for example 127.0.0.1:8025
scan unix - - n -
10 smtp
-o smtp_send_xforward_command=yes
_ADDR_SEN_ inet n - n -
NN smtpd
-o content_filter=
-o
receive_override_options=no_unknown_recipient_
checks,no_header_body_checks
-o smtpd_helo_restrictions=
-o smtpd_client_restrictions=
-o smtpd_sender_restrictions=
-o
smtpd_recipient_restrictions=permit_mynetworks
,reject
-o mynetworks=127.0.0.0/8
-o
smtpd_authorized_xforward_hosts=127.0.0.0/8
--- cut ---
175
Dr.Web® for Unix mail servers
It is recommended that NN value (max. number of
processes executed by the Postfix server) was the
same as the number of threads in the pool of the
drweb-receiver module (the MaxThreads
parameter of the [Receiver] section in the
configuration file of Dr.Web MailD). To disable the
parameter, specify "-" as the NN value.
After all the parameters are specified, restart the Postfix system.
• milter_protocol = 2
required version of the milter protocol;
• milter_mail_macros = _
this parameter allows Dr.Web MailD add to headers the
following - Received: messages IP-address and name of
the host a message arrives from;
• milter_end_of_data_macros = i
this parameter allows to get a message id
177
Dr.Web® for Unix mail servers
and use it along with the information on the message in
drweb-milter’s log.
# drweb-receiver local:/var/drweb/ipc/.agent
15 30 MAIL drweb:drweb
drweb-milter local:/var/drweb/ipc/.agent 15 30
MAIL drweb:drweb
Address = /usr/sbin/sendmail
Method = pipe
MailerName = postfix
178
forwards them to the filter, yes must be specified as the value of
the UseSecureHash parameter of the [Sender] section in the
configuration file of Dr.Web MailD (as well as for the SecureHash
parameter in the same section).
If messages are received by the filter from one Sendmail system,
and sent to another, no must be specified as the value for the
UseSecureHash parameter to keep the value of the
SecureHash header within the system.
179
Dr.Web® for Unix mail servers
5.5.1. Interaction with Exim
All the parameters that affect interaction of Dr.Web MailD with the
Exim mail system are included into the [Receiver] and [Sender]
sections of the configuration file of Dr.Web MailD. Structure and
parameters of the configuration file are described in p. 3.3.
Primary configuration of the Exim mail system is the same for both
connection modes:
First you must add drweb user to the list of trusted users of Exim
system in the MAIN CONFIGURATION SETTINGS section of the
configuration file of Exim system.
--- cut ---
[[##########################################
# MAIN CONFIGURATION SETTINGS #
############################################]]
trusted_users = drweb
--- cut ---
Further configuration depends on the connection
mode you select.
180
# A remote address is passed to each in #
# turn until it is accepted. #
##############################################
--- cut ---
After the line that starts with begin routers add the following:
drweb_router:
driver = accept
condition = "${if eq {$received_protocol}
{drweb-scanned}{0}{1}}"
retry_use_local_part
transport = drweb_transport
Then, in the configuration file of the Exim system find the section
which deals with the description of transports. It starts with the
following header:
181
Dr.Web® for Unix mail servers
--- cut ---
182
for Dr.Web MailD. User name is defined in the EXIM_USER
parameter. By default EXIM_USER= drweb is specified
183
Dr.Web® for Unix mail servers
#drweb-receiver local:/var/drweb/ipc/.agent 15 30
MAIL drweb:drweb
Start Dr.Web MailD and then start the Exim mail system.
For interaction with Dr.Web MailD Qmail version not earlier than 1.03
is required
184
Dr.Web MailD should be installed after Qmail is
terminated to avoid damage of e-mails.
185
Dr.Web® for Unix mail servers
5.6.2. Configuring Dr.Web for mail servers
All the parameters that affect interaction of Dr.Web MailD with the
Qmail are included into the [Qmail] and [Sender] sections of the
configuration file of Dr.Web MailD. Structure andprinciples of
description of the configuration file are described in p 3.3.
(parameters of the [Sender] section are also described there)
[Qmail]
ProcessingTimeout ={time}
Timeout for mail system to wait until a message is processed by the
plug-ins of Dr.Web MailD.
It is recommended to set a greater value for this parameter than that
set for the SendTimeout parameter in the [MailBase] section.
ProcessingErrors = {actions}
Actions applied to messages in case processing errors occur. Only
one of the main actions (tempfail, discard, pass,
reject) can be specified as a parameter's value.
Default value: reject
186
ListenUnixSockets = {addresses}
List of unix-sockets on which drweb-qmail listens for calls to scan
messages from qmail-queue. Sockets specified in the list must
coincide with the files observed by Qmail. The list of files is displayed
on obtaining help using qmail-queue --help command.
Default value:/var/qmail/bin/qmail-queue.original
188
• In the context filter mode at the stage of smtp-connection.
Advantages: possibility to block a message at
the stage of smtp-connection.
Disadvantages: low system efficiency is
possible when computation load is high; only smtp-
traffic is checked.
• In the context filter mode at the routing stage.
Advantages: high computation load is not
important; all messages that pass through ZMailer
(including local and those sent via uucp) are
checked.
Disadvantages: impossible (i.e. reject and
tempfail actions are similar to discard); it is
necessary to use SecureHash header to increase
system efficiency and avoid cycling of messages.
189
Dr.Web® for Unix mail servers
• To install the patch do the following:
$ patch < smtpdata.c.XXX.patch
190
#| elsewhere, and processed at the end of
this function
191
Dr.Web® for Unix mail servers
procedure of installing this patch is the same as for the
smtpdata.c.XXX.patch, which is described in p.5.7.1.
192
• -b [ --basedir ] arg (=/var/drweb) – basic
temporary directory of Dr.Web MailD. This parameter is
similar to the BaseDir parameter of the [General]
section in the configuration file of Dr.Web MailD
• -t [ --timeout ] arg (=30) – timeout for
processing a message
• -file arg – path to file to be processed. It must be
specified only when the program operates in the context
filter mode at the routing stage. For more information see p.
and 5.7.1.2
• -hash arg – value of the SecureHash parameter of
the [Sender] section of the configuration file of the
Dr.Web MailD. It must be specified only in case the program
operates in the context filter mode at the routing stage. For
more information see p. and 5.7.1.2
• -interface arg (=1) – version of smtp server. It
must be specified only in case the program operates in the
context filter mode at the stage of smtp-session (see p. and
5.7.1.1). 0 – for version 2.99.55 and earlier; 1 – for version
2.99.56 and later
• -e [--error-action] arg (=reject) – action
the filter applies to the message in case an inner error
occurs. Possible values: pass, reject, discard,
tempfail
193
Dr.Web® for Unix mail servers
• Set access rights to the drweb-courier module by having
performed the following commands:
>chown COURIER_USER:drweb
"DEFAULT_BIN_PATH/drweb-courier"
>chmod 6771 "DEFAULT_BIN_PATH/drweb-courier",
where COURIER_USER – a user under the rights of which ,
the Courier mail system is run.
Make sure that for all directories and subdirectories in the
/var/drweb/ directory, for the drweb group read, write
and run rights are set.
• Copy the drweb-courier module (or create a symlink) to
the Courier filters directory (by default
/usr/lib/courier/libexec/filters/)
• Register the drweb-courier module in the Courier mail
system as a global one:
/usr/lib/courier/sbin/filterctl start drweb-
courier
Later, to enable filtering execute the following command:
/usr/lib/courier/sbin/filterctl stop
drweb-courier
• Create (edit) the enablefiltering file to set services for
analysis (esmtp or uucp – in case several services are set
blanks are used as a delimiter).
• Make sure that the values of the BaseDir and SocketDirs
parameters of the [Courier] section in the
maild_courier.conf file correspond to the parameters of
the Courier mail system.
For additional information see man courierfilter
194
5.8.2. Configuring Dr.Web for mail servers
All the parameters that affect interaction of Dr.Web MailD with the
Courier system are included into the [Courier] and [Sender]
sections of the configuration file of Dr.Web MailD. The structure and
principles of description of the configuration file are described above,
see p. 3.3 (description of the [Sender] section can also be found
here.
[Courier] section
ProcessingTimeout ={time}
Timeout for mail system to wait until a message is processed by the
plug-ins of Dr.Web MailD. It is recommended to set a greater value
for this parameter than that set for the SendTimeout parameter in
the [MailBase] section.
ProcessingErrors = {actions}
Actions applied to messages in case processing errors occur. Only
one of the main actions (tempfail, discard, pass,
reject) can be specified as a parameter's value.
Default value: reject
195
Dr.Web® for Unix mail servers
Maximum number of threads in the pool that process message scan
results.
Default value: 3
SocketAccess = {permissions}
Permissions are assigned to sockets through which Dr.Web MailD
interacts with Courier mail system.
On restarting the program via HUP signal, this parameter cannot be
changed.
Default value: 0660
196
6. Contact information
Dr.Web for mail servers is being constantly improved. The latest
information on its updates and news are available on the web site:
http://www.drweb.com
Sales department:
http://buy.drweb.com
e-mail: [email protected]
WWW: http://buy.drweb.com
e-mail: [email protected]
Technical support service:
http://support.drweb.com
e-mail: [email protected]
When addressing our technical support the following information will
be greatly appreciated. It will help us to examine the case
thoroughly:
• full name and version of the unix distribution file
• Dr.Web program version
• versions of applications and filters the Dr.Web Daemon is
integrated with
• configuration files of the daemon and the applications the
Dr.Web Daemon is integrated with
• log files: daemon, filters and other applications the Dr.Web
Daemon is integrated with
197
Dr.Web® for Unix mail servers
198
• users_conf_to_rules.pl – to mover all information
from the users.conf configuration file to Dr.Web MailD
rules.
• viruses_conf_to_rules.pl – to mover all
information from the viruses.conf configuration file to
Dr.Web MailD rules.
• filter_conf_to_maild.pl – to move all possible
settings of the mail filter from the drweb32.ini
configuration file and from the configuration file of the mail
filter to Dr.Web MailD configuration files (including
configuration files of the drweb and headersfilter plug-ins, if
they are installed).
199