Архивы: по дате | по разделам | по авторам

Броня моллюска

Архив
автор : Андрей Маркелов   18.06.2004

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

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

Путь к открытому антивирусному программному обеспечению нам придется прокладывать из стана GNU/Linux, под которые в первую очередь и создаются такие проекты. По этой ссылке  читатель может ознакомиться с обширным списком *nix-антивирусов и убедиться, что с десяток упомянутых там продуктов распространяются по лицензии GPL. Возникает вполне здравая мысль: если мы ставим на машину бесплатную ОС с целым комплексом бесплатных же сервисов и служб, почему бы не установить и бесплатный антивирус?

Я не собираюсь оспаривать сложившееся мнение о том, что наиболее эффективными в области защиты информации являются именно коммерческие решения. Тот же Norton AntiVirus, "Антивирус Касперского" или Dr.Web обеспечат комплексную защиту информации и оперативное обновление своих баз. Однако в настоящий момент имеется продукт, который по ряду параметров ничуть не хуже коммерческих. Я имею в виду самый известный и считающийся лучшим из OpenWare-антивирусов - Clam AntiVirus. Конечно, отсутствие гарантированной поддержки (хотя для некоторых стран существует и commercial support этого продукта) и на несколько часов более поздний (по сравнению с платными решениями) выход обновлений баз по конкретным вирусам - это аргументы не в пользу "раковины моллюска" (именно так можно перевести с английского "clam"). Однако в определенных случаях, сравнив цену, например, коммерческого решения по защите почтового сервера на пятьдесят ящиков и возможные риски использования некоммерческого ПО, можно сделать выбор в пользу последнего.

Что же представляет собой Clam AntiVirus? Вот его основные особенности:

  • лицензия GNU General Public License;
  • переносимый POSIX-совместимый код (мы рассмотрим реализации под Windows и Linux);
  • проверка файлов на лету (под Linux и FreeBSD), встроенная поддержка Mbox, Maildir и raw-форматов почтовых сообщений;
  • поддержка проверки архивов (встроенная поддержка форматов RAR версии 2, ZIP, GZIP и BZIP2);
  • утилита обновления баз вирусов с поддержкой цифровой подписи.

Частоту обновлений базы вирусов вы можете оценить, сходив по этой ссылке. Обычно базы обновляются несколько раз в день. Учтите, что в базе ClamAV некоторые вирусы могут называться иначе, чем в других источниках. Существует и онлайн-версия этого продукта.

Теперь от теории перейдем к практике: рассмотрим работу со сканером ClamAV под Windows и Linux, а также, применительно к Linux, интеграцию с почтовым сервером Sendmail для автоматической проверки корреспонденции.

Установка сканера для Windows

Замечу сразу, что вариант ClamAV для семейства операционных систем Windows включает в себя только функцию сканирования по запросу. То есть вы явно (вручную или встроенным планировщиком) должны дать программе указание сканировать файлы, каталоги или диски. В то же время дистрибутив содержит add-on для Microsoft Outlook, автоматически сканирующий почтовые вложения.

Итак, открываем страничку clamwin.sourceforge.net и скачиваем последнюю версию дистрибутива, которая весит чуть более четырех мегабайт. Запускаем exe-файл, предварительно убедившись, что у нас не запущен Outlook. Для инсталляции антивируса в среде Windows NT/2000/XP права администратора вам не потребуются. В процессе Мастер установки спросит, всем ли зарегистрированным на машине пользователям необходим доступ к антивирусу, продемонстрирует лицензионное соглашение и предложит выбрать компоненты. Опциональными являются модули интеграции ClamAV с Windows Explorer (добавляет пункт "Проверить на вирусы" в контекстное меню, вызываемое правой кнопкой мышки) и Microsoft Outlook (см. рисунок). Кроме того, вы можете указать, нужно ли вам, чтобы установщик скачал исходные тексты антивируса с официального сайта. По завершении инсталляции Мастер предложит загрузить обновление вирусной базы.

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

Установка сканера для Linux

Здесь процедура немного сложнее. Я опишу те минимальные действия, которые следует выполнить, не залезая слишком глубоко в тонкие настройки. В качестве тестовой системы возьмем Red Hat Enterprise Linux 3. Для начала необходимо скачать с сайта проекта clamav.sourceforge.net архив исходников последней стабильной версии. На момент написания статьи - это clamav-0.70.tar.gz. Выполняем следующие команды:

  • groupadd clamav - добавляем новую группу пользователей;
  • useradd -g clamav -s /bin/false -c ”Clam AntiVirus” clamav - добавляем пользователя, из-под которого будем запускать антивирус;
  • touch /var/log/freshclam.log - создаем файл, в который будут писаться логи по обновлениям;
  • chown freshclam.log clamav - даем на него права;
  • tar xvf clamav-0.70.tar - разархивируем исходные тексты;
  • cd clamav-0.70 - заходим в полученный каталог;
  • ./configure --enable-milter - создаем конфигурационные файлы, если хотим компилировать антивирус с поддержкой проверки почты (в случае использования почтовика Sendmail); если нужды в этом нет, пишем просто ./configure.

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

Следующее, что нужно сделать, - это обеспечить автоматическое получение обновлений баз с сигнатурами вирусов. Даем команду crontab -e и в открывшемся редакторе (по умолчанию - vi) набираем строку: * * * * /usr/local/bin/freshclam -quiet. Теперь ClamAV будет ежечасно проверять наличие обновлений на сайте и при их появлении - скачивать.

Осталось "прикрутить" антивирус к почтовой системе (в качестве примера возьмем опять-таки Sendmail). Для начала убедитесь, что в системе установлен пакет sendmail-devel. Добавьте в файл /etc/mail/sendmail.mc строки:

INPUT_MAIL_FILTER(`clmilter’,`S=local:/var/run/clmilter.sock,
F=, T=S:4m;R:4m’)dnl
define(`confINPUT_MAIL_FILTERS’, `clmilter’)
и перекомпилируйте его командой make –C /etc/mail. Далее проверьте наличие в /usr/local/etc/clamav.conf ключей:
LocalSocket /var/run/clamd.sock
ScanMail
StreamSaveToDisk

и отсутствие ключа Example.

Добавьте в строку запуска clamav-milter и clamd при старте системы в /etc/rc.d/rc.local:

/usr/local/sbin/clamd
/usr/local/sbin/clamav-milter -lo /var/run/clmilter.sock

Перезапустите машину и отправьте самому себе какое-нибудь тестовое сообщение. Если в полном заголовке этого письма вы обнаружите строчку вида:

X-Virus-Scanned: clamd / ClamAV version 0.70, clamav-milter version 0.70j

это означает, что почта была проверена антивирусом.

Вероятно, вы знаете о Cygwin - среде, позволяющей запускать Linux-программы в среде Windows1. С использованием библиотек этого проекта была, в частности, создана GUI-версия сканера под "форточки", но не только. Так, можно скачать порт консольной версии, работа с которым практически не отличается от работы с Linux-версией. Поскольку данная версия присутствует уже в виде скомпилированного набора файлов, вам не придется выполнять шаманские действия, описанные выше. Достаточно будет запустить инсталлятор, который создаст по указанному пути структуру каталогов.

Пожалуй, этой информации хватит, чтобы начать эксплуатировать сей продукт, рожденный энтузиастами Open Source. А чтобы меня не обвинили в предвзятом отношении к открытому программному обеспечению (которое, в том числе и ClamAV, я сам применяю на вверенных мне по работе "боевых" серверах), хочу дать ссылку на список крупных компаний и организаций, тоже использующих Clam AntiVirus. Возможно, мысль о том, что такое большое число IT-специалистов доверило заботу об информационной безопасности именно этому антивирусу, заставит вас приглядеться к ClamAV повнимательнее.

© ООО "Компьютерра-Онлайн", 1997-2024
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.