Re: [Exim-users] exim 4.90 странные ошибки в логах

2018-01-13 Пенетрантность Lena
Починили:
https://bugs.exim.org/show_bug.cgi?id=2223

Как скомпилировать под FreeBSD:

cd /usr/ports/mail/exim
make clean patch

Приложить к src/lookups/mysql.c патч, вырезанный из
https://git.exim.org/exim.git/commitdiff_plain/ba0e37b13c652435898f9b1050d6fe648875b125

make install clean

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



Re: [Exim-users] exim 4.90 странные ошибки в логах

2018-01-12 Пенетрантность Mikhail Golub

При дебаге вот это интересно на мой взгляд.
Почему "query was not one that returns data"?
На 4.89 все устраивает.

14:55:46 66397   type=mysql key="UPDATE whitelist set date=now() where 
sender_ip='185.128.235.25' limit 1;"
14:55:46 66397 database lookup required for UPDATE whitelist set 
date=now() where sender_ip='185.128.235.25' limit 1;
14:55:46 66397 MySQL query: UPDATE whitelist set date=now() where 
sender_ip='185.128.235.25' limit 1;

14:55:46 66397 MYSQL using cached connection for (/tmp/mysql.sock)/exim/exim
14:55:46 66397 MYSQL: query was not one that returns data
14:55:46 66397 lookup forced cache cleanup
14:55:46 66397 lookup yielded: 1
14:55:46 66397  ├──expanding: ${lookup mysql{UPDATE whitelist set 
date=now() where sender_ip='${quote_mysql:$sender_host_address}' limit 1;}}

14:55:46 66397  └─result: 1
14:55:46 66397 check condition = ${lookup mysql{UPDATE whitelist set 
date=now() where sender_ip='${quote_mysql:$sender_host_address}' limit 1;}}

14:55:46 66397 = 1
14:55:46 66397 check set acl_m_white = 1



12.01.2018 9:51, Mikhail Golub пишет:

Спасибо.

Добавил. Долго ждать не пришлось.

WHITELIST = UPDATE whitelist set date=now() where 
sender_ip='${quote_mysql:$sender_host_address}' limit 1;


warn set acl_m_sq = ${lookup mysql{WHITELIST}}
  logwrite = sq:<$acl_m_sq>
  condition = ${if eq{${substr_0_1:$acl_m_sq}}{1}}
  set acl_m_white = 1

2018-01-12 09:47:20 sq:<1▒)\004\b>
2018-01-12 09:48:43 
sq:<0rator.ua)(|(&(!(userAccountControl:1.2.840.113556.1.4.803:=2))(msExchRecipientTypeDetails=1))(msExchRecipientTypeDetails=4))(objectclass=user))> 


2018-01-12 09:48:44 sq:<0WHERE relay_ip = '185.128.235.25'>

Баг?
Баг.


11.01.2018 21:16, l...@lena.kiev.ua пишет:

warn condition = ${lookup mysql{GOOD_SENDER}}
  set acl_m_white = 1



И как отловить эти глюки в 4.90 даже мыслей пока нет.


Заменить на:

  warn set acl_m_sq = ${lookup mysql{GOOD_SENDER}}
   logwrite = sq:<$acl_m_sq>
   condition = ${if eq{${substr_0_1:$acl_m_sq}}{1}}
   set acl_m_white = 1

Потом

grep 'sq:' /var/log/exim/mainlog

и если найдется какой-то мусор, то оформить новый баг на
http://bugs.exim.org
привести этот кусок ACL и вывод этого grep.

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




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




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



Re: [Exim-users] exim 4.90 странные ошибки в логах

2018-01-11 Пенетрантность Mikhail Golub

Спасибо.

Добавил. Долго ждать не пришлось.

WHITELIST = UPDATE whitelist set date=now() where 
sender_ip='${quote_mysql:$sender_host_address}' limit 1;


warn set acl_m_sq = ${lookup mysql{WHITELIST}}
 logwrite = sq:<$acl_m_sq>
 condition = ${if eq{${substr_0_1:$acl_m_sq}}{1}}
 set acl_m_white = 1

2018-01-12 09:47:20 sq:<1▒)\004\b>
2018-01-12 09:48:43 
sq:<0rator.ua)(|(&(!(userAccountControl:1.2.840.113556.1.4.803:=2))(msExchRecipientTypeDetails=1))(msExchRecipientTypeDetails=4))(objectclass=user))>

2018-01-12 09:48:44 sq:<0WHERE relay_ip = '185.128.235.25'>

Баг?
Баг.


11.01.2018 21:16, l...@lena.kiev.ua пишет:

warn condition = ${lookup mysql{GOOD_SENDER}}
  set acl_m_white = 1



И как отловить эти глюки в 4.90 даже мыслей пока нет.


Заменить на:

  warn set acl_m_sq = ${lookup mysql{GOOD_SENDER}}
   logwrite = sq:<$acl_m_sq>
   condition = ${if eq{${substr_0_1:$acl_m_sq}}{1}}
   set acl_m_white = 1

Потом

grep 'sq:' /var/log/exim/mainlog

и если найдется какой-то мусор, то оформить новый баг на
http://bugs.exim.org
привести этот кусок ACL и вывод этого grep.

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




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



Re: [Exim-users] exim 4.90 странные ошибки в логах

2018-01-11 Пенетрантность Lena
> warn condition = ${lookup mysql{GOOD_SENDER}}
>  set acl_m_white = 1

> И как отловить эти глюки в 4.90 даже мыслей пока нет.

Заменить на:

 warn set acl_m_sq = ${lookup mysql{GOOD_SENDER}}
  logwrite = sq:<$acl_m_sq>
  condition = ${if eq{${substr_0_1:$acl_m_sq}}{1}}
  set acl_m_white = 1

Потом

grep 'sq:' /var/log/exim/mainlog

и если найдется какой-то мусор, то оформить новый баг на
http://bugs.exim.org
привести этот кусок ACL и вывод этого grep.

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



Re: [Exim-users] exim 4.90 странные ошибки в логах

2018-01-11 Пенетрантность Mikhail Golub

Всем привет.

Помогло ... и навредило :(
Отправило всех в белый список. Спамеры немного порадовались :)

Например, есть такая конструкция.
GOOD_SENDER = UPDATE `good_sender_address` SET update_date=now() WHERE 
`address`='${quote_mysql:$sender_address}' or 
`address`='${quote_mysql:$sender_address_domain}';


warn condition = ${lookup mysql{GOOD_SENDER}}
 set acl_m_white = 1

На 4.89 выражение отрабатывает нормально и однозначно. Если UPDATE 
отработал и вернул не нулевое значение - condition истина. Если вернул 0 
- ложь.


На 4.90 же lookup возвращает (не всегда, случайным образом) кроме 
значения еще какую-то чушь после значения.


Warning: ACL "warn" statement skipped: condition test deferred: invalid 
"condition" value "0▒"


invalid "condition" value "0d"

Или:
invalid "condition" value "0TIME=60 NETTIME=3 user"
Здесь вообще возвращаемое значение 0, а остальное - часть строки запроса 
к LDAP. Она есть в конфиге:

LDAP_AUTH= TIME=60 NETTIME=3 user=...

Или вообще смесь ldap+mysql. Как? :)

invalid "condition" value "0NETTIME=3 user="***" pass=*** 
REFERRALS=nofollow 
ldap:///DC=***?proxyAddresses?sub?(&(proxyAddresses(/tmp/mysql.sock)


Причем здесь сокет MySQL!? :(

В общем, снова откат на 4.89.
И как отловить эти глюки в 4.90 даже мыслей пока нет.

P.S. В /etc/make.conf
mail_exim_SET_FORCE=DAEMON EMBEDDED_PERL CONTENT_SCAN LSEARCH SUID SPF 
SRS MYSQL OPENLDAP TLS DKIM
mail_exim_UNSET_FORCE=IPV6 MAILDIR MAILSTORE NIS PAM SASLAUTHD AUTH_SASL 
AUTH_CRAM_MD5 AUTH_RADIUS AUTH_PLAINTEXT INTERNATIONAL DSN


Т.е. опции компиляции одинаковы.




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



Re: [Exim-users] exim 4.90 странные ошибки в логах

2018-01-10 Пенетрантность Mikhail Golub

Доброго времени суток.

Вернулся снова на версию 4.90.

Ошибки появляются не постоянно.
И появляются в lookup-ах к MySQL, LDAP, файлам.

Ответил себе на вопрос.
https://www.mail-archive.com/exim-users@mailground.net/msg02142.html

Добавил "{yes}{no}" - ошибок уже час нет.
На 4.89 работал успешно в "сокращенном варианте".

Например, выдавало ошибку на такой condition в роутере.

condition = ${lookup ldap \
{LDAP_AUTH \
  ldap:///LDAP_BASEDN?proxyAddresses?sub?\ 
  (&(proxyAddresses=smtp:${quote_ldap:$local_part}@$domain)\


(|(&(!(userAccountControl:1.2.840.113556.1.4.803:=2))(msExchRecipientTypeDetails=1))(msExchRecipientTypeDetails=4))\
(objectclass=user))}}


2018-01-10 16:14:50 H=mail.smarttender.biz [185.128.235.25] Warning: ACL 
"warn" statement skipped: condition test deferred: invalid "condition" 
value 
"0@***)(|(&(!(userAccountControl:1.2.840.113556.1.4.803:=2))(msExchRecipientTypeDetails=1))(msExchRecipientTypeDetails=4))(objectclass=user))"


Добавил "{yes}{no}" - полет нормальный.


05.01.2018 12:56, l...@lena.kiev.ua пишет:

Вернул 4.89 - ошибки пропали.


Если не дебажить (set, logwrite, condition) и по результатам не жаловаться,
то так и останется.

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




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



Re: [Exim-users] exim 4.90 странные ошибки в логах

2018-01-05 Пенетрантность Lena
> Вернул 4.89 - ошибки пропали.

Если не дебажить (set, logwrite, condition) и по результатам не жаловаться,
то так и останется.

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



Re: [Exim-users] exim 4.90 странные ошибки в логах

2018-01-05 Пенетрантность Mikhail Golub

05.01.2018 1:19, Alexander Sheiko пишет:

Привет всем.

Обнаружился сабж, с которым ранее не сталкивался:

...

2018-01-04 11:28:20 H=(163.53.168.95) [163.53.168.95] F=
temporarily rejected RCPT : invalid "condition" value
"1Secure Shell Login


На 4.90 подобных ошибок было валом в логе (писал в рассылку).
В лог попадают куски из запросов к SQL, LDAP (в начале идет результат 
... например "0" и сразу же за ним "SELECT ..." - получаем ошибку). 
Закономерности не нашел :(

Вернул 4.89 - ошибки пропали.


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



Re: [Exim-users] exim 4.90 странные ошибки в логах

2018-01-04 Пенетрантность Lena
> > Замените, пожалуйста, последнее condition на:
> >
> >   set acl_m_sq = ${lookup mysql...
> >   logwrite = sq:<$acl_m_sq>
> >   condition = $acl_m_sq
> 
> На тестовом своём клиенте, набирающем нужные баллы, пишет sq:<1> и
> нормально заносит в блеклист.

Баг может проявляться не каждый раз. Пусть так и остается.
Если проявится, то будет более наглядная информация для разработчиков,
нужно будет написать в bugs.exim.org

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



Re: [Exim-users] exim 4.90 странные ошибки в логах

2018-01-04 Пенетрантность Alexander Sheiko

В письме от Птн, 05 Янв 2018, 02:10 l...@lena.kiev.ua пишет:

> Все внесенные в cbl внесены и в zen
> (zen - сборник нескольких источников, в том числе cbl).

Спасибо - таки проглядел.

> Замените, пожалуйста, последнее condition на:
>
>   set acl_m_sq = ${lookup mysql...
>   logwrite = sq:<$acl_m_sq>
>   condition = $acl_m_sq

На тестовом своём клиенте, набирающем нужные баллы, пишет sq:<1> и
нормально заносит в блеклист.

-- 
Alexander Sheiko


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



Re: [Exim-users] exim 4.90 странные ошибки в логах

2018-01-04 Пенетрантность Lena
> 2018-01-04 11:28:17 H=(163.53.168.95) [163.53.168.95] Warning: Listed in
> DNSBL zen.spamhaus.org
> 2018-01-04 11:28:18 H=(163.53.168.95) [163.53.168.95] Warning: Listed in
> DNSBL cbl.abuseat.org

Все внесенные в cbl внесены и в zen
(zen - сборник нескольких источников, в том числе cbl).

> 2018-01-04 11:28:20 H=(163.53.168.95) [163.53.168.95] F=
> temporarily rejected RCPT : invalid "condition" value
> "1Secure Shell Login

> 1 Temporarily rejected RCPT: invalid "condition" value "1Secure Shell Login
> 1 Temporarily rejected RCPT: invalid "condition" value "1t 23/udp
> 1 Temporarily rejected RCPT: invalid "condition" value "1udp #Secure Shell 
> Login
> 
> Похоже на куски из /etc/services.

>   dropmessage   = Your host looks like malicious spam sender\nIP
> $sender_host_address added to BlackList\nDetails:\n$acl_c_bouncemessage
>   log_message   = IP $sender_host_address added to BlackList
>   condition = ${if >{$acl_c_spamscore}{50}}
>   condition = ${lookup mysql { insert into blacklist_ips
> (relay_ip,create_time)\
>values
> ('${quote_mysql:$sender_host_address}',now());
> }}

Замените, пожалуйста, последнее condition на:

  set acl_m_sq = ${lookup mysql...
  logwrite = sq:<$acl_m_sq>
  condition = $acl_m_sq

> Как куски /etc/services могли просочиться в кондишен? Или это - 4.90 такой
> глючный?

Да, были уже именно такие жалобы.

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



[Exim-users] exim 4.90 странные ошибки в логах

2018-01-04 Пенетрантность Alexander Sheiko
Привет всем.

Обнаружился сабж, с которым ранее не сталкивался:

2018-01-04 11:28:10 no host name found for IP address 163.53.168.95
2018-01-04 11:28:17 H=(163.53.168.95) [163.53.168.95] Warning:
Inconsistent or no DNS PTR record
2018-01-04 11:28:17 H=(163.53.168.95) [163.53.168.95] Warning: HELO is IP
address
2018-01-04 11:28:17 H=(163.53.168.95) [163.53.168.95] Warning: IP-address
seems to belong to cn
2018-01-04 11:28:17 H=(163.53.168.95) [163.53.168.95] Warning: Listed in
DNSBL zen.spamhaus.org
2018-01-04 11:28:18 H=(163.53.168.95) [163.53.168.95] Warning: Listed in
DNSBL cbl.abuseat.org
2018-01-04 11:28:20 H=(163.53.168.95) [163.53.168.95] F=
temporarily rejected RCPT : invalid "condition" value
"1Secure Shell Login
2018-01-04 11:28:22 unexpected disconnection while reading SMTP command
from (163.53.168.95) [163.53.168.95] D=12s

Есть три такие записи в логе:

 1   Temporarily rejected RCPT: invalid "condition" value "1Secure
Shell Login
 1   Temporarily rejected RCPT: invalid "condition" value "1t 
   23/udp
 1   Temporarily rejected RCPT: invalid "condition" value "1udp   
   #Secure
Shell Login

Похоже на куски из /etc/services.

Везде в логах есть только открытие кавычек перед этими странными сообщениями.

Судя по всему, сервер выдавал:
451 Temporary local problem - please try later

После проверки IP в DNSBL оценивается количество набранных очков. Если их
очень много - IP заносится в локальный блеклист с дропом соединения, что и
должно было произойти в данном случае:

  dropmessage   = Your host looks like malicious spam sender\nIP
$sender_host_address added to BlackList\nDetails:\n$acl_c_bouncemessage
  log_message   = IP $sender_host_address added to BlackList
  condition = ${if >{$acl_c_spamscore}{50}}
  condition = ${lookup mysql { insert into blacklist_ips
(relay_ip,create_time)\
   values
('${quote_mysql:$sender_host_address}',now());
}}

Как куски /etc/services могли просочиться в кондишен? Или это - 4.90 такой
глючный?

Обычно приходит куча ботов и успешно влетает в блеклист. Вот - пример:

 1   Rejected RCPT: BlackListed IP 60.177.224.28
 1   Rejected RCPT: IP 190.13.106.220 added to BlackList
 1   Rejected RCPT: IP 60.177.224.28 added to BlackList
 1   Rejected RCPT: IP 61.190.99.62 added to BlackList

-- 
Alexander Sheiko


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