Страница 2 из 2

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-23 10:35:32
mediamag
тоесть мутить запрос в mysql...попробую...хоть я совсем не силен

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-23 12:18:47
mastertron
Есть предложение: сформулируйте задачу, опишите не сразу правилами, а просто словами, последовательно ( типа блок-схемы ), что Вы (exim) будете проверять, с чем сравнивать, пропускать дальше или нет, исключения в правилах (типа - а для этого парня правило не действует). Карандаш, бумага и доки - магия!!! Если алгоритм логически Вас устроит, с переводом в код поможем (подправим).

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-23 14:44:54
mediamag
мне приходит письмо . В теле письма параметры To: 123@domain.com и Cc: 321@domain.com. Необходимо, чтобы exim проверял поля To: и Cc: на предмет совпадения таблице 'alias' колонка 'address' и, если не находил сходств - делал reject письма

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-23 16:08:55
Laa
А если в CC стоит user1@gmail.com, user2@ukr.net, user3@mail.ru, то делаем reject? Точно?

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-23 17:03:10
mastertron
Очень скудненький алгоритм.

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

acl_check_data:
...
   deny	message	= iy-iy-iy ...
	       condition = ${if eq {}{${lookup mysql{SELECT address FROM alias \
		    	 WHERE address = '${quote_mysql:${lc:$rheader_To:}}' \
			     OR address = '${quote_mysql:${lc:$rheader_CC:}}'}}}{yes}{no}}
	       log_message = мой крутой режик!
Возможно где ошибся, но гдето так. Наверно правильней было б сделать два deny последовательно.
Тлько почему alias? А если пльзователю не сделан альясинг? А если письмо исходящее?

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-23 17:08:27
mastertron
Может глянете ешчо разок http://forum.lissyara.su/viewtopic.php? ... 25#p219566, вдруг вас устроит.

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-23 17:23:14
Laa
В случае топикстартера надо много учесть! Письмо может прийти к нему, когда он будет в Сс, а в То не с его домена получатель, и письмо может быть полностью корректным. Также надо учесть, что отправить могут подобное письмо, где кроме него в Сс будет несуществующий получатель. Короче, комбинаций много, надо думать и лучше поначалу таки балы накидывать, а не рубить.

Удачи.

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-23 17:24:12
mastertron
В кондишине нуно заменить знак = на LIKE.

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-27 15:00:55
mediamag
В этом и фишка - если в поле Сс или To: будет несовпадения с локальным адресом, то отлуп. Почему взял таблицу alias? ДА потому что экзим при добавлении нового юзера автоматом его и туда вбивает

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-28 9:43:22
mediamag
Не заработал кондишн, представленый выше...получаю отлуп, при любом входящем письме....

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-28 13:55:49
Laa
mediamag писал(а):Не заработал кондишн, представленый выше...получаю отлуп, при любом входящем письме....
Приведи полностью кондишен, который не заработал.
Посмотрим все вместе, поищем причину.

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-28 14:07:24
mediamag

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

condition    = ${if eq {}{${lookup mysql{SELECT address FROM alias WHERE address = '${quote_mysql:${lc:$rheader_To:}}' OR address LIKE '${quote_mysql:${lc:$rheader_CC:}}'}}}{yes}{no}}

Re: блокировка письма, если в поле копия неверный адресат

Добавлено: 2010-09-28 15:19:22
Laa
сделай перед этим кондишеном такой:

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

warn log_message = cc=$rh_cc: to=$rh_to:
посмотри, понаблюдай. Думаю поймешь почему отлупы.