Нужен ли пингвину зонтик? (про антивирус для Linux)

Нужен ли пингвину зонтик? (про антивирус для Linux)

Про деньги и вирусы

Антивирус для "Линукс"? А зачем? Ведь вирусы, обитающие в UNIX-среде, можно пересчитать по пальцам, а сама идеология Linux — четкое разграничение прав доступа — надежно защищает его от подобной гадости. Смешно представить себе антивирус, который гордо напишет на экране: "Антивирусные базы загружены. Известных вирусов: 9";).

Но антивирусы для ОС "Линукс" имеют одну особенность — они умеют определять вирусы, обитающие и в среде Windows. Это свойство позволяет защищать данные несчастных "подОконников" на файловых серверах Samba и почтовых шлюзах. К тому же, и сама "Линукс" не осталась в стороне от деятельности вирусописателей — к традиционным червям Bliss, Ramen, RST, Lion, Satyr и Nuxbee добавился и ряд новых неприятностей.

Среди отечественных разработок лидерами в антивирусной бойне (НЕ войне, а именно бОйне!) являются программы AVP и dr. WEB, с помощью которых многие, наверное, не раз дома лечили дискеты, принесенные из университета после очередной лабораторной работы.

Данные продукты эффективно борются со стелс-, макро-, полиморфными вирусами, вирусами для Java-апплетов и "троянскими конями". Сразу скажу, продукты эти являются коммерческими: например, за антивирус AVP для файлового сервера вам придется выложить пятьсот условных. Каково, а? Для предприятия это не деньги, а вот если мы хотим защищать Samba-сервер в домашней сети или в общежитии, так что, три года пива не пить, экономить? Понимаю, можно пользоваться и ломаными версиями, но за пару лет работы с Linux я разучился искать кряки:)…

Халява, сэр!

К счастью, мир не без добрых людей, вернее, не без добрых немцев. Компания H+BEDV Datentechnik GmbH, со свободным продуктом которой Antivir Personal Edition (эдакий красный зонтик в трее) знакомы пользователи ОС Windows, распространяет антивирусы для ОС Linux и BSD совершенно бесплатно для некоммерческого использования, хотя за версии для других ОС нужно выкладывать деньги.

Почему я хочу порекомендовать этот продукт именно начинающим линуксоидам? Старую консольную крысу вроде меня;-) отсутствие графического интерфейса не остановило бы, но не будем забывать и об обычных пользователях, которых один только вид CLI повергает в уныние. Sebastian Geiges, опять же немец, пошел навстречу, так сказать, трудовым немецким массам и реализовал графический фронтенд для AntiVir, за что большое ему огромное спасибо. Лично я считаю, что графический интерфейс играет большую роль в популяризации Linux, особенно для пользователей, мигрирующих с Windows. Это потом они поймут мощь консоли!

Ну да ладно. Как вы увидите дальше, AntiVir и tkAntiVir сможет установить и ребенок. Умные немцы постарались на славу: никакой компиляции не требуется — просто запускаем скрипт и отвечаем на вопросы. Вдобавок — пресловутое немецкое качество — пользователи SUSE Linux поймут меня.

Благотворительность или холодный расчет?

Но неужели H+BEDV так прониклась духом GPL, что отвалила пингвинам такой царский подарок? Причины бесплатности объясняются на сайте тем, что H+BEDV хочет сделать свой вклад в мировое движение борьбы с вирусами. Но сравнительная таблица антивирусов для различных ОС показывает, что Linux-версия обладает существенным недостатком — модуль сканирования в режиме реального времени находится в разработке. Получается, фирме пока стыдно делать деньги на "пингвиньем горе"?

AntiVir для Novell NetWare AntiVir для Windows NT Server AntiVir для Exchange Server AntiVir для Linux
Определение и удаление вирусов x x x x
Сканирование и лечение от макровирусов x x x x
Эвристическое определение макровирусов x x x x
Сканирование в режиме реального времени x x x o
Планировщик автоматического запуска x o o #
Защита MBR x o o
Возможность указания действий в случае обнаружения вирусов x x #
Механизм обновления для локальной сети o o #
Наличие встроенной справки x x x
Команды для запуска до и после сканирования x o #
Команда в случае обнаружения вируса x o #
Указание файлов и каталогов, которые будут пропущены при проверке x o o
Проверка целостности данных x o x
Передача предупреждений о вирусах на e-mail x o x #
Загрузочный CD-ROM x x x x
o = Функция в разработке # = Реализуется с помощью скриптов

Тем не менее, хотя модуль действительно находится в разработке, это вовсе не означает, что он не существует либо он работает некорректно — просто он постоянно улучшается и дополняется, так же, как и Dazuko — проект, благодаря которому сканирование в реальном времени стало доступно.

Какая такая Дазюка?

Dazuko был разработан все той же H+BEDV специально для AntiVir'а. Это модуль к ядру, предоставляющий сторонним приложениям интерфейс для контроля доступа к файлам. Будучи скомпилированным и установленным, он добавит в вашу систему новое устройство /dev/dazuko. Я предвижу панику и частичные обмороки в рядах начинающих, поэтому хочу сразу их успокоить: сегодня мы НИЧЕГО компилировать не будем. Дело в том, что, хотя Дазюка и разрабатывался специально для AntiVir'a, но использовать его услуги может любое стороннее приложение. Поэтому Dazuko — это самостоятельный свободный проект, и его установке, настройке и взаимодействии c AntiVir хотелось бы посвятить отдельную статью. Остается добавить, что Дазюка был протестирован и великолепно работает лишь на Linux. Версии для free-, open- BSD и Windows только разрабатываются.

Но давайте же начинать устанавливать наш Антивирус.

Регистрация

Итак, идем на сайт разработчика ( http://www.hbedv.com/private ) и заполняем форму, отсылаем ее, пару минут нетерпеливо барабаним пальцами по столу и… (Ну же! Ну же!) получаем КЛЮЧ на e-mail. Признаюсь, у меня слезы на глазах выступили — эта программа, наверное, первая, которую я честно зарегистрировал:). (Данный ключ действителен в течение 12 месяцев — время по меркам IT огромное;).

Скачивание

Там же, в разделе products ( http://www.hbedv.com/download/download.htm ) скачиваем нужный софт. Доступны версии для файлового сервера, рабочей станции и почтового сервера (я опишу установку версии для файлового сервера, установка для рабочей станции будет идентична).

Установка

Итак, архив .tgz получен. Просто распакуйте содержимое тарбола в созданную предварительно папку и (с правами root, разумеется!) запустите инсталляционный скрипт.

./install.sh
Умные немцы позаботились о вашем комфорте — по экрану побежали строчки, а вам предстоит лишь отвечать на вопросы [значения в скобках — по умолчанию]:

1. Установка сканера:

Starting AntiVir for UNIX Server 2.0.6 installation...

1) installing command line scanner

.....

installation of command line scanner complete



2. Установка автоматического обновления:

2) nstalling automatic internet updater

......

Would you like to install the automatic internet updater? [n]
"Хотите установить автоматическое обновление из Интернет?" Если доступ в Интернет имеется, отвечайте "y".

Would you like the automatic updater to start automatically? [y]
"Запускать обновление автоматически?" — "y".

3. Установка монитора реального времени:

3) installing AvGuard

...........

Press <ENTER> to continue.
Т.к. Dazuko пока еще не установлен в нашей системе — жмем Enter

4. Конфигурирование:

4) configuring AntiVir

Would you like to configure AntiVir now? [y]
"Хотите начать конфигурирование antivir?" Советую ответить "y".

Конфигурирование

AutoUpdateEvery2Hours/AutoUpdateDaily

==========================

.....

How often should AntiVir check for updates? [d]
В указанное время AntiVir может проверять наличие в Интернете обновлений вирусной базы и программного кода. Он может автоматически загружать и инсталлировать их без участия пользователя. Ответив "2", вы заставите AntiVir проверять наличие обновлений каждые 2 часа, "d" — раз в день и "n" — не производить обновления.

AutoUpdateTime

============

What time should updates be done? [11:10]
Проверка на наличие обновлений может также запускаться во время, указанное в следующем формате HH:MM. Эта опция полезна тем, кто не имеет постоянного интернет-соединения. Кроме того, можно разрешить AntiVir выбирать время случайным образом.(r).

EmailTo (2 of 5)

==========

Would you like email notification of viruses? [n]
В случае обнаружения инфицированного файла есть возможность отсылки e-mail'а, в котором будут указаны меры, предпринятые для блокировки этого файла. Варианты: y n.

LogTo (3 of 5)

==========

Would you like AntiVir to log to a custom file? [n]
Для протоколирования посредством syslog вы можете указать свой лог-файл. Варианты: y и n.

HTTPProxyServer/HTTPProxyPort (4 of 5)

==========================

Does this machine use an HTTP proxy server? [n] y

What is the HTTP proxy server name? [] 192.168.50

Which port number does the HTTP proxy server use? [8080] 80
Если ваша машина для доступа в Интернет использует прокси-сервер, необходимо ответить "y" и указать его адрес и порт. В случае прямого доступа — "n".

HTTPProxyUsername/HTTPProxyPassword (4 of 5)

================================

Does the HTTP proxy server require a username/password? [n]
Если для доступа к прокси-серверу необходим пароль, ответьте "y" и укажите его.

SyslogFacility/SyslogPriority (5 of 5)

=======================

…..

available FACILITIES: authpriv cron daemon kern lpr mail news syslog user uucp

local0 local1 local2 local3 local4 local5 local6 local7

Which syslog FACILITY should AntiVir use? [user]

available PRIORITIES: emerg alert crit err warning notice info debug

Which syslog PRIORITY should AntiVir use? [notice]

Save configuration settings? [y]
Здесь вы можете задать параметры протоколирования демона syslogd. Параметр FACILITY указывает на тип программ для протоколирования, а параметр PRIORITY — на уровень протоколирования: notice info debug и др. Например, уровень warm — это предупреждения, а err — ошибки. Если вы не знакомы с syslogd, оставьте значения по умолчанию.

Running Automatic Internet Updater

=======================

……

Would you like to restart the updater using the new configuration? [y]
Осуществить запуск программы интернет-обновления можно вручную командой:

/usr/lib/AntiVir/avupdater start

Также можно запускать его автоматически, добавив его стартовые скрипты.

Программа просит разрешения перезапустить апдейтер для внесения сделанных изменений.

Далее вам напомнят о командах запуска конфигуратора и управления программой обновлений:



AntiVir

=======

configure: /usr/lib/AntiVir/configantivir

Automatic Internet Updater

==========================

start: /usr/lib/AntiVir/avupdater start

stop: /usr/lib/AntiVir/avupdater stop

check: /usr/lib/AntiVir/avupdater status

Press <ENTER> to continue.

Все, AntiVir установлен. Ах, да! Помните тот ключ, который мы получили по почте? Так вот, его надо положить в папочку /usr/lib/AntiVir.

Установка графического интерфейса

На сайте самого автора скачиваем крохотный файлик: http://www.sebastian-geiges.de/tkantivir/tkave.tgz, распаковываем его (не забудьте про права root!) и запускаем ./install.sh. Программа установки использует псевдографическое меню и не вызовет у вас затруднений.

Запустив /usr/X11R6/bin/tkantivir, мы увидим дружественный интерфейс AntiVir. При желании вы можете сделать ссылку на этот файл прямо с рабочего стола — я даже нарисовал для него иконку.



Приведу перечень опций, которые вы можете указать при помощи tkAntiVir:

Scanning options — Параметры сканирования:

path — путь на сканируемые данные;

include subdirectories — сканировать подкаталоги;

only current directory — сканировать только текущий каталог;

only these file types — сканировать только файлы указанных типов.

Options — Общие параметры :

do not check boot records — не сканировать загрузочные сектора;

do not follow symbolic links — не следовать по ссылкам;

verbose scan mode — выводить подробные сообщения;

do not scan within packed files — не сканировать файлы в архивах;

scan ZIP archives — сканировать файлы в ZIP-архивах.

Repair options — Параметры лечения инфицированных файлов:

ignore repair infected file — не лечить зараженные файлы;

rename infected file — переименовать зараженные файлы;

delete infected file — удалять зараженные файлы;

move infected file — сохранять зараженные файлы в указанный каталог.

Macro repair options — Параметры лечения макросов:

ignore — ничего не делать с подозрительными макросами, только отчет;

delete OLE documents with suspicious macros — уничтожать документы с подозрительными макросами;

delete suspicious macros — удалять подозрительные макросы;

delete all macros — удалять все макросы.

Кроме того, через tkAntiVir вам доступен планировщик и возможность обновления антивируcной базы.

Обратите внимание на то, что запускать tkAntiVir и AntiVir рекомендуется с правами root, так как вам нужны полномочия для доступа и действий над проверяемыми файлами. А запуская программу обновления антивирусной базы, вы должны обладать правами для записи в /usr/lib/Antivir.

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

Мощь и красота консоли

Однако вся мощь AntiVir'a раскроется перед вами именно в консоли. Посмотрите еще раз на сравнительную таблицу антивирусов для различных ОС. Как видим, большинство функций AntiVir реализуется при помощи скриптов. Зачем изобретать велосипед и наделять AntiVir функциями, которые уже давно реализованы в Unix-системах? Даже несмотря на отсутствие сканирования в реальном времени при помощи сценариев shell возможности AntiVir'a будут ограничены только вашей фантазией.

Синтаксис команды:

antivir [ ключи] [путь на данные[\*.ext]] [*.ext]

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

--help вывести на экран файл справки
--allfiles сканировать все файлы
--version вывести информацию о версии продукта
--info показать список известных вирусов
--update запустить обновление
--check проверить наличие обновлений
-s сканировать подкаталоги
-nopack не сканировать файлы внутри архивов
-v сканировать файлы целиком (будет исключена возможность неправильного определения типа файла)
-z сканировать файлы в архивах
-nolnk не следовать по ссылкам
-onefs не следовать по ссылкам на другие файловые системы
-noboot не проверять загрузочные записи
-nombr не проверять главную загрузочную запись
-nobreak запретить прерывание проверки комбинациями ctrl-C и ctrl-break
-nodef проверять указанный тип файлов (например, *.EXE)
--temp=<dir> указать каталог хранения временных файлов
--home-dir=<dir> указать каталог хранения исполняемых файлов, антивирусных баз и ключей
-C <filename> указать месторасположение конфигурационного файла (по умолчанию /etc/antivir.conf)
-e [-del | -ren] лечить зараженные файлы
-ren удалить файлы, которые невозможно вылечить
-del переименовать файлы, которые невозможно вылечить (*.COM->*.VOM,...)
-dmdel уничтожить документы с подозрительными макросами
-dmds удалить подозрительные макросы
-dmda удалить все макросы
-r1 записать в файл отчета только зараженные и подозрительные файлы
-r2 вдобавок к -r1 записать все сканируемые каталоги
-r3 вдобавок к -r2 записать все сканируемые файлы
-r4 подробный отчет
-rs select single-line alert messages
-rf<filename> указать имя файла отчета
-ra дополнять существующий файл отчета
-ro перезаписать существующий файл отчета
-q показывать только сообщения о вирусах и ошибках
-once запускать сканирование раз в день
Например, команда

/usr/lib/AntiVir/antivir /home/ -nodef *.bin *.com *.exe *.htm *.dll *.doc *.sys -s -nolnk -z -ren -rf/home/work//avlinux.log -ro -lang=EN

просканирует на наличие вирусов файлы с расширениями *.bin, *.com, *.exe, *.htm, *.dll, *.doc, *.sys в каталоге /home включая подкаталоги. Также будут проверены файлы в архивах. Инфицированные файлы будут переименованы. Файл отчета /home/work/avlinux.log будет перезаписан.

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

Евгений Яблонский, aka Gorza ( gorza@bk.ru )
Под редакцией X-Stranger'a



Компьютерная газета. Статья была опубликована в номере 23 за 2003 год в рубрике soft :: ос

©1997-2024 Компьютерная газета