>Всем привет. Прошу совета по вопросу ClamAV+MTA
>Суть заключается в следующем: общеизвестно ,что работа антивируса создает нагрузку на машине
>на которой он крутится. Согласно документации демон clamd может работать в
>одном из двух сетевых режимах ,через Unix (local) socket и TCP
>socket, что уже хорошо, и значит позволяет в сети установить антивирусный
>сервер который забирает у МТА входящую почту
>на проверку и тем самым не грузит почтарь.У кого есть положительный опыт
>решения?
Опыт есть, положительный. Работает больше полугода.
Куски конфигов для Сендмыла
sendmail.mc
---cut
INPUT_MAIL_FILTER(`spamassassin', `S=local:/var/run/spamass.sock, F=, T=C:15m;S:
INPUT_MAIL_FILTER(`clamav', `S=local:/var/run/clamav/clmilter.sock, F=, T=S:4m;R
define(`confMILTER_MACROS_CONNECT',`b, j, _, {daemon_name}, {if_name},{if_addr}'
dnl define(`confINPUT_MAIL_FILTERS', `spamassassin,clamav')dnl
--cut
Сендмыл работает через clamav-milter
его скрипт на запускание в /etc/rc.d
###
#!/bin/sh
#
# clamav-milter This script starts and stops the clamav-milter daemon
#
SOCKET="/var/run/clamav/clmilter.sock"
CLAMAV_FLAGS="--quiet -f --server 192.168.##.## local:$SOCKET"
###
PATH=$PATH:/usr/bin:/usr/local/sbin:/usr/local/bin
RETVAL=0
start() {
rm -f $SOCKET
echo -n "Starting clamav-milter: "
clamav-milter ${CLAMAV_FLAGS}&
RETVAL=$?
echo
test $RETVAL -eq 0 && touch /var/lock/subsys/clamav-milter
return $RETVAL
}
stop() {
echo -n "Shutting down clamav-milter: "
killall clamav-milter
RETVAL=$?
echo stop clamav $RETVAL
test $RETVAL -eq 0 && rm -f /var/lock/subsys/clamav-milter
return $RETVAL
}
restart() {
stop
start
}
# See how we were called.
case "$1" in
start)
# Start daemon.
start
;;
stop)
# Stop daemon.
stop
;;
restart|reload)
restart
;;
condrestart)
test -f /var/lock/subsys/clamav-milter && $0 restart || :
;;
status)
status clamav-milter
;;
*)
echo "Usage: $0 {start|stop|reload|restart|condrestart|status}"
exit 1
esac
exit $?
#######
Для
/usr/local/etc/clamd.conf
правим
--cut
# Path to the local socket. The daemon doesn't change the mode of the
# created file (portability reasons). You may want to create it in a directory
# which is only accessible for a user running daemon.
#LocalSocket /var/log/clamd/clamd
##### ^^^^ Закомментарить для работы через инет-сервер
# TCP port address.
TCPSocket 3310
# TCP address.
# By default we bind to INADDR_ANY, probably not wise.
# Enable the following to provide some degree of protection
# from the outside world.
#TCPAddr 127.0.0.1
TCPAddr 192.168.##.##
### ^^^ Адрес сервера, на котором крутится демон clamd
--cut
Примерно так.
На сервере, где крутится демон, понятное дело, нужно разрешить доступ в
файрволе на указанный порт.
Замечания приветсвуются.
Желаю успеха!