[Exim-users] Kaspersky Security 8.0 for Linux Mail Server

110 views
Skip to first unread message

Alexander Titaev

unread,
Jul 29, 2020, 5:49:53 AM7/29/20
to Exim MTA на русском
Здравствуйте, Exim.

Кто нибудь имел дело с этим чудом?
Имею в конфиге вот такую секцию

923 acl_check_content:
924 #klms-filter-begin
925 # warn set acl_m_kav4lms_answer = ${dlfunc{/opt/kaspersky/klms/lib64/libklms-exim.so}{scan}{${spool_directory}/input}}
926 warn set acl_m_kav4lms_answer = ${dlfunc{/opt/kaspersky/klms/lib64/libklms-exim.so}{scan}{/var/spool/exim/input/}}
927 # warn set acl_m_kav4lms_answer = ${dlfunc{/opt/kaspersky/klms/lib64/libklms-exim.so}{scan}{${spool_directory}/input/${substr {5}{1}{$message_id}}}}
928 set acl_m_klms_result_code = ${if match {$acl_m_kav4lms_answer}{^([0-9]\{3\}) .*}{$1}{}}
929 set acl_m_klms_result_message = ${if match {$acl_m_kav4lms_answer}{^[0-9]\{3\} ([^\\(]+)( \\(.+\\))?\$}{$1}{}}
930 set acl_m_klms_found_threats = ${if match {$acl_m_kav4lms_answer}{^[0-9]\{3\} [^\\(]+ \\(threats found: (.+)\\)\$}{$1} {}}
931 defer condition = ${if match {$acl_m_klms_result_code}{^[245]}{no}{yes}}
932 log_message = LMS check failed, unexpected answer: $acl_m_kav4lms_answer
933 message = Temporary local problem - please try later
934 defer condition = ${if eq {${substr_0_1:$acl_m_klms_result_code}}{4}{yes}{no}}
935 log_message = LMS check defer: $acl_m_kav4lms_answer
936 message = $acl_m_klms_result_code $acl_m_klms_result_message
937 deny condition = ${if eq {${substr_0_1:$acl_m_klms_result_code}}{5}{yes}{no}}
938 log_message = LMS check reject: $acl_m_kav4lms_answer
939 message = $acl_m_klms_result_code $acl_m_klms_result_message
940 warn condition = ${if eq {${substr_0_1:$acl_m_klms_result_code}}{2}{yes}{no}}
941 logwrite = LMS check accept: $acl_m_kav4lms_answer
942 #klms-filter-end

запуск
exim -C ./exim.conf.klms -bh 127.0.0.1 < tt.msg
заканчивается

>>> using ACL "acl_check_content"
>>> processing "warn" (./exim.conf.klms 926)
exim: symbol lookup error: /opt/kaspersky/klms/lib64/libklms-exim.so: undefined symbol: string_copy

если выкрутить логи каспера в debug то видно что идет общение с unix:/var/run/klms/klms_scanner_sock

--
С уважением,
Alexander mailto:t...@irk.ru


_______________________________________________
Exim-users mailing list
Exim-...@mailground.net
http://mailground.net/mailman/listinfo/exim-users

dawnshade

unread,
Jul 29, 2020, 6:01:48 AM7/29/20
to exim-...@mailground.net

Попросите прайват фикс в саппорте, известная проблема. Либо могу позже приватно выслать. Ща не у компа

Среда, 29 июля 2020, 12:51 +03:00 от Alexander Titaev <t...@irk.ru>:
--
dawnshade

Alexander Titaev

unread,
Jul 29, 2020, 6:12:18 AM7/29/20
to dawnshade, Exim MTA на русском
Здравствуйте, dawnshade.

Вы писали 29 июля 2020 г., 18:01:15:


> Попросите прайват фикс в саппорте, известная проблема. Либо могу позже приватно выслать. Ща не у компа

о как! те этой проблеме уже более двух лет...
заранее спасибо. С нетерпением жду.

Viktor Cheburkin

unread,
Jul 29, 2020, 6:59:11 AM7/29/20
to Exim MTA на русском
Hi!

Подозреваю, что exim должен быть собран с

CFLAGS_DYNAMIC+=-Xlinker --export-dynamic
EXTRALIBS_EXIM+=-Xlinker --export-dynamic

29 июля 2020 г., в 12:49, Alexander Titaev <t...@irk.ru> написал(а):

-- 
Victor Cheburkin
VC319-RIPE, VC1-UANIC

dawnshade

unread,
Jul 29, 2020, 7:11:30 AM7/29/20
to Exim MTA на русском
Там вот эти изменения из 4,93 поломали
 
JH/45 local_scan API: documented the current smtp_printf() call. This changed
 for version 4.90 - adding a "more data" boolean to the arguments.
 Bumped the ABI version number also, this having been missed previously;
 release versions 4.90 to 4.92.3 inclusive were effectively broken in
 respect of usage of smtp_printf() by either local_scan code or libraries
 accessed via the ${dlfunc } expansion item. Both will need coding
 adjustment for any calls to smtp_printf() to match the new function
 signature; a FALSE value for the new argument is always safe.
 
Среда, 29 июля 2020, 14:00 +03:00 от Viktor Cheburkin <v...@vc.org.ua>:
 
 
--
- -
 

Alexander Titaev

unread,
Jul 29, 2020, 11:12:10 AM7/29/20
to Exim MTA на русском
Здравствуйте, dawnshade.

Вы писали 29 июля 2020 г., 18:01:15:

> Попросите прайват фикс в саппорте, известная проблема. Либо могу позже приватно выслать. Ща не у компа

спасибо, эта проблема решилась. Но вылезла другая

если я запускаю exim c конфигом от klms, то в лог начинает валиться
Message scan failed: Cannot create workdir /tmp/klms_filter/klms_filter_497_12: No such file or directory: No such file or directory

при этом там самой диры нет, но директория верхнего уровня есть
[root@mail-serv exim]# ll -d /tmp/klms_filter/klms_filter_497_12
ls: cannot access /tmp/klms_filter/klms_filter_497_12: No such file or directory
[root@mail-serv exim]# ll -d /tmp/klms_filter
drwxrwxrwx 3 kluser klusers 4096 Jul 29 16:38 /tmp/klms_filter/


но самое забавное, что если я запускаю на портах 25:587:465
exim без klms, а на порту 2525 с klms
и отсылаю через 2525

то такой ругани нет, дира создается
[root@mail-serv exim]# ll -d /tmp/klms_filter/*
drwxrws--- 2 kluser klusers 4096 Jul 28 13:18 /tmp/klms_filter/klms_filter_491_492/
drwxrws--- 2 dovenull mail 4096 Jul 29 16:56 /tmp/klms_filter/klms_filter_497_12/

письмо до получателя доходит. В нем в хидерах
X-KLMS-Rule-ID: 1
X-KLMS-Message-Action: skipped
X-KLMS-AntiSpam-Status: not scanned, whitelist
X-KLMS-AntiPhishing: not scanned, whitelist
X-KLMS-AntiVirus: Kaspersky Security for Linux Mail Server, version 8.0.3.30, not scanned, whitelist

но вот в логах этого нет, там есть только
2020-07-29 16:00:42 1k0mdO-00027f-7h LMS check accept: 250 OK
2020-07-29 16:00:42 1k0mdO-00027f-7h <= its...@alvari.com H=([192.168.11.102]) [84.244.9.105] P=esmtpa A=plain_login:its...@alvari.com S=889 id=1757468214.2...@alvari.com from <its...@alvarigroup.com> for san...@gmail.com
а
=>
нет

и я как-то туплю напрочь от такой магии

других MTA на хосте нет, в хидерах полученого письма после Received с этим message-id идет гугловый Received

Если послать на gmail exe файл то в ящике магическим способом образуется отбой вида

This message was created automatically by mail delivery software.

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

san...@gmail.com
host gmail-smtp-in.l.google.com [64.233.165.26]
SMTP error from remote mail server after end of data:
552-5.7.0 This message was blocked because its content presents a potential
552-5.7.0 security issue. Please visit

при этом message-id из хидеров этого письма нет в логах

dawnshade

unread,
Jul 29, 2020, 11:26:07 AM7/29/20
to Exim MTA на русском
Есть подозрение, что у вас по /tmp прошелся systemd или аналогичный tmp cleaner. Фикс проблемы — сделать исключения для него и перезапустить klms
 
drwxrws--- 2 kluser klusers
drwxrws--- 2 dovenull mail
 
у вас на парент /tmp пермишены не поехали? откуда там довкот как дома у себя ходит? может и он удалять.
 
удаление его (klms) темфолдера — известная болезнь, решение которой не дать стороннему софту там резвиться.
 
 
Среда, 29 июля 2020, 18:13 +03:00 от Alexander Titaev <t...@irk.ru>:
 
 
--
- -
 

Alexander Titaev

unread,
Jul 29, 2020, 11:33:01 AM7/29/20
to Exim MTA на русском
Здравствуйте, dawnshade.

Вы писали 29 июля 2020 г., 23:25:35:

> Есть подозрение, что у вас по /tmp прошелся systemd или аналогичный tmp cleaner. Фикс проблемы — сделать исключения для него и перезапустить klms
>
> drwxrws--- 2 kluser klusers
> drwxrws--- 2 dovenull mail
>
> у вас на парент /tmp пермишены не поехали? откуда там довкот как дома у себя ходит? может и он удалять.
>
> удаление его (klms) темфолдера — известная болезнь, решение которой не дать стороннему софту там резвиться.
>

[root@mail-serv exim]# ll -d /tmp

drwxrwxrwt. 16 root root 4096 Jul 29 17:24 /tmp/

exim запущен от dovecot. Так исторически сложилось

а как объяснить что процесс на 2525 с этим живет без проблем? все отличие

[root@mail-serv exim]# diff exim.conf exim.conf.klms
58c58,59
< daemon_smtp_port = 25:465:587
---
> #daemon_smtp_port = 25:465:587
> daemon_smtp_port = 2525
78a80,82
> #klms-exim-trusted-users-begin
> trusted_users = kluser
> #klms-exim-trusted-users-end
239c243
< av_scanner=clamd:/run/clamd.scan/clamd.sock
---
> #av_scanner=clamd:/run/clamd.scan/clamd.sock
920a925,941
> #klms-filter-begin


> warn set acl_m_kav4lms_answer = ${dlfunc{/opt/kaspersky/klms/lib64/libklms-exim.so}{scan}{${spool_directory}/input}}

> set acl_m_klms_result_code = ${if match {$acl_m_kav4lms_answer}{^([0-9]\{3\}) .*}{$1}{}}

> set acl_m_klms_result_message = ${if match {$acl_m_kav4lms_answer}{^[0-9]\{3\} ([^\\(]+)( \\(.+\\))?\$}{$1}{}}

> set acl_m_klms_found_threats = ${if match {$acl_m_kav4lms_answer}{^[0-9]\{3\} [^\\(]+ \\(threats found: (.+)\\)\$}{$1}{}}

> defer condition = ${if match {$acl_m_klms_result_code}{^[245]}{no}{yes}}

> log_message = LMS check failed, unexpected answer: $acl_m_kav4lms_answer

> message = Temporary local problem - please try later

> defer condition = ${if eq {${substr_0_1:$acl_m_klms_result_code}}{4}{yes}{no}}

> log_message = LMS check defer: $acl_m_kav4lms_answer

> message = $acl_m_klms_result_code $acl_m_klms_result_message


> deny condition = ${if eq {${substr_0_1:$acl_m_klms_result_code}}{5}{yes}{no}}

> log_message = LMS check reject: $acl_m_kav4lms_answer

> message = $acl_m_klms_result_code $acl_m_klms_result_message


> warn condition = ${if eq {${substr_0_1:$acl_m_klms_result_code}}{2}{yes}{no}}

> logwrite = LMS check accept: $acl_m_kav4lms_answer

> #klms-filter-end
1059,1062c1080,1083
< # Reject virus infested messages.
< deny message = This message contains malware ($malware_name)
< # demime = *
< malware = */defer_ok
---
> # # Reject virus infested messages.
> # deny message = This message contains malware ($malware_name)
> ## demime = *
> # malware = */defer_ok
[root@mail-serv exim]#

Alexander Titaev

unread,
Jul 29, 2020, 11:44:44 AM7/29/20
to Exim MTA на русском
Здравствуйте, dawnshade.

Вы писали 29 июля 2020 г., 23:25:35:

> Есть подозрение, что у вас по /tmp прошелся systemd или аналогичный tmp cleaner. Фикс проблемы — сделать исключения для него и перезапустить klms
>
> drwxrws--- 2 kluser klusers
> drwxrws--- 2 dovenull mail
>
> у вас на парент /tmp пермишены не поехали? откуда там довкот как дома у себя ходит? может и он удалять.
>
> удаление его (klms) темфолдера — известная болезнь, решение которой не дать стороннему софту там резвиться.
>

аа, это проблема PrivateTmp=true в /etc/systemd/system/multi-user.target.wants/exim.service

сколько у меня этот чертов systemd крови выпил...

Reply all
Reply to author
Forward
0 new messages