Бруй В.В., Карлов С.В. - Linux-сервер - пошаговые инструкции - инсталляции и настройки (1077321), страница 96
Текст из файла (страница 96)
к., как правило, не публикуется на Web-ресурсах. Для обеспечения оперативного доступа к информации на Web-сервере следует установить поисковую систему, реализующую алгоритм поиска по ключевым словам или с помощью латентно-семантического анализа.Глава 30. Doctor Web – антивирусное программное обеспечениеГлава 30Doctor Web – антивирусное программное обеспечениеВ этой главе:1. Ограничения и допущения2. Пакеты3. Компиляция, оптимизация и инсталляция Doctor Web4. Конфигурирование и интеграция Doctor Web с почтовым транспортным агентом Exim5. Конфигурационный файл /etc/drweb/drweb32.ini6.
Конфигурационный файл /etc/mail/exim.conf7. Конфигурационный файл /etc/drweb/drweb_exim.conf8. Конфигурационный файл /etc/mail/system-filter9. Конфигурационный файл /etc/drweb/addresses.conf10. Конфигурационный файл /etc/drweb/users.conf11. Конфигурационный файл /etc/drweb/viruses.conf12. Конфигурационные файлы шаблонов /etc/drweb/templates/en-ru/*.msg13. Тестирование Doctor Web14. Обновление антивирусных баз427428Часть 7. Программное обеспечение для организации службы электронной почтыВ этой главе рассматривается установка и настройка антивирусного программного обеспеченияDoctor Web от Санкт-Петербургской антивирусной лаборатории И.
Данилова (ООО «СалД»). Несколько летназад этот программный продукт был перенесен на платформу Linux. В комплект поставки Doctor Web (Dr.Web) для Linux входят:• Dr. Web daemon, предназначенный для интеграции с различным программным обеспечением (почтовыми транспортными агентами и файл-серверами), в качестве фильтра;• сканер Dr. Web, работающий в режиме командной строки.Кроме демона и сканера в комплект поставки входят исходные тексты программ, необходимых длясовместного использования Dr. Web с Sendmail, Exim, QMail Postfix, Communigate Pro, Samba, Courier иZMailer.В комплект поставки входит также подробная документация на русском и английском языках.В отличие от рассмотренного ранее программного обеспечения Doctor Web является коммерческимпрограммным продуктом и не поставляется в исходных кодах.
По этой причине авторам не удалось обеспечить работоспособность Dr. Web daemon при его установке в типичные для Linux-систем каталоги. В рассматриваемом ниже варианте инсталляции основные исполняемые файлы устанавливаются в каталог /opt,который рекомендуется размещать на отдельном разделе диска. Не смотря на этот недостаток, по мнениюавторов, Doctor Web является лучшим программным продуктом для реализации антивирусной защиты напочтовом сервере.Ограничения и допущенияИсходные коды находятся в каталоге /var/tmp.Все операции выполняются пользователем с учетной записью root.Используется дистрибутив ASPLinux 7.3 (Vostok).Перекомпиляция ядра не требуется.Процедуры, описанные в этой главе, могут оказаться применимыми для других версий ядра и дистрибутивов Linux, но авторы этого не проверяли.ПакетыПоследующие рекомендации основаны на информации, полученной с домашней страницы проектаDoctor Web по состоянию на 29.06.2003.
Регулярно посещайте домашнюю страницу проекта http://http://drweb.ru/unix/ и отслеживайте текущие обновления. Doctor Web содержится в архивеdrweb-version-glibc.version.tar.gz (последняя доступная на момент написания главы стабильная версия drweb-4.29.2-glibc.2.2.tar.gz). Клиентское программное обеспечение, предназначенное для интеграции с почтовым транспортным агентом Exim, содержится в архиве drweb-eximversion-linux.tar.gz (последняя доступная на момент написания главы стабильная версия drwebexim-4.29.10-linux.tar.gz).Для нормальной инсталляции и работы Doctor Web необходима установка модуля PerlString::CRC32 (http://www.cpan.org/modules/index.html) и программы для скачивания файлов Wget (http://www.gnu.org/software/wget/wget.html).Компиляция, оптимизация и инсталляция Doctor WebДля инсталляции Doctor Web необходимо выполнить следующие операции.Шаг 1Распакуйте архив с исходными кодами String::CRC32 в каталог /var/tmp и установите модульPerl- String::CRC32:[root@test tmp]# tar xzpf String-CRC32-1.2.tar.gz[root@test tmp]# cd String-CRC32-1.2[root@test String-CRC32-1.2]# perl Makefile.PL[root@test String-CRC32-1.2]# make[root@test String-CRC32-1.2]# make test[root@test String-CRC32-1.2]# make installШаг 2Распакуйте архив с исходными кодами Wget в каталоге /var/tmp, сконфигурируйте, откомпилируйте, проинсталлируйте Wget, создайте и сохраните в надежном месте список установленных файлов:[root@test tmp]# tar xzpf wget-1.8.2.tar.gz[root@test tmp]# cd wget-1.8.2Глава 30.
Doctor Web – антивирусное программное обеспечение429[root@test wget-1.8.2]# CFLAGS="-O2 -march=i686 -funroll-loops"; exportCFLAGS \./configure \--prefix=/usr \--sysconfdir=/etc \--localstatedir=/var \--mandir=/usr/share/man[root@test wget-1.8.2]# make[root@test wget-1.8.2]# find /* > /root/wget1[root@test wget-1.8.2]# make install[root@test wget-1.8.2]# find /* > /root/wget2[root@test wget-1.8.2]# diff /root/wget1 /root/wget2 >/root/wget.installed[root@test wget-1.8.2]# mv /root/wget.installed/very_reliable_place/wget.installed.YYYYMMDDШаг 3Распакуйте в каталоге /var/tmp архивы с Doctor Web и клиентским программным обеспечением:[root@test wget-1.8.2]# cd /var/tmp[root@test tmp]# tar xzpf drweb-4.29.2-glibc.2.2.tar.gz[root@test tmp]# tar xzpf drweb-exim-4.29.10-linux.tar.gzШаг 4Проинсталлируйте Doctor Web, создайте и сохраните в надежном месте список установленных файлов:[root@test tmp]# find /* > /root/drweb1[root@test tmp]# drweb-4.29.2-glibc.2.2/install.shEnter destination directory (/opt/drweb is default): <Enter>Select interface language: 0) english1) russian 1 <Enter>Dr.Web is installed to /opt/drweb.Edit /drweb32.ini to complete setup.[root@test tmp]# find /* > /root/drweb2[root@test tmp]# diff /root/drweb2 /root/drweb1 > /root/drweb.installed[root@test tmp]# mv /root/drweb.installed/very_reliable_place/drweb.installed.YYYYMMDDШаг 5Проинсталлируйте клиентское программное обеспечение, необходимое для интеграции Doctor Web сExim:[root@test tmp]# cp -R drweb-exim/etc/drweb/* /etc/drweb/[root@test tmp]# cp drweb-exim/opt/drweb/drweb-exim /opt/drweb/Шаг 6Удалите архивы и каталоги с исходными кодами программ:[root@test tmp]# rm -rf drweb-exim/[root@test tmp]# rm -f drweb-exim-4.29.10-linux.tar.gz[root@test tmp]# rm -rf drweb-4.29.2-glibc.2.2/[root@test tmp]# rm -f drweb-4.29.2-glibc.2.2.tar.gzКонфигурирование и интеграция Doctor Web с почтовым транспортным агентомEximКонфигурирование Doctor Web в варианте интеграции его с Exim осуществляется с использованиемследующих файлов:• главного конфигурационного файла /etc/drweb/drweb32.ini, единого для демона и сканера;• главного конфигурационного файла Exim /etc/mail/exim.conf;• конфигурационногофайлаклиентскогопрограммногообеспечения/etc/drweb/drweb_exim.conf;• конфигурационного файла фильтров /etc/mail/system-filter;• конфигурационного файла /etc/drweb/addresses.conf;430Часть 7.
Программное обеспечение для организации службы электронной почты• конфигурационного файла /etc/drweb/users.conf;• конфигурационного файла /etc/drweb/viruses.conf;• файлов /etc/drweb/templates/en-ru/*.msg, содержащих шаблоны сообщений, используемых для информирования получателя, отправителя и администратора системы об обнаружении инфицированных сообщений и принятых к ним мерах.Конфигурационный файл /etc/drweb/drweb32.iniШаг 1Руководствуясь ниже приведенными рекомендациями и вашими потребностями, отредактируйтефайл /etc/drweb/drweb32.ini:[Linux]EnginePath = "/opt/drweb/lib/drweb32.dll"VirusBase = "/var/drweb/bases/*.vdb", "/var/drweb/bases/*.VDB"MoveFilesTo = "/var/drweb/infected"LngFileName = "/opt/drweb/lib/russian.dwl"Key = "/opt/drweb/drweb.key"LogFileName = "/var/drweb/log/drweb.log"RenameFilesTo = #??FilesTypes =EXE,COM,SYS,OV?,BAT,BIN,DRV,PRG,BOO,SCR,CMD,VXD,386,DLL,FON,DO?FilesTypes =XL?,WIZ,RTF,CL*,HT*,VB*,JS*,INF,AR?,ZIP,R??,PP?,OBJ,LIB,HLP,MD?FilesTypes = INI,MBR,IMG,CSC,CPL,MBP,SHS,SHB,PIFScanFiles = ByFormatHeuristicAnalysis = YesCheckPackedFiles = YesCheckArchives = YesCheckEMailFiles = YesInfectedFiles = ReportSuspiciousFiles = ReportIncurableFiles = ReportExcludePaths =LogToFile = YesOverwriteLog = NoLogScanned = YesLogInfo = YesLogPacked = YesLogArchived = YesLogStatistics = YesLogTime = NoScanSubDirectories = YesPromptOnAction = NoLimitLog = NoMaxLogSize = 512OutputMode = TerminalFollowLinks = NoUpdatePath = "/opt/drweb/updates"RecodeNonprintable = YesRecodeMode = QuotedPrintableRecodeChar = "?"[Linux:Daemon]EnginePath = "/opt/drweb/lib/drweb32.dll"VirusBase = "/var/drweb/bases/*.vdb", "/var/drweb/bases/*.VDB"MoveFilesTo = "/var/drweb/infected"LngFileName = "/opt/drweb/lib/russian.dwl"Key = "/opt/drweb/drwebd.key"LogTime = YesГлава 30.
Doctor Web – антивирусное программное обеспечение431LogFileName = "syslog";LogFileName = "/var/drweb/log/drwebd.log";BusyFile = "/var/drweb/run/drwebd.bsy"SocketMode = TCPSocketFile = "/var/drweb/run/drwebd.socket";SocketMode = Unix;SocketAccess 0666;Расскоментировать;PidFile = "/var/drweb/run/drwebd.pid"DaemonPort = 3000SocketTimeout = 40SocketReuseAddr = YesFileTimeout = 40OutputMode = TerminalLimitLog = NoMaxLogSize = 512LogScanned = YesLogInfo = YesLogPacked = YesInterfaces = "localhost"User = mail;UserID =;GroupID =ScanFiles = AllMaxCompressionRatio = 20MaxChildren = 16SyslogFacility = "Daemon"SyslogPriority = "Alert"FilterRule X-Mailer ".*Mass.*Sender.*" RejectFilterRule To ".*undisclosed.*recipient.*" RejectFilterRule Subject ".*free.*xxx.*" RejectUpdatePath = "/opt/drweb/updates"RecodeNonprintable = YesRecodeMode = QuotedPrintableRecodeChar = "?"Конфигурационный файл состоит из двух частей.
В первой – с заголовком [Linux] – содержатсяпараметры конфигурации сканера, во второй – с заголовком [Linux:Daemon] – содержатся параметрыконфигурации демона. Вам следует внести изменения в три строки.Строки (в обоих разделах):LngFileName = "/opt/drweb/lib/russian.dwl"предписывают включение поддержки в сообщениях русского языка.Строка:User = mailпредписывает запускать демон от имени пользователя mail – это необходимо для интеграции с Exim.Назначение остальных используемых в файле опций подробно описано на русском и английском языках в файлах /opt/drweb/doc/readme.daemon.rus и /opt/drweb/doc/readme.daemon, соответственно.
После завершения установки и настройки программного обеспечения каталог с документацией/opt/drweb/doc/следует удалить.Шаг 2Определите права доступа к файлу /etc/drweb/drweb32.ini и назначьте его владельцем пользователя root:[root@test /]# chmod 640 /etc/drweb/drweb32.ini[root@test /]# chown 0.0 /etc/drweb/drweb32.iniШаг 3Для обеспечения нормальной работы демона от имени пользователя mail (в рассматриваемом примере drwebd запускается от имени пользователя mail) определите пользователя mail владельцем каталога/var/drweb:432Часть 7.