

                  ООО "Доктор Веб"

              Демон Dr.Web(R) для FreeBSD
              Руководство администратора

                    Версия 4.33

===================================================================
Материалы, приведенные в данном документе, являются собственностью
ООО "Доктор Веб" и не могут быть использованы ни в каких публикациях
без письменного разрешения ООО "Доктор Веб" и ссылки на источник.

Dr.Web - зарегистрированный товарный знак ООО "Доктор Веб"

Остальные упоминаемые названия продуктов являются товарными знаками
или зарегистрированными товарными знаками соответствующих фирм.

В программное обеспечение могут вноситься изменения, не отраженные в
данной документации. Исправленные и дополненные редакции документа
оперативно размещаются на веб-сайте www.drweb.com.
===================================================================

(C) ООО "Доктор Веб", 2005
Россия, Москва - Санкт-Петербург
http://www.drweb.com/


          СОДЕРЖАНИЕ

1. ВВЕДЕНИЕ
  1.1. О чем эта документация
  1.2. Что такое Dr.Web(R) Daemon для Unix?
  1.3. Требования Dr.Web(R) к ОС и компьютеру
2. УСТАНОВКА ПРОГРАММЫ Dr.Web(R)
  2.1. Установка Dr.Web(R) для FreeBSD
  2.2. Регистрация пакета. Лицензионный ключевой файл
  2.3. Обновление программы и вирусной базы данных
3. ИСПОЛЬЗОВАНИЕ ДЕМОНА Dr.Web(R)
  3.1. Расположение файлов пакета
  3.2. Опции командной строки для Dr.Web(R) Daemon
  3.3. Настройка Dr.Web(R) Daemon
  3.4. Запуск Dr.Web(R) Daemon
  3.5. Проверка работоспособности Dr.Web(R) Daemon
  3.6. Режимы проверки, реализуемые Dr.Web(R) Daemon 
       (локальное сканирование)
4. КОНТАКТЫ



                         1. ВВЕДЕНИЕ

1.1. О чем эта документация

В настоящей документации представлено описание антивирусной программы
Dr.Web для Unix-подобных систем - Linux, FreeBSD, SunOS Solaris и
OpenBSD.

Руководство адресовано лицу, отвечающему за антивирусную безопасность
(администратору антивирусной безопасности), называемому в данном
руководстве просто администратором.

Следует заметить, что проблема борьбы с вирусами в Unix-подобных
операционных системах (далее - Unix-системах) имеет два аспекта.
Первый - это локальная защита системы и пользовательских данных от
деструктивного воздействия программ-вирусов. Второй аспект - это
диагностика и обезвреживание вирусов при использовании Unix-систем в
качестве платформы коммуникационных служб, в первую очередь - почтовых
серверов, файловых серверов локальных сетей и т.д. Причем, вирусы эти
могут быть (и в большинстве случаев являются) отнюдь не специфичными
для Unix-систем - через локальные сети и почтовые службы будут
распространяться обычные Windows-вирусы, в том числе и макровирусы для
Word, Excel и других офисных приложений.

Антивирусная программа Dr.Web для Unix-систем выполняет обе функции. С
одной стороны - это сканер Dr.Web для обнаружения и лечения вирусов на
локальной машине. С другой - в комплект входит резидентный компонент
(демон) Dr.Web Daemon (drwebd), который может использоваться
практически в любых схемах обработки данных в качестве подключаемого
внешнего антивирусного фильтра. Например, почтовые системы (такие как
Communigate Pro, Sendmail, Postfix, Exim, QMaill, ZMailer и др.) могут
быть достаточно легко и гибко настроены на использование Dr.Web Daemon
для проверки проходящих через почтовый сервер сообщений e-mail.

Первый аспект (сканер) описан в отдельном руководстве
(readme.scanner.rus).

В настоящем руководстве будет рассмотрен второй аспект использования
программы Dr.Web в Unix-системах, а именно использование демона. Здесь
мы остановимся на следующих моментах:

- общая характеристика программы, различия между ее версиями (глава 1);
- установка программы из пакетов различных форматов (глава 2);
- настройка и использование антивирусного демона (глава 3).

Что же касается отдельных фильтров для работы с конкретными почтовыми
и файловыми системами, то они описаны в отдельных руководствах,
включенных в дистрибутивы с этими фильтрами.

В заключение приведена информация для контактов со службой технической
поддержки.

Следует сказать, что программа Dr.Web находится в постоянном развитии.
Обновления базы данных известных вирусов выходят ежедневно (как
правило, несколько раз в день). Периодически появляются новые версии
самой программы. Изменения в программе касаются как совершенствования
приемов диагностики и борьбы с вирусами, так и средств интеграции с
другими приложениями Unix-систем. Кроме того, постоянно расширяется
круг приложений, способных работать совместно с Dr.Web. Поэтому не
исключено, что некоторые детали настройки и использования текущей
версии будут отличаться от описанных в настоящем руководстве. Для
получения наиболее актуальной информации о программе следует
обратиться к файлам электронной документации, входящим в комплект
поставки, которые будут упомянуты в разделе 3.1.


1.2. Что такое Dr.Web(R) Daemon для Unix?

Dr.Web Daemon - это постоянно загруженный антивирусный модуль, который
позволяет, по запросу от программ-фильтров, проверять файлы на диске
или данные, переданные по сокету. Запрос осуществляется по
специальному протоколу через unix- или tcp-сокеты. В остальном Dr.Web
Daemon обладает такими же возможностями, что и другие продукты
семейства Dr.Web:

- использует то же ядро и вирусную базу, что и все сканеры семейства;
- способен обнаруживать и лечить все известные вирусы;
- проверяет упакованные файлы и архивы.

Кроме того, в Dr.Web Daemon имеются возможности по фильтрации почты на
основе анализа заголовков.

То, что демон всегда готов к выполнению своих функций и имеет понятный
и доступный протокол для запросов сканирования, делает его подходящим
компонентом для создания антивирусных фильтров для почтовых систем и
файловых серверов. Разработчики Dr.Web предлагают готовые решения по
интеграции Dr.Web Daemon с почтовыми системами CommuniGate Pro,
Courier-MTA, Exim, Mobico MIO Server, Postfix, QMail, Sendmail,
ZMailer, c файловыми серверами Samba и приложениями, использующими
icap-протокол (прокси-серверами Squid и Shweby). Однако, кроме
перечисленных выше, самых значимых на сегодня, могут быть и другие
области применения Dr.Web Daemon.


1.3. Требования Dr.Web(R) к ОС и компьютеру

'
Программа Dr.Web для FreeBSD работает с FreeBSD версий 3.xdnl close if_freebsd

С точки зрения аппаратного обеспечения требования Dr.Web совпадают с
требованиями консольного (текстового) режима ОС FreeBSD. Для установки
программы (сканера и демона) требуется около 2,5 Мбайт дискового
пространства.



                 2. УСТАНОВКА ПРОГРАММЫ Dr.Web(R)

Замечание: Наименование файлов дистрибутива, а также промежуточных
каталогов, создающихся в процессе установки, зависит от версии
антивируса, а также версии ОС.


2.1.    Установка Dr.Web(R) для FreeBSD


Замечание. В нижеприведенных примерах, для определенности, описывается
установка антивируса версии 4.33 для FreeBSD версии 4.x. В других
случаях наименования файлов и каталогов будут, соответственно,
другими.

Дистрибутив Dr.Web для этой ОС распространяется в двух форматах:

- в виде bsd пакета drweb-4.33-freebsd4.tgz, ориентированного на
  использование системы управления пакетами FreeBSD;
- в виде tarball-архива (drweb-4.33-freebsd4.tar.gz), для ручной
  установки.

Для установки из пакета используйте следующую команду:

> pkg_add drweb-4.33-freebsd4.tgz

При установке из tarball-архива распакуйте архив. При этом будет
создан каталог drweb-4.33-freebsd4, внутри которого будет дерево
каталогов, которое надо перенести в корень диска (вы также можете
задать собственную структуру каталогов, но при этом необходимо будет
соответствующим образом отредактировать конфигурационный файл
программы, см. п.3.2).

Пример:

> tar xzf drweb-4.33-freebsd4.tar.gz
> cp -pR drweb-4.33-freebsd4/* /

Далее, создайте служебного пользователя drweb и установите права для
созданных каталогов:

> chown -R drweb:drweb /usr/local/drweb/lib
> chown -R drweb:drweb /var/drweb


2.2. Регистрация пакета. Лицензионный ключевой файл

Права пользователя на использование антивируса регулируются при помощи
специального файла, называемого ключевым файлом. В ключевом файле
содержится, в частности, следующая информация:

- перечень компонентов, которые разрешено использовать данному
  пользователю;
- разрешенные версии антивируса;
- период, в течение которого разрешено использование антивируса;
- период, в течение которого разрешено автоматическое обновление
  (срок подписки может не совпадать со сроком использования);
- другие ограничения (в частности, количество компьютеров, на
  которых разрешено использовать антивирус).

Ключевой файл имеет расширение key и при работе программ по умолчанию
должен находиться в каталоге установки.

Внимание! Ключевой файл имеет формат, защищенный от редактирования при
помощи механизма электронной подписи. Редактирование файла делает его
недействительным. Поэтому не следует открывать ключевой файл в
текстовых редакторах во избежание его случайной порчи.

Коммерческие пользователи, приобретающие Dr.Web у законных поставщиков
продукта, получают лицензионный ключевой файл. Параметры этого
ключевого файла, регулирующие права пользователя, установлены в
соответствии с пользовательским договором. В такой файл также
заносится информация о пользователе и продавце антивируса.

Для целей ознакомления с антивирусом может быть получен
демонстрационный ключевый файл. Такие ключевые файлы обеспечивают
полную функциональность основных антивирусных компонентов, но имеют
ограниченный срок действия и не предполагают оказание поддержки
пользователю.

Ключевой файл может поставляться в виде файла c расширением key или в
виде zip-архива, содержащего этот файл.

Ключевой файл может быть получен пользователем одним из следующих
способов.

- Передан или переслан по электронной почте в виде zip-архива,
  содержащего файл с расширением key (обычно после регистрации на
  веб-сайте, см. ниже). Извлеките файл при помощи архиватора данного
  формата и поместите его в каталог /usr/local/drweb.
- Включен в состав дистрибутива продукта, при его комплектации.
- Передан на отдельном носителе в виде файла с расширением key. В
  этом случае его необходимо скопировать в каталог /usr/local/drweb.

Лицензионный ключевой файл высылается пользователям по электронной
почте, как правило, после регистрации на специальном веб-сайте (адрес
сайта регистрации указан в регистрационной карточке, прилагаемой к
продукту). Зайдите на указанный сайт, заполните форму со сведениями о
покупателе и введите в указанное поле регистрационный серийный номер
(находится на регистрационной карточке). Ключевой файл будет выслан по
указанному вами адресу.

Следует иметь в виду, что ключевой файл может быть различным для демона
и для сканера. Соответственно при необходимости следует изменить 
настройки параметра Key в секции [Daemon] файла drweb32.ini (см. п.3.2).
Например, 

Key = /usr/local/drweb/drweb32.key

Начиная с версии 4.33 демону можно указать несколько ключевых файлов, 
например так:
Key = /usr/local/drweb/drwebFS.key
Key = /usr/local/drweb/drwebMS.key
Key = /usr/local/drweb/drwebGW.key

В таком случае демон будет пытаться загрузить все лицензиии и объединить их
в сторону увеличения. Например если указаны два ключа один на 15 адресов, а 
другой на 100, то суммарная лицензия будет на 115 адресов, или одна лицензия
для файловых серверов, а другая для почтовых - суммарная будет включать обе.
Важно: Нельзя смешивать "адресные" лицензии и "трафиковые".

Если для всех ключевых файлов, указанных в параметре Key секции [Daemon], 
истек срок, заблокированы, не удается прочитать (неверный путь, нет прав), 

или невалидны, то демон завершает свою работу.

Если до истечения срока действия ключевого файла осталось менее двух
недель, сканер выдает сообщение об этом. Демон в этой ситуации может
извещать пользователя по электронной почте. Сообщения посылаются для
каждого установленного ключевого файла при каждом запуске, перезапуске
или перезагрузке демона, если до истечения срока осталось менее двух
недель. Для того чтобы воспользоваться этой возможностью, следует
настроить параметр MailCommand в секции [Daemon] файла drweb32.ini
(см. п. 5.3).


2.3. Обновление программы и вирусной базы данных

Как и любой антивирусный пакет, программа Dr.Web нуждается в
регулярном обновлении базы данных известных вирусов.

Для автоматизации получения и установки дополнений вирусной базы
следует использовать специальный скрипт из каталога, содержащего
исполняемые файлы:

> /usr/local/drweb/update.pl

Подробно о настройках и использовании этого скрипта см. отдельное
руководство (readme.update.rus).



           3. ИСПОЛЬЗОВАНИЕ ДЕМОНА Dr.Web(R)

В этом разделе будет рассмотрено расположение файлов программы Dr.Web,
структура конфигурационного файла, настройка и использование демона.


3.1. Расположение файлов пакета

Программа Dr.Web по умолчанию устанавливается в каталоги
/usr/local/drweb, /usr/local/etc/drweb и /var/drweb. 
В этих каталогах создается структура подкаталогов, описываемая ниже.

В каталоге /usr/local/drweb размещаются исполняемые модули программы -
сканер (drweb) и демон (drwebd).

В его подкаталоге lib - антивирусное ядро как подгружаемая библиотека
(drweb32.dll).

База данных известных вирусов - /var/drweb/bases/drwebase.vdb.

Конфигурационный файл - /usr/local/etc/drweb/drweb32.ini.

Файлы языковых ресурсов (например, для работы с русскоязычным
интерфейсом) - /usr/local/drweb/lib/ru_daemon.dwl.

Документация - в подкаталоге /usr/local/drweb/doc. Вся документация по
программе представлена в виде обычных текстовых файлов и присутствует
в двух вариантах - англоязычном и русскоязычном (в кодировке KOI8-R).

В подкаталоге /usr/local/drweb/update находится perl-скрипт для
обновления программы (update.pl).

Подкаталог /var/drweb/infected предназначен для перемещения в
него файлов в тех случаях, когда такая реакция программы на
обнаружение зараженных или подозрительных файлов задана в настройках
программы.

3.2. Опции командной строки для Dr.Web(R) Daemon

Как и для любой Unix-программы, для демона Dr.Web предусматриваются
опции командной строки. Они отделяются от указания пути пробелом и 
предваряются символом - (дефис). Полный список опций можно
получить, запустив программу drweb со следующими опциями: 
-? или -help.

-ini=<файл> - использование альтернативного ini-файла;

-lng=<файл> - использование альтернативного файла языка; если во время
установки был выбран английский язык интерфейса, то для вывода сообщений
на русском языке в качестве такого файла следует указать ru_daemon.dwl.


3.3. Настройка Dr.Web(R) Daemon

Можно запустить демон с настройками по умолчанию, но лучше все же
настроить его для соответствия вашим требованиям и условиям
эксплуатации. Файл drweb32.ini читается Dr.Web Daemon из каталога
/usr/local/etc/drweb. Для использования другого файла конфигурации полный
путь к нему необходимо указать ключом командной строки при запуске
Dr.Web Daemon, например:

> $ /usr/local/drweb/drwebd -ini=/usr/local/drweb/drwebd.ini

Конфигурационный файл представляет собой текстовый файл, (что позволяет
редактировать его удобным вам редактором), построенный по следующему 
принципу:

--- начало файла ---
[Имя секции 1]
Параметр1 = значение1, ..., значениеK
.....
ПараметрM = значение1, ..., значениеK

......

[Имя секции X]
Параметр1 = значение1, ..., значениеK
.....
ПараметрY = значение1, ..., значениеK
--- конец файла ---

Если строка начинается с символов ";" или "#", она считается строкой
комментариев - такие строки пропускаются демоном при чтении параметров
из ini-файла.

Если какой-либо параметр демона не задан, то это не означает, что у
параметра нет значения, - оно будет взято по умолчанию (частая ошибка
при настройке). Лишь некоторые параметры являются необязательными или
не имеют значений по умолчанию, о чем будет специально сказано.
Значения могут быть заключены в кавычки (и должны быть заключены в
кавычки, если содержат пробелы). Некоторые параметры могут иметь
несколько значений, разделителем является "," (запятая), при описании
параметра это будет сказано явно. Если в поле значения параметра в
данном описании значения заключены в {}, то параметр может принимать
только одно из этих значений.

Настройки для демона находятся в секции [Daemon] этого файла.

Параметры будут описываться следующим образом:

ИмяПараметра = ПсевдоЗначениеПараметра
        Описание параметра
        {Может ли иметь несколько значений}
        Значение по умолчанию: 
                {значение | отсутствует}

Описание параметров в порядке их следования в файле конфигурации,
создаваемом при установке программы:

EnginePath = {путь к файлу, обычное расширение - dll}
        Расположение модуля drweb32.dll (поисковый модуль). Этот
        параметр также используется модулем обновления для обновления
        поискового модуля.
        Значение по умолчанию: 
                /usr/local/drweb/lib/drweb32.dll

VirusBase = {список путей (масок) к файлам, обычное расширение - vdb}
        Маски для подключаемых вирусных баз. Этот параметр также
        используется модулем обновления для обновления баз антивируса.
        Допустимо перечисление нескольких масок.
        Значение по умолчанию: 
                /var/drweb/bases

UpdatePath = {каталог}
        Этот параметр используется модулем обновления программы
        (update.pl) и при его использовании должен быть задан
        обязательно.
        Значение по умолчанию: 
                отсутствует

TempPath = {каталог}
        Этот каталог используется антивирусным модулем (поисковым
        движком) для создания временных файлов. При нормальной работе
        этот каталог практически не используется, он используется, для
        распаковки некоторых видов архивов или когда в системе не
        хватает памяти.
        Значение по умолчанию: 
                пусто (используется /tmp)

LngFileName = {путь к файлу языковых ресурсов, обычное расширение - dwl}
        Расположение файла локализации.
        Значение по умолчанию: 
                пусто (в этом случае все сообщения выводятся на английском)

Key = {путь к файлу, обычное расширение - key}
        Расположение ключевого файла (лицензионного или демонстрационного).
        Значение по умолчанию: 
                /usr/local/drweb/drweb32.key

MailAddressesList = {путь к файлу}
        Этот параметр используется только в том случае
OutputMode = {Terminal | Quiet}
        Режим вывода информации при старте: Terminal - на консоль,
        Quiet - отменяет вывод.
        Значение по умолчанию: 
                Terminal

RunForeground = {Yes | No}
        Значение параметра Yes запрещает Dr.Web Daemon переходить в
        режим демона, т.е. становиться фоновым процессом без
        управляющего терминала. Эта возможность может быть
        использована некоторыми средствами мониторинга (например,
        daemontools).
        Значение по умолчанию: 
                No

User = {имя пользователя}
        Пользователь, с привилегиями которого работает демон.
        Рекомендуется завести в системе специального пользователя
        drweb, который потом и будет использоваться демоном и
        некоторыми фильтрами. Использовать Dr.Web Daemon с
        привилегиями root нежелательно, хотя такое решение значительно
        проще настраивается (особенно в случае с Samba-серверами).
        Замечание. Значение этого параметра не изменяется во время
        процедуры перечитывания конфигурации "на лету" (обработки
        сигнала SIGHUP).
        Значение по умолчанию: 
                пусто (это означает, что демон будет использовать
                привилегии того пользователя, которым был запущен)

UserID = {числовой ID}
GroupID = {числовой ID}
        ID группы и пользователя, с чьими привилегиями будет работать
        демон. Параметры игнорируются, если задан параметр User.
        Замечание. Значение этих параметров не изменяется во время
        процедуры перечитывания конфигурации "на лету" (обработки
        сигнала SIGHUP).
        Значение по умолчанию: 
                пусто

PidFile = {путь к файлу}
        Имя файла, в который при старте демона будет записана
        информация о его PID и сокете (если параметр Socket задает
        использование unix-сокета) или номер порта (если параметр
        Socket задает использование tcp-сокета).
        Если задано более одного параметра Socket, то в данном файле
        будет присутствовать информация обо всех заданных сокетах (по
        одному в строке).
        Значение по умолчанию: 
                /var/drweb/drwebd.pid

BusyFile = {путь к файлу}
        Имя файла занятости демона: создается сканирующей "копией"
        демона при получении команды и уничтожается после передачи
        результата ее выполнения. Имя файла, создаваемого каждой
        "копией" демона, дополняется точкой и ASCIIZ представлением
        PID (например, /var/run/drwebd.bsy.123456).
        Значение по умолчанию: 
                пусто (файл не создается)

MaxChildren = {значение}
        Устанавливает значение для максимального количества
        создаваемых дочерних сканирующих процессов. Основной процесс
        не занимается сканированием, соответственно, максимальное
        количество процессов демона в системе будет на один больше.
        Рекомендуемое значение - от 3 до 16 процессов на процессор.
        Значение по умолчанию: 
                16

PreFork = {Yes | No}
        Устанавливает тип создания дочерних процессов. Если параметр
        имеет значение No, то в этом случае новый дочерний процесс
        порождается для каждого сканируемого объекта. Если параметр
        имеет значение Yes, то в этом случае Dr.Web Daemon создаст
        количество дочерних процессов равное значению параметра
        MaxChildren (см. выше) сразу же после старта. PreFork режим
        обладает более высокой производительностью, но требует больше
        памяти (так как дочерние процессы загружены всегда). 
        Замечание. Значение этого параметра не изменяется во время
        процедуры перечитывания конфигурации "на лету" (обработки
        сигнала SIGHUP).
        Значение по умолчанию: 
                No

MailCommand = {команда}

        Команда, использующаяся демоном и апдейтером для посылки 
        уведомлений пользователю (администратору) по электронной почте.
        Демон использует этот механизм при каждом запуске (перезапуске,
        перезагрузке), если до истечения срока действия ключевого файла
        (одного из ключевых файлов) осталось менее 14 дней. На 
        стандартный поток входа команды демон подает собственно 
        сообщение. Апдейтер использует этот механизм для рассылки 
        пользователям информационных материалов, подготовленных
         компанией "Доктор Веб", в том числе, по вопросам, связанным с
        обновлениями файлов программы. Пример:
        MailCommand = "/usr/sbin/sendmail -i -bm -f drweb -- root"
        Значение по умолчанию: 
                пусто.

FileTimeout = {значение в секундах}
        Максимальное время проверки одного файла.
        Значение по умолчанию: 
                30

StopOnFirstInfected = {Yes | No}
        Прекращать ли проверку письма после первого обнаруженного
        вируса. Установка значения Yes может резко сократить нагрузку
        на почтовый сервер и время проверки писем.
        Значение по умолчанию: 
                No

ScanPriority = {значение}
        Приоритет сканирующих процессов демона. Значение параметра
        должно быть в диапазоне от -20 (высший приоритет) до 20
        (низший приоритет).
        Значение по умолчанию: 
                0

FilesTypes = {список расширений}
        Типы файлов, которые будут проверяться при сканировании <по
        типу>, т.е. когда параметр ScanFiles (см. ниже) имеет значение
        ByType. Допускаются символы "*" и "?". Допускается несколько
        строк с таким именем параметра; в этом случае задаваемые
        списки суммируются.
        Значение по умолчанию: 
                EXE, COM, SYS, OV?, BAT, BIN, DRV, PRG, BOO, SCR, CMD,
                VXD, 386, DLL, FON, DO?, XL?, WIZ, RTF, CL*, HT*, VB*,
                JS*, INF, AR?, ZIP, R??, PP?, OBJ, LIB, HLP, MD?, INI,
                MBR, IMG, CSC, CPL, MBP, SHS, SHB, PIF, SO, CHM, REG,
                XML, PRC, ASP, LSP, MSO, OBD, THE*, NWS, SWF, BMP,
                MPP, OCX, DVB, CPY, MSG, EML

ScanFiles = {All | ByType }
        Дополнительное ограничение на файлы, подлежащие проверке. При
        задании ByType учитываются так называемые расширения файлов
        (т.е. самый последний суффикс после "." в имени файла; если
        "." отсутствует, у файла отсутствует расширение), значения
        которых заданы или по умолчанию, или в параметре (параметрах)
        FilesTypes.
        ВНИМАНИЕ! Внутри почтовых файлов всегда действует режим All.
        Значение ByType может быть использовано только в
        режимах "локального" сканирования.
        Значение по умолчанию: 
                All

CheckArchives = {Yes | No}
        Производить ли распаковку архивов форматов ZIP (WinZip,
        InfoZIP...), RAR, ARJ, TAR, GZIP и CAB.
        Значение по умолчанию: 
                Yes

CheckEMailFiles = {Yes | No}
        Производить ли проверку файлов в почтовых (e-mail) форматах.
        Значение по умолчанию: 
                Yes

ExcludePaths = {список путей (масок) для исключения их проверки}
        Маски для файлов, которые не должны проверяться.
        Значение по умолчанию: 
                пусто

FollowLinks = {Yes | No}
        Следовать ли символическим ссылкам при сканировании.
        Значение по умолчанию: 
                No

RenameFilesTo = {маска}
        Маска для переименования файлов, если для данной ситуации
        (инфицированный файл или подозрительный файл) задано действие
        Rename.
        Значение по умолчанию: 
                "#??" - это означает, что первая буква "расширения"
                файла будет заменена на "#", а две следующие буквы
                сохранены. Если файл не имел "расширения", то оно
                будет состоять из одного символа "#".

MoveFilesTo = {каталог}
        Каталог для перемещения файлов. Этот параметр используется
        только при интеграции демона и on-access сторожа для Samba.
        Значение по умолчанию: 
                /var/drweb/infected

BackupFilesTo = {каталог}
        Этот каталог используется для сохранения инфицированных
        файлов, которые были вылечены.
        Значение по умолчанию: 
                пусто (т.е. копия не создается).

LogFileName = {имя файла}
        Имя файла отчета. Можно в качестве имени указать "syslog", при
        этом отчет будет вестись средствами системного сервиса
        syslogd. При использовании syslog обратите внимание на
        параметры SyslogFacility и SyslogPriority (см. ниже). Так как
        syslog имеет несколько файлов для протоколирования разных
        событий и разных степеней их важности, то основываясь на этих
        двух параметрах и содержимом конфигурационного файла syslog
        (обычно /etc/syslogd.conf), можно определить, куда будет
        писаться отчет программы.
        Значение по умолчанию: 
                syslog

SyslogFacility = {Daemon | Local0 .. Local7 | Kern | User | Mail}
        Тип записи при использовании системного сервиса syslogd.
        Значение по умолчанию: 
                User

SyslogPriority = {Alert | Warning | Notice | Info | Error}
        Приоритет записи при использовании системного сервиса syslogd.
        Значение по умолчанию: 
                Info

LimitLog = {Yes | No}
        Параметр указывает, надо ли ограничивать размер файла отчета.
        Значение по умолчанию: 
                No

MaxLogSize = {значение в Кб}
        Этот параметр задает максимальный размер файла отчета. Имеет
        смысл, только если LimitLog = Yes.
        Значение по умолчанию: 
                512

LogScanned = {Yes | No}
        Выводить ли в файл отчета информацию обо всех проверяемых
        объектах, независимо от того, обнаружены вирусы или нет.
        Значение по умолчанию: 
                No

LogInfected = { Yes | No }
        Выводить ли в файл отчета информацию об инфицированных объектах.
        Значение по умолчанию: 
                Yes

LogPacked = {Yes | No}
        Выводить ли в файл отчета дополнительную информацию о файлах,
        упакованных утилитами DIET, PKLITE и т. п.
        Значение по умолчанию: 
                Yes

LogArchived = {Yes | No}
        Выводить ли в файл отчета дополнительную информацию об архиваторах.
        Значение по умолчанию: 
                Yes

LogTime = {Yes | No}
        Выводить ли в файл отчета время каждой записи. Параметр не
        имеет смысла, если в параметре LogFileName указано значение
        "syslog".
        Значение по умолчанию: 
                Yes

LogProcessInfo = {Yes | No}
        Выводить ли в файл отчета перед каждой записью данные об pid
        сканирующего процесса и адрес фильтра (имя хоста или IP), с
        которого инициирована проверка.
        Значение по умолчанию: 
                Yes

RecodeNonprintable = {Yes | No}
        Режим вывода в файл отчета символов, не являющихся
        отображаемыми для данного терминала.
        Значение по умолчанию: 
                Yes

RecodeMode = {Replace | QuotedPrintable}
        Если значение RecodeNonprintable равно Yes, то задает метод
        перекодирования неотображаемых символов. Если значение равно
        Replace, то все такие символы заменяются на значение параметра
        RecodeChar (см. ниже).
        Значение по умолчанию: 
                Replace

RecodeChar = {"?" | "_" | ...}
        Если значение RecodeMode равно Replace, то задает символ, на
        который будут заменены все неотображаемые символы.
        Значение по умолчанию: 
                "_"

Socket = {ПОРТ [интерфейсы] | ФАЙЛ [доступ]}
        Описание сокета, который будет использован для коммуникации с
        демоном. Первая форма описывает tcp-сокет: параметр "ПОРТ" -
        десятичный номер порта, "интерфейсы" - список имен интерфейсов
        или IP-адресов, на которых демон будет принимать запросы.
        Пример:
        Socket = 3000 127.0.0.1, 192.168.0.100
        Вторая форма описывает unix-сокет, "ФАЙЛ" - имя сокета,
        "доступ" - восьмеричное значение прав доступа к нему.
        Пример:
        Socket = /var/drweb/.drwebd 0660
        Количество ключей "Socket ..." не ограничено, демон будет 
        работать со всеми из описанных сокетов.
        Значение по умолчанию: 
                3000 127.0.0.1

SocketTimeout = {значение в секундах}
        Время, отведенное для приема/передачи всех данных через сокет
        (время сканирования файла не учитывается).
        Значение по умолчанию: 
                10

ListeningQueue = {значение}
        Задает размер очереди для сокетов. Значение может находиться в
        диапазонах от 0 до константы SOMAXCONN (ее значение зависит от
        операционной системы)
        Значение по умолчанию: 
                подставляется значение SOMAXCONN

Следующие параметры могут быть использованы для уменьшения времени
проверки архивов (за счет отказа от проверки некоторых объектов в
архиве).  Если объект подпадает под ограничения созданные этими
параметрами, то к нему применяется действие ArchiveRestriction, которое
задано в файлах конфигурации различных фильтров.

MaxCompressionRatio = {значение}
        Максимальный коэффициент сжатия, т.е. отношение длины файла в
        распакованном виде к длине файла в запакованном виде (внутри
        архива). Если коэффициент превышает это значение, файл
        извлечен не будет - а значит, не будет проверен.
        Значение по умолчанию: 
                пусто (проверяются все файлы)

CompressionCheckThreshold = {значение в Kb}
        Минимальный размер файла внутри архива, начиная с которого
        будет производиться проверка коэффициента сжатия (если это
        предписано параметром MaxCompressionRatio).
        Значение по умолчанию: 
                пусто (проверка параметра не производится)

MaxFileSizeToExtract = {значение в Kb}
        Максимальный размер файла, извлекаемого из архива. Если размер
        файла внутри архива превышает это значение, он будет пропущен.
        Значение по умолчанию: 
                пусто (извлекаются файлы любого размера)

MaxArchiveLevel = {значение}
        Максимальный уровень вложенности архивов (когда архив вложен в
        архив, который тоже вложен в архив и т.д.).
        Значение по умолчанию: 
                пусто (извлекаются архивы любой вложенности)

Как уже отмечалось ранее, Dr.Web Daemon имеет встроенные возможности
по фильтрации почтовых сообщений на основе системы анализа заголовков
почтовых сообщений. Правила фильтрации также задаются в
конфигурационном файле, проверка правил осуществляется в порядке их
задания, т.е. правило, заданное первым, и будет проверено первым.
Задание правил фильтрации не означает автоматического их применения.
Чтобы включить анализ по заголовкам, необходимо задать соответствующие
опции в поставляемых фильтрах, или указать специальные флаги при
использовании собственных решений на базе Dr.Web Daemon. Поиск
соответствия правилу осуществляется до первого подходящего правила -
возвращается действие, заданное для этого правила.

ВНИМАНИЕ: Если почтовое сообщение попало под действие правила Reject*,
то дальнейшая проверка сообщения на наличие вирусов НЕ производится.
Если почтовое сообщение попало под действие правила Accept*, то
оставшиеся правила игнорируются и сообщение попадает в антивирусную
проверку.

ScanEncodedHeaders = {Yes | No}
        Обрабатывать ли заголовки письма до их раскодирования.
        Например, значение Yes и правило RejectCondition Subject =
        "iso-8859-5" позволит отфильтровать все письма, поле Subject
        которых в кодировке iso-8859-5. Важно понимать, что при
        значении Yes все закодированные заголовки будут просканированы
        дважды: до и после раскодирования.
        Значение по умолчанию: 
                No

RejectCondition {набор правил} 
AcceptCondition {набор правил}
        Описание набора правил фильтрации по заголовкам писем. Правила
        состоят из имени заголовка и регулярного выражения,
        описывающего значения данного поля. Несколько правил могут
        быть объединены при помощи круглых скобок и операций OR или
        AND. Пример:
        RejectCondition Subject = "money" AND "Content-Type" = "text/html"
        Также можно использовать оператор "!=" (не равно).
        Специальные правила фильтрации включают в себя условия
        No ЗАГОЛОВОК (обозначает отсутствие данного поля, например, по
        правилу RejectCondition No From будут отфильтрованы письма, не
        содержащие поля From), ЗАГОЛОВОК = "8bit" (поле содержит
        8-битные символы).
        Значение по умолчанию: 
                пусто

MissingHeader {список полей}
        Описывает набор полей заголовков, при отсутствии которых
        письмо будет отфильтровано. Например:
        MissingHeader To, From
        Значение по умолчанию: 
                пусто

FilterParts = {Yes | No}
        Значение "Yes" разрешает обработку правил, заданных ключами
        RejectPartCondition и AcceptPartCondition.
        Значение по умолчанию: 
                No

RejectPartCondition {набор правил}
AcceptPartCondition {набор правил}
        Параметры, аналогичные RejectCondition и AcceptCondition, но
        работающие с заголовками отдельных частей писем. В наборе
        правил для этих параметров можно применять условие FileName =
        "маска", где "маска" - регулярное выражение, соответствующее
        стандарту POSIX 1003.2. Фильтрация писем по этим правилам
        разрешена только в том случае, когда ключ FilterParts имеет
        значение Yes (см. выше).
        Значение по умолчанию: 
                пусто


3.4. Запуск Dr.Web(R) Daemon

В процессе загрузки демона осуществляются следующие действия.

- Ищется и загружается конфигурационный файл; если файл не найден, то
  загрузка Dr.Web Daemon прекращается. Путь к конфигурационному файлу
  может быть задан в параметрах запуска с помощью ключа
  -ini:{path/to/your/drweb32.ini} или будет использовано значение по
  умолчанию (/etc/drweb/drweb32.ini). При загрузке проверяется
  допустимость некоторых параметров, и если значение параметра
  недопустимо, берется значение по умолчанию.

- Производится загрузка файла локализации, если он задан; если
  неудачно - используются английские сообщения.

- Создается файл отчета.
  Замечание: каталог с файлом отчета должен быть доступен
  пользователю, с чьими привилегиями работает демон, на запись.

- Производится загрузка ключевого файла по пути, указанному в
  конфигурационном файле. Если ключевой файл не найден, то загрузка
  демона прекращается.

- Если задан параметр User (или UserID), то демон пытается изменить
  свои привилегии.

- Производится загрузка поискового модуля (drweb32.dll). Если модуль
  не найден (ошибки в конфигурационном файле) или поврежден, то
  загрузка прекращается.

- После этого начинают загружаться базы с вирусными определениями,
  поиск баз осуществляется по заданным в конфигурационном файле путям,
  порядок загрузки баз не регламентирован. Если база повреждена или
  отсутствуют базы - загрузка будет продолжена.

- Демон "отвязывается" от терминала, поэтому сообщения о дальнейших
  проблемах не могут быть выведены на терминал, и выводятся только в
  файл отчета.

- Создается сокет. В случае tcp, возможно, даже не один; если какой-то
  из них создать не удалось - загрузка все равно продолжается. В
  случае unix-сокета: убедитесь, что каталог, его содержащий, доступен
  пользователю, с чьими привилегиями работает демон, на запись и
  чтение. Для пользователей, от которых будут работать интеграционные
  модули, каталог должен быть доступен на выполнение, а сам файл
  сокета - на запись и чтение.

- После этого создается так называемый pid-файл, в котором хранится
  информация об идентификаторе процесса демона и о транспортных
  адресах, по которым доступен демон. Еще один крайне важный момент:
  каталог с pid-файлом должен быть доступен пользователю, с чьими
  привилегиями работает демон, на запись, поэтому, если у вас
  определен параметр User, то обязательно переопределите и параметр
  pid-файл, так как каталог по умолчанию /var/run не доступен
  пользователям на запись. Если создать pid-файл не удалось, то
  загрузка прекращается.


3.5. Проверка работоспособности Dr.Web(R) Daemon

Если в ходе загрузки не возникло проблем, то в итоге мы получаем
готовый к работе демон - т.е. заданное число всегда готовых к работе
сканеров. Проверить, создан ли сокет, можно, выдав команду netstat -a.
В случае tcp-сокетов:

--- cut ---
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address  Foreign Address  State
tcp        0      0 localhost:3000 *:*              LISTEN
raw        0      0 *:icmp         *:*              7
raw        0      0 *:tcp          *:*              7
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags   Type     State    I-Node Path
unix    0   [ ACC ]  STREAM  LISTENING  384   /dev/gpmctl
unix    0   [ ]      STREAM  CONNECTED  190   @0000001b
unix    1   [ ]      STREAM  CONNECTED  1091  @00000031
unix    0   [ ACC ]  STREAM  LISTENING  403   /tmp/.font-unix/fs7100
unix    4   [ ]      DGRAM              293   /dev/log
unix    1   [ ]      STREAM  CONNECTED  1092  /dev/gpmctl
unix    0   [ ]      DGRAM              450
unix    0   [ ]      DGRAM              433
unix    0   [ ]      DGRAM              416
unix    0   [ ]      DGRAM              308
--- cut ---

В случае unix-сокетов:

--- cut ---
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address  Foreign Address  State
raw        0      0 *:icmp         *:*              7
raw        0      0 *:tcp          *:*              7
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags  Type     State    I-Node Path
unix  0     [ ACC ] STREAM  LISTENING  384   /dev/gpmctl
unix  0     [ ]     STREAM  CONNECTED  190   @0000001b
unix  1     [ ]     STREAM  CONNECTED  1091  @00000031
unix  0     [ ACC ] STREAM  LISTENING  1127  /opt/drweb/run/drwebd.skt
unix  0     [ ACC ] STREAM  LISTENING  403   /tmp/.font-unix/fs7100
unix  4     [ ]     DGRAM              293   /dev/log
unix  1     [ ]     STREAM  CONNECTED  1092  /dev/gpmctl
unix  0     [ ]     DGRAM              450
unix  0     [ ]     DGRAM              433
unix  0     [ ]     DGRAM              416
unix  0     [ ]     DGRAM              308
--- cut ---

Если созданных сокетов не видно, значит, имеются проблемы загрузки.

Для проверки работоспособности Dr.Web Daemon можно использовать
консольный клиент для демона (drwebdc), запустив его для получения
служебной информации о демоне. Кстати, если запустить drwebdc без
параметров, то он выдаст список всех поддерживаемых опций.

Для tcp-сокета:

> $ drwebdc -nHOSTNAME -pPORTNUM -sv -sb

Для unix-сокета:

> $ drwebdc -uSOCKETFILE -sv -sb

Должна появиться следующая информация:

--- cut ---
- Version: DrWeb Daemon 4.32
- Loaded bases:
Base /var/drweb/bases/drwtoday.vdb contains 5 records.
Base /var/drweb/bases/drw43203.vdb contains 409 records.
Base /var/drweb/bases/drw43202.vdb contains 543 records.
Base /var/drweb/bases/drwebase.vdb contains 51982 records.
Base /var/drweb/bases/drw43201.vdb contains 364 records.
Total 53303 virus-finding records.
--- cut ---

Если соответствующей информации не появилось, то попробуйте включить
расширенную диагностику. Для tcp-сокета:

> $ drwebdc -nHOSTNAME -pPORTNUM -sv -sb

Для unix-сокета:

> $ drwebdc -uSOCKETFILE -sv -sb

Более подробный вывод может прояснить ситуацию:

--- cut ---
dwlib: fd: connect() failed - Connection refused
dwlib: tcp: connecting to 127.0.0.1:3300 - failed
dwlib: cannot create connection with a DrWeb daemon
ERROR: cannot retrieve daemon version
Error -12
--- cut ---

Далее, взять тестовый файл readme.eicar.rus (входящий в состав
дистрибутива), с помощью текстового редактора изготовить из него
программу eicar.com (см. указания об этом внутри самого файла) и
попытаться проверить его с помощью демона:

Если у вас лицензия для почтовых серверов на 50 и более адресов:

Для tcp-сокета:
> $ drwebdc -nHOSTNAME -pPORTNUM -e -f eicar.com
Для unix-сокета:
> $ drwebdc -uSOCKETFILE -e -f eicar.com

Если у вас лицензия для почтовых серверов на 15 или 30 адресов:

Для tcp-сокета:
> $ drwebdc -nHOSTNAME -pPORTNUM -e -FEMAIL_ADDRESS -REMAIL_ADDRESS -f eicar.com
Для unix-сокета:
> $ drwebdc -uSOCKETFILE -e -FEMAIL_ADDRESS -REMAIL_ADDRESS -f eicar.com

(где EMAIL_ADDRESS, один из "проверяемых" адресов (из email.ini))

Если у вас лицензия для файловых серверов или интернет-шлюзов:

Для tcp-сокета:
> $ drwebdc -nHOSTNAME -pPORTNUM -f eicar.com
Для unix-сокета:
> $ drwebdc -uSOCKETFILE -f eicar.com


Результатом команды должна быть соответствующая диагностика:

--- cut ---
Results: daemon return code 0x20 (known virus is found)
--- cut ---

Если ее не появилось, то надо:

- посмотреть файл отчета демона: есть ли запись о проверке этого файла;
- включить расширенную диагностику (см. выше).

Если проверка прошла правильно, то это означает, что демон находится в
рабочем состоянии.


3.6. Режимы проверки, реализуемые Dr.Web(R) Daemon (локальное сканирование)

Dr.Web Daemon имеет два основных режима проверки:

- проверка фрагмента памяти, полученного из сокета;
- проверка файла на диске.

Остановимся подробнее на этих двух режимах. В первом режиме Dr.Web
Daemon получает данные для проверки из сокета, фактически, это
некоторый фрагмент данных. Этот фрагмент может быть поименованным или
нет - это отразится исключительно на форме записи Dr.Web Daemon в
файле отчета. Пример работы демона в таком режиме приведен в
предыдущем пункте - клиент читал файл и отсылал его демону для
проверки. В принципе, демон может проверять любой фрагмент данных, это
не обязательно должен быть файл.

Значительно более эффективен режим, в котором демон проверяет
указанный файл на диске, - т.е. клиент (будь то консольный клиент или
фильтр для почты) сообщает демону лишь путь к файлу, а не передает
весь файл.

Замечание. Путь задается относительно демона (так как клиенты могут
находиться на других машинах и т.д.).

В чем преимущества такого режима? Во-первых, он более производителен,
во-вторых, значительно проще делать рабочие схемы с лечением
(например, на файловых серверах). Но такой режим требует более
тщательной настройки прав, так как демону должен быть доступен на чтение
такой файл, а в случае почтовых файлов и использования действий
"лечение" и "удаление" - еще и права на запись. В грамотно настроенной
системе демону в большинстве случаев не требуется прав администратора
(root). Но на это стоит обратить особое внимание при использовании с
почтовыми системами - так как фильтры, как правило, работают от имени
почтовой системы (которая также не использует root привилегий). В
наиболее выгодном режиме фильтр создает файл с письмом (получая его от
почтовой системы) и сообщает демону о его местоположении. Вот на этом
этапе нужно грамотно распределить права на каталог, в котором будут
создаваться файлы фильтрами. Можно порекомендовать либо пользователя,
чьи привилегии используются демоном, включать в группу почтовой
подсистемы, либо запускать демона от пользователя почтовой системы.



                         4. КОНТАКТЫ

Программа Dr.Web находится в постоянном развитии. Наиболее свежую
информацию о ее обновлениях и новости можно получить на сайте:
http://www.drweb.com 

Отдел продаж: 
http://buy.drweb.com
e-mail: sales@drweb.com

Консультации пользователей осуществляются по следующим адресам:
http://support.drweb.com 
e-mail: support@drweb.com 

В письме желательно дать следующую дополнительную информацию,
которая поможет лучше разобраться в ситуации:

- полное название и версию дистрибутива Unix-системы;
- версию программы Dr.Web;
- версии приложений и фильтров, с которыми интегрируется Dr.Web
  Daemon;
- конфигурационные файлы демона и приложений, с которыми
  интегрируется Dr.Web Daemon;
- логи демона, фильтров и других приложений, с которыми
  интегрируется Dr.Web Daemon.
