[devel] I: clamav
Victor Forsyuk
=?iso-8859-1?q?victor_=CE=C1_ksi-linux=2Ecom?=
Пт Авг 1 19:20:51 MSD 2003
Hi!
В /incoming/Sisyphus уехал ClamAV - очень хороший почтовый антивирус
для фрюниксов.
Есть два момента, в которых моя сборка отличается от виденных мной
(PLD, Freshrpms, Mdk contrib) и которые хотелось бы отметить.
Первое, пакет собран для работы от юзера mail, а не от новосоздаваемого
"одноименного", как это модно/принято.
Rationale:
Основное предназначения ClamAV - интеграция с почтовыми серверами
для сканирования аттачей. В случае с exim эта интеграция очень
тесная, exim+exiscan делает копию файла полученного письма для
сканирования и передает его имя антивирусу через сокет или порт.
Если MTA и антивирус будут работать от совершенно разных юзеров,
антивирус просто не получит доступа к файлу - он создается отнюдь
не world-readable по совершенно очевидным причинам.
Так что лучшим решением будет работа MTA и антивируса под одним
uid. При этом крайне странно будет смотреться антивирус, работающий
от юзера exim. :-)
Поэтому clamav "заточен" на mail с расчетом на то, что Виктор
Исмакаев не будет особенно возражать против перехода exima'а
с "собственного" юзера на бесхозного по сути после отказа от
sendmail'а юзера mail.
Второе, пакет не включает в себя базу сигнатур вирусов. Вообще.
Rationale:
Главная ценность антивируса - в своевременном обновлении базы.
ClamAV содержит утилиту, которая по крону (как сделано в сборке)
или в режиме демона ходит за обновлениями базы.
Все другие сборки берут некую базу - или ту, которая прямо в архиве,
или более свежую на момент сборки и пакуют ее в отдельный
двоичный rpm, который require'ит сам антивирус. Но это плохо.
Ведь база актуализируется из Интернета, где обновляется очень часто
(раза три-четыре в неделю) и если ее файлы будут числиться за пакетом,
то более "свежий" пакет clamav-database уже через пару дней своего
существования на самом деле будет не обновлять базу, а затирать ее
более старой версией (а apt-get dist-upgrade ее тем не менее
потащит).
Да и "окно" после установки пакета до запуска обновления по крону
(стандартно - daily) когда энное число часов будет использоваться
возможно уже многомесячной давности база сигнатур - совсем не гут.
Поэтому в стартовый скрипт clamd включена проверка на существование
файла базы и закачка ее до запуска демона в случае отсутствия.
Подробная информация о списке рассылки Devel