Connecting to Exim Using local_scan Function

Внимание!

Working with Dr.Web MailD  in this mode requires Exim mail system version 4.50 or later.

Note that the steps describe how to configure connection using the local_scan function assuming that the Exim configuration file was not changed; that is, the file does not contain adjustments for using special transport, described in the previous section. Thus, if the file was previously preconfigured for that purpose, it is required to revert the Exim configuration file to its initial state by removing settings for the router and transport.

Preparation of the system has several stages. First, you must recompile Exim with support of the local_scan function:

Copy %bin_dir/doc/maild/local_scan/local_scan.c file to exim*/Local/ directory.

To Makefile of Exim system, which is located in exim*/Local/ directory, add parameters specified in %bin_dir/doc/maild/local_scan/Makefile.sample. If the corresponding parameters are already specified in Makefile, you can uncomment and edit them.

In Makefile of Exim system you must also specify the name of a user whose privileges are used to start Exim (the name must be the same as specified for Dr.Web MailD). User name is defined by the EXIM_USER parameter. By default, EXIM_USER = drweb.

Compile and install Exim system. If the execution of make or make install commands is interrupted with error messages like:

/libexec/ld-elf.so.1: Shared object "libgcc_s.so.1" not found, required by "libboost_thread.so"

then there are two possible ways to fix it:

ocopy libstdc++.so.6 and libgcc_s.so.1 libraries (or make links with the same name to them) from %bin_dir/lib/ to the system library directory.

oexecute the following command from the console:

$ export LD_LIBRARY_PATH=%bin_dir/lib/:$LD_LIBRARY_PATH

and then compile and install Exim once again from the console.

After that, configure Exim system. For quick configuration you may use values of parameters from %bin_dir/doc/maild/local_scan/configure.sample file. Just copy the necessary lines to the local_scan section of the Exim configuration file.

To retrieve information on the Receiver settings, execute the following command from the console:

$ PATH_TO_BIN_DIR/exim -bP local_scan

where PATH_TO_BIN_DIR is the path to the Exim binaries.

In the Exim configure file, the following additional parameters can be set:

DrwebTimeout = {time}

Period during which Exim is waiting for drweb-maild to scan a message.

It is recommended to set a greater value than the one of the SendTimeout parameter in the [MailBase] section.

Default value:

DrwebTimeout = 60s

DrwebBaseDir = {logical}

Dr.Web MailD base directory where sockets, database etc. are stored

Default value:

DrwebBaseDir = %var_dir/

DrwebProcessingError = {action}

This parameter defines what action is to be applied to messages which caused scanning errors (for example, if the anti-virus plug-in runs short of memory or cannot connect to drweb-maild).

Allowed actions:

pass, discard, reject, tempfail

If the parameter value is not set or several values are mistakenly specified (for example, discard and pass) – tempfail value is used by default.

Default value:

DrwebProcessingError = tempfail

DrwebLogLevel = {log level}

Log verbosity level.

The following levels are allowed:

Quiet

Error

Alert

Info

Debug

Default value:

DrwebLogLevel = Debug

DrwebIpcLevel = {log level}

IPC library log verbosity level.

The following levels are allowed:

Quiet

Error

Alert

Info

Debug

Default value:

DrwebLogLevel = Debug

DrwebSyslogFacility = {syslog label}

Type of facility which generates a notification message on event when using syslog system service.

Default value:

DrwebSyslogFacility = Daemon

DrwebMaxSize = {size}

Maximum size of a checked message.

When 0 is specified, size is not limited.

Default value:

DrwebMaxSize = 200 k