(на примере Mandrake Linux)
Результатом всего этого будет следующее: все письма с вирусами вместо доставки получателю, будут размещаться в каталоге /var/drweb/infected/ и администратору будет слаться мыло с сообщением об этом.
Выясняем какая у нас версия glibc:
# urpmq glibc -r
Заходим на http://www.drweb.ru/unix/. В зависимости от версии качаем текущую версию drweb в tar.gz для определенной нами версии glibc. Например, для glibc 2.3 на момент написания данной статьи так:
wget -c ftp://ftp.drweb.ru/pub/unix/drweb-4.29.2-glibc.2.3.tar.gz
Там же выбираем drweb-postfix и качаем текущую версию. Например, так:
wget -c ftp://ftp.drweb.ru/pub/unix/drweb-postfix-4.29.12-F-linux.tar.gz
Разворачиваем оба архива:
# tar -xzf ./drweb-4.29.5-glibc.2.3.tar.gz # tar -xzf ./drweb-postfix-4.29.12-F-linux.tar.gz
Сначала устанавливаем drweb: для этого в его развернутом каталоге запускаем скрипт:
# install.sh
На вопрос о путях отвечаем Enter (ставится в /opt/drweb). На вопрос о языке отвечаем 1 (русский).
Добавляем в автозагрузку демон drwebd
# chkconfig drwebd on
запускаем демон
# /etc/init.d/drwebd start
Обновляем базу данных вирусов
# /opt/drweb/update/update.pl
и вставляем следующую строку в /etc/crontab для регулярного авто-обновления базы (раз в 3 часа, например :-) )
5 */3 * * * root /opt/drweb/update/update.pl
Теперь заходим в развернутый каталог drweb-postfix и копируем в нужные каталоги (/etc и /opt) все что там есть. Например, так:
# cd ../drweb-postfix # cp -Rf ./* /
Создаем системного пользователя drweb, который не имеет прав входа в систему. Например, так: Генерируем пароль
# export MY_PWD=`md5sum /var/log/messages |gawk '{ print $1 }'`
Добавляем юзера
# useradd -c "DrWeb Antivirus" -d "/var/drweb" -p "$MY_PWD" -u 333 -s "/bin/false" drweb
Меняем права каталогу /var/drweb/ рекурсивно
# chown -R drweb.drweb /var/drweb
Правим файлик /etc/drweb/drweb_postfix.conf В нем меняем на свои следующие переменные (например, так):
AdminMail = drweb@localhost FilterMail = drweb@localhost RedirectMail = drweb@localhost
Правим файлик /etc/postfix/master.cf. Заменяем строку:
smtp inet n - y - - smtpd
на строку:
smtp inet n - y - - smtpd -o content_filter=filter:dummy
и добавляем в конец следующее:
filter unix - n n - 16 pipe
flags=R user=drweb argv=/opt/drweb/drweb-postfix -f ${sender} -- ${recipient}
Перегружаем Postfix:
/etc/init.d/postfix restart
Смотрим на появление отфильтрованных вирусов в /var/drweb/infected/ :-) и покупаем ключик у drweb, чтобы включить лечение и другие возможности. Однако, для фильтрации зараженных писем достаточно evaluation key.