Clamav и Exim

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Clamav и Exim

Непрочитанное сообщение Reken » 2017-10-05 10:16:40

Здравствуйте, подскажите пожалуйста в следующем:
Так как по электронной почте в последнее время стало приходить много вирусов, решил на почтовый сервер поставить антивирус clamav
Версия:
FreeBSD 10.3
clamav-0.99.2_5
exim-4.89_1
Настройку выполнил следующим образом:
Установил из портов clamav
Отредактировал configure exim

Код: Выделить всё

av_scanner = clamd:/var/run/clamav/clamd
acl_check_data:
deny malware = *
message = "In e-mail found VIRUS - $malware_name"
accept
Отредактировал freshclam.conf

Код: Выделить всё

Раскоментировал строку:
DatabaseMirror db.ru.clamav.net
Добавил в rc.conf

Код: Выделить всё

clamav_clamd_enable="YES"
clamav_freshclam_enable="YES"
Ну и после перезапустил сервер...Почта работает…
Подскажите:
Правильно ли я выполнил привязку clamav к exim? На сколько я понял обновляться антивирус будет автоматически, за это будет отвечать freshclam? Сильно ли будет антивирус «грузить» сервер?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Clamav и Exim

Непрочитанное сообщение xM » 2017-10-05 21:13:18

Reken писал(а): Правильно ли я выполнил привязку clamav к exim?
см. логи в /var/log/clamav - там будут результаты.
Попутно рекомендовал бы прошерстить конфиги clamav и freshclam на предмет возможно нужных вам настроек.
Ну и, если есть желание, можете подключить неофициальные базы
https://kostikov.co/post/podklyuchenie- ... z-k-clamav
IT voodoo blog https://kostikov.co

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Clamav и Exim

Непрочитанное сообщение Reken » 2017-10-06 10:25:27

Вроде бы нет упоминаний про связку с EXIM
Или так и должно быть?

Код: Выделить всё

root@freebsd:~ # tail /var/log/clamav/clamd.log
Fri Oct  6 09:29:19 2017 -> SWF support enabled.
Fri Oct  6 09:29:19 2017 -> HTML support enabled.
Fri Oct  6 09:29:19 2017 -> XMLDOCS support enabled.
Fri Oct  6 09:29:19 2017 -> HWP3 support enabled.
Fri Oct  6 09:29:19 2017 -> Self checking every 600 seconds.
Fri Oct  6 09:29:19 2017 -> Set stacksize to 1114112
Fri Oct  6 09:39:19 2017 -> SelfCheck: Database status OK.
Fri Oct  6 09:51:15 2017 -> SelfCheck: Database status OK.
Fri Oct  6 10:01:35 2017 -> SelfCheck: Database status OK.
Fri Oct  6 10:11:53 2017 -> SelfCheck: Database status OK.

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Clamav и Exim

Непрочитанное сообщение xM » 2017-10-06 16:04:20

Reken писал(а): Вроде бы нет упоминаний про связку с EXIM
Cо связкой Exim всё просто и понятно.
Также в логе ClamAV должны отображаться результаты сканирования

Код: Выделить всё

Fri Oct  6 15:01:39 2017 -> /var/spool/exim/scan/1e0SG2-000EOX-9x/1e0SG2-000EOX-9x.eml: OK
IT voodoo blog https://kostikov.co

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Clamav и Exim

Непрочитанное сообщение Reken » 2017-10-09 9:17:43

xM писал(а):Cо связкой Exim всё просто и понятно
Я вроде бы всё так и сделал, как в инструкции.

Но в логах clamav у меня нет такого вывода:
xM писал(а):Fri Oct 6 15:01:39 2017 -> /var/spool/exim/scan/1e0SG2-000EOX-9x/1e0SG2-000EOX-9x.eml: OK
Где может быть ошибка? Clamav у меня запускается от имени пользователя Clamav. Нужно ли менять пользователя на Exim?

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Clamav и Exim

Непрочитанное сообщение xM » 2017-10-09 13:37:08

Reken писал(а): Где может быть ошибка?
В настройках и правах доступа.
IT voodoo blog https://kostikov.co

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Clamav и Exim

Непрочитанное сообщение Reken » 2017-10-09 14:29:39

xM писал(а):В настройках и правах доступа.
Подскажите пожалуйста, от какого пользователя нужно запускать clamav ?
И какие права нужно выставить на каталоги

Код: Выделить всё

/var/spool/exim/
/var/db/clamav/
Пытаюсь запустить clamav от пользователя exim, не получается

Код: Выделить всё

ERROR: Can't get information about user exim
P.S. Получается в данный момент clamav не отрабатывает при проверке почты?

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Clamav и Exim

Непрочитанное сообщение xM » 2017-10-09 15:51:29

Демоны ClamAV работают от clamav.
Проверьте создаётся ли у вас сокет-файл по пути указанному здесь

Код: Выделить всё

av_scanner = clamd:/var/run/clamav/clamd
Он должен соответствовать указанному в опции LocalSocket в clamd.conf
Скорее всего ошибка здесь.
IT voodoo blog https://kostikov.co

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Clamav и Exim

Непрочитанное сообщение Reken » 2017-10-09 16:03:55

В файле /usr/local/etc/exim/configure у меня указано так:

Код: Выделить всё

av_scanner = clamd:/var/run/clamav/clamd.sock
В файле /usr/local/etc/clamd.conf указано так:

Код: Выделить всё

LocalSocket /var/run/clamav/clamd.sock
И вывод команды:

Код: Выделить всё

ls /var/run/clamav
clamd.pid   clamd.sock   freshclam.pid
В данный момент Сlamav работает от пользователя clamav. Точно ли информация о связке с EXIM должна отображаться в логах Clamav?

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Clamav и Exim

Непрочитанное сообщение xM » 2017-10-09 16:15:19

По умолчанию нет, но при включении опции LogClean в yes, соответственно, да.
Вообще, смотрите конфиг clamav - там всё подробнейшим образом прокомментировано.
IT voodoo blog https://kostikov.co

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35454
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Clamav и Exim

Непрочитанное сообщение Alex Keda » 2017-10-10 8:31:48

Вирус тестовый отправьте и не мучайтесь
Убей их всех! Бог потом рассортирует...

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Clamav и Exim

Непрочитанное сообщение Reken » 2018-02-05 15:08:29

Подскажите пожалуйста. В связке EXIM и CLAMAV. Настройка CLAMAV сводилась к тому, что CLAMAV просто отбрасывал вирусные письма:

Код: Выделить всё

acl_check_data:

deny malware = *
message = "In e-mail found VIRUS - $malware_name"
log_message = Malware found: $malware_name
Теперь задача немного усложнилась, требуется вирусные письма не отбрасывать, а пересылать админу.
С ниже перечисленными правилами, CLAMAV и пересылка будут работать?

Код: Выделить всё

acl_check_data:

warn message = X-Quarantine-Me-Malware:$malware_name
log_message = Malware found: $malware_name
deny malware = *
malware = */defer_ok
set acl_m3 = $malware_name


# В качестве последнего в списке ROUTERS
check_malware:
driver = redirect
condition = ${if def:h_X-Quarantine-Me-Malware: {1}{0}}
headers_remove = Subject
headers_add = Subject: [CLAMAV:$acl_m3] $h_Subject
data = admin@domen.local
file_transport = address_file

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Clamav и Exim

Непрочитанное сообщение Reken » 2018-02-07 10:18:33

Подскажите пожалуйста, где я допустил ошибку. EXIM и CLAMAV настроил что бы зараженные письма пересылались на админский ящик, вместо этого вообще вся почта отправляется только на админский ящик, все остальные пользователи не получают почту... При этом в логах CLAMAV видно что в письмах не обнаружено угрозы... Почему он тогда всю почту пересылает админу?

Код: Выделить всё

acl_check_data:

warn message = X-Quarantine-Me-Malware:$malware_name
log_message = Malware found: $malware_name
deny malware = *
malware = */defer_ok
set acl_m3 = $malware_name


# Первый ROUTERS в списке

check_malware:
driver = redirect
condition = ${if def:h_X-Quarantine-Me-Malware: {1}{0}}
headers_remove = Subject
headers_add = Subject: [CLAMAV:$acl_m3] $h_Subject
data = admin@domen.local
file_transport = address_file

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Clamav и Exim

Непрочитанное сообщение xM » 2018-02-07 16:58:21

Добавить unseen в роутере
IT voodoo blog https://kostikov.co

Reken
лейтенант
Сообщения: 619
Зарегистрирован: 2014-06-30 11:23:24

Clamav и Exim

Непрочитанное сообщение Reken » 2018-02-09 8:35:51

xM писал(а):Добавить unseen в роутере
Не помогло

Вся почта пересылается только админу. Роутер Clamav срабатывает, и следующему роутеру уже нечего отправлять всем пользователям... Вот только почему роутер Clamav "не зараженные" письма пересылает админу, непонятно.

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1316
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Clamav и Exim

Непрочитанное сообщение xM » 2018-02-09 11:53:51

Не получается написать роутер, напишите системный фильтр.
Там тоже примерно. Пишете условие, перезапись темы и для доставки

Код: Выделить всё

unseen deliver admin@domen.local
IT voodoo blog https://kostikov.co