Возникла некая проблема помогите пожалуйста решить.
Добрый день!
Нужно было реализовать дублирование всех писем (вх и исх.) на другой ящик, написал такое в exim-filter:
if $h_from: contains "@my_domain.com"
then
unseen deliver "copy@my _domain.com"
endif
if $recipients: contains "@my_domain.com"
then
unseen deliver "copy@my_domain.com"
endifно проблема в том что спама слишком много на @my_domain.com и возникла нужда принимать дубли только с реальных ящиков.
if $h_from: contains "как заставить его подставлять данные из файла"
> но проблема в том что спама слишком много на @my_domain.com и возникла
> нужда принимать дубли только с реальных ящиков.Во-первых, в экзиме для копирования обычно делают роутер:
auditor:
driver = redirect
domains = *
data = auditor@domain.tld
unseenДля того, чтобы не принимать спам, спам нужно резать. Я это делаю в ацлях. В acl_rcpt можно проверить, бэкрезолвится ли отправитель, приличное ли у него доменное имя и еще кучу разных вещей. Только на этом отсеется 3/4 входящих соединений. Примем тело письма от отправителя и через acl_data скормим его спамассассину. Если СА сочтет, что письмо явный спам - дропнем его. Если СА сомневается - пометим, как спам, но примем. Если письмо чистое - тем более примем. В моем случае спама проскакивает около двух процентов от всей почты, попадающей в ящики юзерам.
>[оверквотинг удален]
> unseen
> Для того, чтобы не принимать спам, спам нужно резать. Я это делаю
> в ацлях. В acl_rcpt можно проверить, бэкрезолвится ли отправитель, приличное ли
> у него доменное имя и еще кучу разных вещей. Только на
> этом отсеется 3/4 входящих соединений. Примем тело письма от отправителя и
> через acl_data скормим его спамассассину. Если СА сочтет, что письмо явный
> спам - дропнем его. Если СА сомневается - пометим, как спам,
> но примем. Если письмо чистое - тем более примем. В моем
> случае спама проскакивает около двух процентов от всей почты, попадающей в
> ящики юзерам.У меня вопрос как (include) брать данные из файла и подставлять вместо @my_domain.com
if $h_from: contains "@my_domain.com"
then
unseen deliver "copy@my _domain.com"
endifif $recipients: contains "@my_domain.com"
then
unseen deliver "copy@my_domain.com"
endif
> У меня вопрос как (include) брать данные из файла и подставлять вместо
> @my_domain.comОбъясните, что вы собираетесь подставлять из файла, и как вы собираетесь решать, какую именно строку из файла вы будете подставлять в каждом конкретном случае.
>> У меня вопрос как (include) брать данные из файла и подставлять вместо
>> @my_domain.com
> Объясните, что вы собираетесь подставлять из файла, и как вы собираетесь решать,
> какую именно строку из файла вы будете подставлять в каждом конкретном
> случае.Мне нужно какимто макаром сделать
if $h_from: contains "@my_domain.com"
then
unseen deliver "copy@my _domain.com"
endifЕсли выражение $h_from: совпадает с каким либо выражением во внешнем файле (или слова написаны с разделителем или на новой строчке)
то копировать почту на определенный ящик.
> Если выражение $h_from: совпадает с каким либо выражением во внешнем файле (или
> слова написаны с разделителем или на новой строчке)
> то копировать почту на определенный ящик.Еще раз настаиваю: делайте через роутер. Только добавьте проверку по списку регекспов:
auditor:
driver = redirect
domains = *
condition = ${lookup{$h_from}wildlsearch{/usr/local/etc/exim/h_from.list}{yes}{no}}
data = auditor@domain.tld
unseenВ файл h_from.list кладете регекспы по одному на строку:
v.pupkin@mail.ru
vasyap@*
*poopkin*
>[оверквотинг удален]
> redirect
> domains = *
> condition = ${lookup{$h_from}wildlsearch{/usr/local/etc/exim/h_from.list}{yes}{no}}
> data
> = auditor@domain.tld
> unseen
> В файл h_from.list кладете регекспы по одному на строку:
> v.pupkin@mail.ru
> vasyap@*
> *poopkin*Есть засада не пойму подскажите сделал так , но почему то все равно пролезает не по шаблону.
begin routers
archive_all:
driver = accept
condition = ${extract{1}{:}{lsearch{/usr/local/etc/exim/passwd}}
transport = tr_archive_all
unseenbegin transports
tr_archive_all:
driver = appendfile
maildir_format = true
create_directory = true
directory_mode = 700
directory = /home/mailnull/data/email/mailnull.ru/audit/.maildir
delivery_date_add
envelope_to_add
return_path_add
mode = 0660
use_lockfile = no
no_mode_fail_narrower
user = mailnull
group = mailnull
______________________________________________________________________________________И еще вопросик
У меня несколько почтовых доменов , как написать мультидоменный сертификат для Dovecot.