Sendmail + copy In/out mail

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

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
dm07
сержант
Сообщения: 222
Зарегистрирован: 2008-07-27 19:58:25
Откуда: Уфа
Контактная информация:

Sendmail + copy In/out mail

Непрочитанное сообщение dm07 » 2008-10-12 23:37:01

Здравствуйте. Нужно решить такую задачку: копировать всю входяющую/исходяющую корреспонденцию поступающую на сендмыло в отдельную папку в виде отдельных файлов писем. Желательно фильтровать спам (по заголовкам X-Spam-Status). Кто нибудь решал подобную задачу, поделитесь рецептом.

Хостинговая компания 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/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35092
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Sendmail + copy In/out mail

Непрочитанное сообщение Alex Keda » 2008-10-13 8:47:13

да. заменил шендмыло на экзим.
Убей их всех! Бог потом рассортирует...

dm07
сержант
Сообщения: 222
Зарегистрирован: 2008-07-27 19:58:25
Откуда: Уфа
Контактная информация:

Re: Sendmail + copy In/out mail

Непрочитанное сообщение dm07 » 2008-10-13 11:47:02

Сендмыло устраивает на данном этапе. Как найду рецепт, отпишусь.

kmb
лейтенант
Сообщения: 680
Зарегистрирован: 2007-02-20 8:30:03
Контактная информация:

Re: Sendmail + copy In/out mail

Непрочитанное сообщение kmb » 2008-10-13 18:24:22

Нужно решить такую задачку: копировать всю входяющую/исходяющую корреспонденцию поступающую на сендмыло в отдельную папку в виде отдельных файлов писем.
и
Желательно фильтровать спам (по заголовкам X-Spam-Status). Кто нибудь решал подобную задачу, поделитесь рецептом.
Это одна задача или два разных вопроса?
truth is out there...

dm07
сержант
Сообщения: 222
Зарегистрирован: 2008-07-27 19:58:25
Откуда: Уфа
Контактная информация:

Re: Sendmail + copy In/out mail

Непрочитанное сообщение dm07 » 2008-10-13 22:07:57

Это две задачи, но первая задача - минимум.

dm07
сержант
Сообщения: 222
Зарегистрирован: 2008-07-27 19:58:25
Откуда: Уфа
Контактная информация:

Re: Sendmail + copy In/out mail

Непрочитанное сообщение dm07 » 2008-10-16 13:15:25

Итак, решить задачу по поводу копирования входящей/исходящей почты можно с помощью bcc-milter (http://www.snertsoft.com/sendmail/milter-bcc/) - он платный, 65E. Можно с помощью Synonym, прост в установке и настройке, бесплатен.
Установка и настройка Synonym.
Устанавливаю порт /usr/ports/mail/synonym
В /etc/rc.conf прописываю synonym_enable="YES"
Прописываю конфиг. файл /usr/local/etc/synonym.conf, пример:

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

<Rules>
        <Rule>
                <Condition>
                        <Header>From</Header>
                        <Match>.*</Match>
                </Condition>
                <Action>
                        <ActionType>Copy</ActionType>
                        <Address>tracker@domen.ru</Address>
                </Action>
        </Rule>
</Rules>
Т.е. смысл правила: если имеется любой символ в From, то копия будет отсылаться на адрес tracker@domen.ru. Подробнее про формат файла synonym.conf можно узнать по cat /usr/local/share/doc/synonym/README.
Правим файл sendmail.mc:

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

...
FEATURE(local_procmail)dnl
dnl define(`_FFR_MILTER', `true')
...
INPUT_MAIL_FILTER(`Synonym', `S=local:/var/run/synonym/synonym.sock, T=C:10m;S:1s;R:1s;E:5m')dnl
define(`confINPUT_MAIL_FILTERS', `clmilter,spamassassin,Synonym')dnl
Пересобираем конфиг сендмайла, перезапускаем его, также запускаем Synonym:

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

/usr/local/etc/rc.d/synonym start
Смотрим, что создался файл сокета:

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

ls -l /var/run/synonym/
-rw-r--r--  1 daemon  daemon  5 Oct 15 23:58 synonym.pid
srwxr-xr-x  1 daemon  daemon  0 Oct 15 23:58 synonym.sock=
Пробуем отправить письмо, проверяем, что копия дошла до tracker.