exim.conf:
-----------------------------------------------------------------------------
userforward:
driver = redirect
allow_fail
allow_defer
data = ${lookup mysql{SELECT recipients FROM userforward \
WHERE local_part='${local_part}' AND domain='${domain}'}}
-----------------------------------------------------------------------------mysql database:
-- Структура таблицы `userforward`
--CREATE TABLE IF NOT EXISTS `userforward` (
`local_part` varchar(64) NOT NULL default '',
`domain` varchar(128) NOT NULL default '',
`recipients` text,
PRIMARY KEY (`local_part`,`domain`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;--
-- Дамп данных таблицы `userforward`
--INSERT INTO `userforward` (`local_part`, `domain`, `recipients`) VALUES
('all', 'domains.ru', 'user1', 'user2', 'user3');по текущему условию, если есть почта на all@domain.ru - рассылаем ее на пользователей (список)
как добавить проверку - на принадлежность почты к текущему домену?то есть, если пришло письмо снаружи, на ящик all@domain.ru - его отфильтровывать, и разрешать только лишь своему домену (доменам) отсылать корреспонденцию на данный ящик рассылки?
не совсем понятно. тоесть all@domain.ru это ваш внутренний ящик, и вы хотите блокировать почту, которая идёт на него из мира?
>не совсем понятно. тоесть all@domain.ru это ваш внутренний ящик, и вы хотите
>блокировать почту, которая идёт на него из мира?это ящик (группа ящиков) рассылки
при попадании писем на него уходит рассылка на н-ящиковя хочу блокировать письма все извне на этот ящик, кроме моего текущего домена (доменов) из таблицы userforward поля domain
>>не совсем понятно. тоесть all@domain.ru это ваш внутренний ящик, и вы хотите
>>блокировать почту, которая идёт на него из мира?
>
>это ящик (группа ящиков) рассылки
>при попадании писем на него уходит рассылка на н-ящиков
>
>я хочу блокировать письма все извне на этот ящик, кроме моего текущего
>домена (доменов) из таблицы userforward поля domainА если:
deny message = This is internal mailbox. No mail from you here
!hosts = +relay_from_hosts
domains = +local_domains
condition = ${if eq{$domain}{ваш домен}{1}{0}}
>А если:
>
>deny message = This is
>internal mailbox. No mail from you here
>
>!hosts = +relay_from_hosts
>
>domains = +local_domains
> condition =
>${if eq{$domain}{ваш домен}{1}{0}}в том то и дело - не проверка по домену, а проверка по значению таблицы в базе
этим условием мы закрываем _все_ ящики данного домена