Почтовые сервера EXIM, sendmail, postfix, Dovecot и инфраструктура: MTA/MDA, антиспам, web‑почта, маршрутизация и эксплуатация почтовых систем.
Модератор: xM
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
AlkoGekS
- сержант
- Сообщения: 152
- Зарегистрирован: 2007-05-22 11:30:29
-
Контактная информация:
Непрочитанное сообщение
AlkoGekS » 2007-11-22 16:56:32
Копирование почты
Сделал все как тут
http://forum.lissyara.su/viewtopic.php?f=14&t=2747 теже фильтры, теже настройки. Все работает. Но перестала копироваться почта на мыло начальства. Собственно вот это
Код: Выделить всё
# system filter
# А тут у начальства заскок - желание контролировать всё.
# Вот и пришлось сделать копию всей почты.
# Вот тока в IT отделе, как выяснилось, никто никому не пишет :)
system_filter = /usr/local/etc/exim/copy_mail.conf
работать не хочет никак.
Вопрос в следующем, как после всех проверок которые описаны в файле filters/system-filter копировать почту на мыло начальства?
Куда вставить вот это:
Код: Выделить всё
#!/bin/sh
# Это вовсе не шелл-скрипт, просто в mcedit при такой первой строке
# включается подсветка синтаксиса, и работать на порядок удобней :)
# Проверяем, надо ли копировать почту, идущую этому пользователю,
# на начальственный адрес (единичка в поле `copy_mail` - копировать,
# любое другое значение - нет)
if $recipients is "${lookup mysql{SELECT `address` FROM `alias` WHERE \
`address`='$recipients' AND `copy_mail`='1' LIMIT 1}}"
then
# кому копируем (можно на локальный адрес, можно на
# любой другой сервер инета)
unseen deliver mail-copy-mailbox@lissyara.su
endif
# исходящая почта (тут свои косяки - если чел в настройках своего почтового
# клиента пропишет левый адрес - почта копироваться не будет. Как вариант -
# отключить приём писем от неавторизованных клиентов, и ловить по переменной
# $authenticated_sender - но тогда железки не смогут рапортоваться, если им
# нужно, наружу... Впрочем, у меня они на этот сервер пишут...)
if $sender_address is "${lookup mysql{SELECT `address` FROM `alias` WHERE \
`address`='$sender_address' AND `copy_mail`='1' LIMIT 1}}"
then
# кому копируем (можно на локальный адрес, можно на
# любой другой сервер инета)
unseen deliver mail-copy-mailbox@lissyara.su
endif
AlkoGekS
-
Хостинг HostFood.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/
-
Alex Keda
- стреляли...
- Сообщения: 35502
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
-
Контактная информация:
Непрочитанное сообщение
Alex Keda » 2007-11-22 17:07:55
ну а единичка в БД стоит?
Убей их всех! Бог потом рассортирует...
Alex Keda
-
AlkoGekS
- сержант
- Сообщения: 152
- Зарегистрирован: 2007-05-22 11:30:29
-
Контактная информация:
Непрочитанное сообщение
AlkoGekS » 2007-11-22 17:12:14
Стоит конечно.
Это хозяйство в конец конфина system-filter вставить надо или в середину?
AlkoGekS
-
Alex Keda
- стреляли...
- Сообщения: 35502
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
-
Контактная информация:
Непрочитанное сообщение
Alex Keda » 2007-11-22 17:19:00
а подумать?
или документацию почитать?
Убей их всех! Бог потом рассортирует...
Alex Keda
-
AlkoGekS
- сержант
- Сообщения: 152
- Зарегистрирован: 2007-05-22 11:30:29
-
Контактная информация:
Непрочитанное сообщение
AlkoGekS » 2007-11-22 17:44:55
В итоге получилось:
Код: Выделить всё
logfile /var/log/exim/system-filter.log
if $acl_m1 contains "1"
then
deliver quarantine@ruskon.biz
else
if $acl_m1 contains "2"
then
deliver spam@ruskon.biz
else
if $acl_m0 matches ^\\d+
then
if $acl_m0 is above 59
then
deliver spam@ruskon.biz
endif
headers add "X-Spam-Description: if spam count > 60 - this is spam"
headers add "X-Spam-Count: $acl_m0"
if $acl_m0 is above 58
then
headers add "Old-Subject: $h_subject:"
headers remove "Subject"
headers add "Subject: (*** SPAM ***) $h_old-subject:"
headers add "X-Spam: YES"
logwrite "EXIM FILTER: Spam count = $acl_m0 ; Added SPAM header"
endif
endif
endif
endif
if $recipients is "${lookup mysql{SELECT `address` FROM `alias` WHERE `address`='$recipients' AND `copy_mail`='1' LIMIT 1}}"
then
unseen deliver security@ruskon.biz
endif
if $sender_address is "${lookup mysql{SELECT `address` FROM `alias` WHERE `address`='$sender_address' AND `copy_mail`='1' LIMIT 1}}"
then
unseen deliver security@ruskon.biz
endif
Вроде бы правильно, как я понимаю.
AlkoGekS
-
AlkoGekS
- сержант
- Сообщения: 152
- Зарегистрирован: 2007-05-22 11:30:29
-
Контактная информация:
Непрочитанное сообщение
AlkoGekS » 2007-11-23 9:59:14
Вроде как все работает, даже почта копироваться стала, но в логах пишет такое...
Код: Выделить всё
security (security@ruskon.biz, root@ruskon.biz, security@ruskon.biz) <system-filter> R=dovecot_user T=dovecot_delivery
Это нормально?

AlkoGekS
-
Alex Keda
- стреляли...
- Сообщения: 35502
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
-
Контактная информация:
Непрочитанное сообщение
Alex Keda » 2007-11-23 11:27:53
да
Убей их всех! Бог потом рассортирует...
Alex Keda
-
AlkoGekS
- сержант
- Сообщения: 152
- Зарегистрирован: 2007-05-22 11:30:29
-
Контактная информация:
Непрочитанное сообщение
AlkoGekS » 2007-11-23 17:29:23
Спасиба

P.S. Не прошло и двух недель как почта заработала как надо, НАКОНЕЦ ТО

)
AlkoGekS