sa-exim переслать другому пользователю

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Nick_mad
сержант
Сообщения: 280
Зарегистрирован: 2008-05-30 12:16:02
Откуда: Киев
Контактная информация:

sa-exim переслать другому пользователю

Непрочитанное сообщение Nick_mad » 2008-10-17 16:48:35

Здравствуйте.

Ситуация вот такая: я установил sa-exim он метит письмо как спам и при желании можна настроить что бы он спам отбрасывал а копии писем сохранял в у себя в папках, но одно письмо один файл. Я хотел бы что бы спам не убивался а пересылался на почтовый ящик напр spam@domen.ua

To avoid rejecting messages to postmaster@/abuse@, you should add the following ACL part to Exim's RCPT ACL (in the Exim config file), somewhere near the top:

warn message = X-SA-Do-Not-Rej: Yes
local_parts = postmaster:abuse

This will add a header “X-SA-Do-Not-Rej: Yes” to any messages addressed to postmaster@/abuse@, and then (according to the default SA-Exim config), suppress rejection of spam to these addresses. Messages that are classed as spam will still receive the spam headers, however, which is a good compromise – the mail can still be filtered into a separate folder in your (or your users') mail client, but in the event that it's actually a genuine mail (typically an abuse complaint), you will have the opportunity to review this folder and read it.
ну добавил я

warn message = X-SA-Do-Not-Rej: Yes
local_parts = spam
а в логи получаю
temporarily rejected after DATA: cannot test local_parts condition in DATA ACL

что делать подскажите, как поправить ситуацию????

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Nick_mad
сержант
Сообщения: 280
Зарегистрирован: 2008-05-30 12:16:02
Откуда: Киев
Контактная информация:

Re: sa-exim переслать другому пользователю

Непрочитанное сообщение Nick_mad » 2008-10-17 16:58:29

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

kolya_r
рядовой
Сообщения: 33
Зарегистрирован: 2008-08-01 17:14:36

Re: sa-exim переслать другому пользователю

Непрочитанное сообщение kolya_r » 2008-10-23 8:00:35

я в роутерах написал следующее:

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

spam_aliases
no_verify
driver = redirect
condition = ${if >{$spam_score_int}{30}{1}{0}}
data = spam@mydomen.ru
$spam_score_int это количество очков спама умноженное на 10

Nick_mad
сержант
Сообщения: 280
Зарегистрирован: 2008-05-30 12:16:02
Откуда: Киев
Контактная информация:

Re: sa-exim переслать другому пользователю

Непрочитанное сообщение Nick_mad » 2008-10-29 18:30:58

Попробывал Ваш совет, но не получилось. Письма проходят получателю не попадая в ящик спам. Может там порядок транспортов важен или нет???

А то я нашел где-то такую конструкцию

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

spam_router:
driver = accept
check_local_user
condition = ${if !eq {$h_X-SA-Do-Not-Rej:}{Yes} {1}{0}}
transport = spam_transport
cannot_route_message = Unknown user

spam_transport:
driver = appendfile
file = /usr/home/spamuser/mail/spam
delivery_date_add
envelope_to_add
return_path_add
group = mail
user = spamuser
mode = 0660
no_mode_fail_narrower
Так вот если spam_transport поставить перед local_delivery то все попадает на ящик spam, если после то проходит как небывало.

А если чесно то что-то SpamAssassin ресурсов подбирает под себя много. Вот читаю ветки по SpamAssassin на этом форуме, пишут мол читай статьи по Exim все будет гуд, не прорвется спам. Но шото у мня при этих правилах, все равно много спама, режится может 10% спама, а его за сутки приходит писем 200.
Вот заодно приведу и кусочек конфига с ексима, может глянете скажете что может добавить нада

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

############################ == PART 3 == ############################################

# ACL for entire mail
begin acl

# This rules are work for all
acl_check_rcpt:

# Allow mail from localhost not for TCP/IP
accept hosts = :



# Check for incorrect symbols in address @; %; !; /; |.
# If `percent_hack_domains` enabled than % should be removed
# Check local domains
deny message = "Incorrect symbol in address"
domains = +local_domains
local_parts = ^[.] : ^.*[@%!/|]

# Check not local domains
deny message = "Incorrect symbol in address"
domains = !+local_domains
local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./

# Accept mail for local-domain postmasters
accept local_parts = postmaster
domains = +local_domains

# Sender address verification
#require verify = sender

# Deny all (HELO/EHLO)
deny message = "Where your HELO/EHLO?! Gona read RFC..."
condition = ${if eq{$sender_helo_name}{}{yes}{no}}

# Allow all from auth users
accept authenticated = *

# Deny from all who send it's IP in HELO
deny message = "Your IP in HELO??? Hmm... I think you're spammer!"
hosts = * : !+relay_from_hosts : !10.0.0.0/24
condition = ${if eq{$sender_helo_name}\
{$sender_host_address}{true}{false}}

# Deny from all who send our IP in HELO
deny condition = ${if eq{$sender_helo_name}\
{$interface_address}{yes}{no}}
hosts = !127.0.0.1 : !localhost : *
message = "My IP in YOUR HELO??? Hmm... I think you're spammer!"

# Deny from all who send name "mail.mymailserver.com" in HELO
deny condition = ${if eq{$sender_helo_name}{$primary_hostname}{yes}{no}}
hosts = !127.0.0.1 : !localhost :!82.207.108.254 : *
message = "My hostname in YOUR HELO??? Hmm... I think you're spammer!"

# Deny from all who send just numeric HELO
deny condition = ${if match{$sender_helo_name}\
{\N^\d+$\N}{yes}{no}}
hosts = !127.0.0.1 : !localhost : *
message = "Your HELO containts only number! Gona read RFC..."

# Deny from all who didn't send sender address
# deny condition = ${if eq{$sender_address}{}{yes}{no}}
# hosts = !127.0.0.1 : !localhost : *
# message = "Where sender of this mail?! Gona read RFC..."

# Deny from all who didn't send sender address (Space)
deny condition = ${if match{$sender_address}{\N^\s+$\N}{yes}{no}}
hosts = !127.0.0.1 : !localhost : *
message = "Where _RIGHT_ sender of this mail?! Gona read RFC..."

# Deny all wrong hosts (ADSL, PPP, Dynamic IP's, etc...)
deny message = "Your hostname is bad to send email (adsl, poll, ppp & etc). You should use provider's SMTP server."
condition = ${if match{$sender_host_name} \
{adsl|dialup|dial-up|pool|peer|dhcp|pppoe|dynamic} \
{yes}{no}}

# DELAY
warn
# Default delay
set acl_m0 = 20s
warn
# For friendly hosts delay 0s
hosts = +relay_from_hosts:10.0.0.0/24
set acl_m0 = 0s
warn
# Delay logging
logwrite = Delay $acl_m0 for $sender_host_name \
[$sender_host_address] with HELO=$sender_helo_name. Mail \
from $sender_address to $local_part@$domain.
delay = $acl_m0

# Check recipient in local domains
# If not match go to other ACL
accept domains = +local_domains
endpass
message = "User unknown!"
verify = recipient

# Check recipient in relayed domains
# If not match go to other ACL
#accept domains = +relay_to_domains
#endpass
#message = "Mail server not know how relay to this address"
#verify = recipient

# Use public blacklist's databases
deny message = "Your IP is in blacklist. See $dnslist_domain \n $dnslist_text"
hosts = !127.0.0.1 : !localhost : !10.0.0.0/24 : *
dnslists = dnsbl.ahbl.org : \
cbl.abuseat.org : \
sbl.csma.biz : \
ubl.unsubscore.com : \
zen.spamhaus.org : \
db.wpbl.info : \
dynablock.njabl.org : \
dnsbl.njabl.org : \
list.dsbl.org : \


# Allow mail from relay_from_hosts list
accept hosts = +relay_from_hosts


# !!!ALL OTHER DENY!!!
deny message = Relaying Denied!

# ACL for mail body

acl_check_data:
#warn	message       = X-SA-Do-Not-Rej: Yes
#	local_parts   = spam

    deny malware = *
    message = "In e-mail found VIRUS - $malware_name"

# Deny China messages
deny message = "Hm... China Spam??? Gona Hell!"
condition = ${if match{$message_body} \
{105[-_]*51[-_]*86|778[-_]*98[-_]*94} \
{yes}{no}}

# Other allow
accept

kolya_r
рядовой
Сообщения: 33
Зарегистрирован: 2008-08-01 17:14:36

Re: sa-exim переслать другому пользователю

Непрочитанное сообщение kolya_r » 2008-10-29 23:31:55

1 это был не транспорт а роутер и порядок важен у меня он на первом месте стоит
2 SpamAssassin у меня не жрет ресурсов вообще (50 ящиков 1000 сам писем в день) машинка vmware server 1xeon 2gg 512ram

Nick_mad
сержант
Сообщения: 280
Зарегистрирован: 2008-05-30 12:16:02
Откуда: Киев
Контактная информация:

Re: sa-exim переслать другому пользователю

Непрочитанное сообщение Nick_mad » 2008-11-05 21:10:47

Поставил первым в роутерах

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

spam_aliases:
  no_verify
  driver = redirect
  condition = ${if >{$spam_score_int}{50}{1}{0}}
  data = spam@mydomen.ru
И все равно не хочет идти на спамовский ящик а идет пользователю с пометкой спам. Я компилировал exim с with_sa_exim=yes. Может нет у меня переменной spam_score_int???

kolya_r
рядовой
Сообщения: 33
Зарегистрирован: 2008-08-01 17:14:36

Re: sa-exim переслать другому пользователю

Непрочитанное сообщение kolya_r » 2008-11-08 13:42:59

Nick_mad писал(а):Поставил первым в роутерах

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

spam_aliases:
  no_verify
  driver = redirect
  condition = ${if >{$spam_score_int}{50}{1}{0}}
  data = spam@mydomen.ru
И все равно не хочет идти на спамовский ящик а идет пользователю с пометкой спам. Я компилировал exim с with_sa_exim=yes. Может нет у меня переменной spam_score_int???
Приду на работу и скину вам свой конфиг в понедельник, у меня там много косяков в виде кривых алиасов но все работает
а че ругаеться на spam_score_int ???? странно, рекомендую еще покурить доку на http://exim.org и на http://spamassassin.apache.org/ еще есть аффффигенный сайтик http://www.exim-new-users.co.uk/ там куча доков и примеров