Postfix clamav-milter [solved]
Решил тут на днях опробовать связку Postfix clamav-milter.
Постфикс пока что настроен на пересылку всего на корпоративный майлсервак, в принципе в таком режиме и останется.
Далее при помощи строк в main.cf подключил clamav-milter
smtpd_milters = unix:/var/run/clamav/clmilter.sock
milter_default_action = reject
Сразу натолкнулся на права доступа на файл сокета.
srwxr-xr-x 1 clamav clamav 0 Окт 9 09:21 clmilter.sock
Через конфиги отрулить не удалось, чето не нашел соответсвующихз параметров. Народ советует рихтовать инит скрипт, мне сие не нравится в принципе ибо до первого апдейта, потому попробую потом через acl. Пока что руками сменил группу на постфикс и добавил права группе на запись. Постфикс перестал ругаццо в логах на права доступа к сокету.
В нете нашел тестовый вирус eicar.com. Кламав его отлавливает на ура. Написал себе любимому письмо с еикаром и отправил через сию сборку. Письмо удачно доставлено абоненту, по логам постфикса видно что именно через него. Никаких сообщений от кламав. Создается впечатление что фильтр на работает.
В связи с этим два вопроса:
1) Можно ли стандартным образом как нить настроить clamav-milter чтобы он сокет делал с нужными правами?
2) Что нужно сделать чтоб постфикс проверял почту, которую собирается переслать на другой сервак?
- Для комментирования войдите или зарегистрируйтесь
Про сокет - думать надо, а думать лень :)))
Про сокет - думать надо, потом.
Относительно прочего:
Совет про правку стартового скрипта правилен. Ты просто пропиши его потом в
CONFIG_PROTECT
и будет тебе счастье.Далее: всё правильно. Насколько я знаю умолчательную конфигурацию, clamav не проверяет локальные и исходящие письма.
Я (правда с sendmail'ом и на FreeBSD, но это - не относящаяся к сути вопроса лирика) стартую clamav-milter со следующими опциями:
--quiet --noreject --local --outgoing --timeout=0 --max-children=50
Умолчательный набор заметно отличался (могу поискать, если тебе интересно).
--
Live free or die
>>Совет про
>>Совет про правку стартового скрипта правилен.
Права отрулил через acl. Все равно включен.
>>clamav не проверяет локальные и исходящие письма
Насчет умолчаний спасибо. Такое поведение для антивиря несколько удивляет. Впрочем чего еще ожидать от никсов, тут бояццо вирусов вроде как некошерно. Выставил -f, после чего постфикс начал рубить все с плеча.
wi пишет: В
ЕМНИП права на создаваемый сокет задаются в стартовом скрипте.
В конфигах, сцуко, (если ты был достаточно внимателен, то должен был бы обратить внимание на тот факт, что у clamav-milter'а персонального конфига нет) не упоминается.
Единственно (!!! :))) ) правильный набор параметров запуска clamav-milter'а смотри в моём предыдущем комментарии ;)
ЗЫ: И ещё про нежелание править конфиги: как мне в Gentoo без правки скрипта
startx
запустить на моём локальном Х-сервере графическое приложение (хотя бы банальный и нелюбимый мноюxterm
) с удалённого Unix-хоста?--
Live free or die
>>ЕМНИП права на
>>ЕМНИП права на создаваемый сокет задаются в стартовом скрипте.
Место, ге он сие творит не нашел. Впрочем теперь и не нужно.
>>В конфигах, сцуко, (если ты был достаточно внимателен, то должен был бы обратить внимание на тот факт, что у clamav-milter'а персонального конфига нет) не упоминается.
По ходу я забыл инглиш. Это не конфиг?
-c FILE, --config-file=FILE
By default clamav-milter uses a default configuration file, this option allows you to specify another
one.
В отднм из толксов советовали в конфиге мильтера User поменять на postfix. Причем ссылались на отсутсвующий в моем дистре конфиг. Я его очень дооолго искал :)). Надо как нить попробовать отрулить права через User
>>ЗЫ: И ещё про нежелание править конфиги....
Каждый дистр имеет некоторые правила поведения со скриптами инициализации. Этим правилам стоит следовать, чтобы дистр был похож на тот,что описан в стандартной документации. Правка /etc/init.d/ нестандартное решение, acl однозначно не апдейтится при обновлении пакета.
По поводу startx мало могу сказать, ибо в вашем варианте я его не использую. Вроде как это обертка под xinit, и должен понимать .xinitrc и .xserverrc
.
Интересно...
Тебя не затруднит процитировать стартовый скрипт и описать своё решение задачи с правами на сокет?
Ты был просто невнимателен.
Я говорил про выделенный персональный конфиг milter'а.
У тебя нет
clamd.conf
(параметры проверки и прочее при работе в standalone-режиме ClamAV Milter берёт оттуда)???Могу прислать/процитировать.
Правда, по наблюдаемому мной в FreeBSD от такого режима отошли (и я даже догадываюсь почему); используют связку ClamAV Milter + Clamd.
Строго говоря, правка скриптов инициализации не есть хорошо в любом случае...
Обновление мира имеет свойство пытаться переписать много чего такого, чего переписывать низзя.
Это я к тому, что там вигурирует такая многообещающая опция, как
-nolisten_tcp
.И без правки скрипта от неё вряд ли избавишься.
А сервер должен работать на полную катушку! :)
--
Live free or die
>>Интересно... >>Т
>>Интересно...
>>Тебя не затруднит процитировать стартовый скрипт и описать своё решение задачи с правами на сокет?
Задачу решил таки частично при помощи acl. Полностью через acl не вышло, похоже postfix не держит acl при обращении к сокету (БАГ!?).
В противном случае можно было бы добавить постфиксу дефаулт права на каталог.
Изначально так:
fs / # cd /var/run
fs run #
fs run # ls -lh |grep clamav
drwxr-xr-x 2 clamav clamav 224 Окт 10 14:07 clamav
Плюс к тому сокеты кламав кламав гшруппе на запись токо владельцу.Ессно нас это не устраивает, потому
fs run # setfacl -m g:postfix:rwx clamav
fs run # ls -lh |grep clamav
drwxrwxr-x+ 2 clamav clamav 224 Окт 10 14:07 clamav
Пришлось поправить файл и добавить clamav-milter отдельный конфиг. Параметры выглядят так:
fs run # grep MILTER /etc/conf.d/clamd
START_MILTER=yes
MILTER_NICELEVEL=19
MILTER_SOCKET="/var/run/clamav/clmilter.sock"
MILTER_OPTS="-c /etc/clmilter.conf -m 50 --timeout=0 -f -N"
Ну и собсно его создать.
fs run # echo User postfix > /etc/clmilter.conf
После запуска кламд
fs run # ls -lh clamav/
итого 8,0K
-rw-rw---- 1 clamav clamav 5 Окт 10 14:07 clamd.pid
srwxrwxrwx 1 clamav clamav 0 Окт 10 14:07 clamd.sock
srwxr-xr-x 1 postfix postfix 0 Окт 10 14:07 clmilter.sock
-rw-rw---- 1 clamav clamav 5 Окт 10 14:07 freshclam.pid
В общем все.