Monday, October 16th, 2017

Как скопировать всю исходящую почту через sendmail

Published on Март 30, 2009 by   ·   Комментариев нет

В этой заметке мы рассмотрим как организовать копирование

исходящий(возможно всей т.е. и входящей) почты проходящей через
sendmail. Было рассмотрено несколько вариантов муссировающих в
интернете, и выбран полностью рабочий, проверен на FreeBSD 6 и 7 RELEASE

1. Введение

Морально-этические соображения, касающиеся вопроса копирования исходящей
почты, находятся за рамками данной статьи и здесь не рассматриваются.

Следует отметить, что, как правило, копирование почты, в особенности без
уведомления корреспондентов, считается неэтичным, а в некоторых случаях
даже противозаконным. ). Создатели Sendmail намеренно исключили такую
возможность у самого почтовика, сославшись на то, что они хотят сделать
подглядывание за чужой почтой хотя бы немного сложнее.

С другой стороны, надо понимать, что вся почта передающаяся через
почтовый сервер, и через все остальные серверы по пути её следования,
может быть легко просмотрена их администраторами. Если нужно чтобы почту
не мог прочитать никто, нужно использовать системы шифрования почты,
такие как PGP/GPG и другие подобные.

2. Как копируют почту?

При использовании Sendmail в качестве основной почтовой программы (MTA),
копирование исходящей почты возможно одним из трёх способов:

    * Копирование с помощью другой копии sendmail
    * Копирование с помощью локального обработчика почты, обычноprocmail
    * Копирование с помощью программы, подключенной через milter-интерфейс Sendmail

Ниже рассматривается, как можно настроить копирование почты по третьему
способу, то есть через milter-интерфейс Sendmail.

В качестве программы, выполняющей копирование почты, используется
программа Synonym.

3. Копирование через milter

Копирование почты выполняется с помощью внешней программы Synonym,
которая получает почтовое сообщение от Sendmail'а через Milter API.
Synonym на основе дотаточно грубых критериев выбирает часть писем и
передаёт их программе procmail, которая выполняет обработку на основе
любой информации в заголовках и теле письма.

4. Установка Synonym'a

Обновляем порты ( portsnap fetch update)

        cd /usr/ports/mail/synonym
        make install clean

в /etc/rc.conf добавляем

        synonym_enable="YES"

5. Настройка Sendmail

в /etc/mail/domen.mc добаляем строчку:

     INPUT_MAIL_FILTER(`Synonym', `S=local:/var/run/synonym/synonym.sock, T=C:10m;S:1s;R:1s;E:5m')

затем

        cd /etc/mail
        make install
        make restart

этими коммандами мы собираем конфиг заново и перезапускаем sendmail

6. Настройка Synonym'a

конфиг — /usr/local/etc/synonym.conf

          <Rules>
            <Rule>
                <Condition>
                        <Header>From</Header>
                        <Match>.*domen.ru</Match>
                </Condition>
                <Action>
                        <ActionType>Copy</ActionType>
                        <Address>seacher@domen</Address>
                </Action>
            </Rule>
         </Rules>

в вышеописанном примере вся почта домена копируется на определённый ящик.

Можно составить в принципе любую конструкцию. и отправлять письма не
только на локальный ящик.
Например, можно фильтровать по «subject», по «to» и т.д.
Также, почту из ящика seacher@domen, можно раскидывать по
необходимостям, с помощью procmail

пример:

        MAILDIR=$HOME
        FORMAIL=/usr/local/bin/formail

        # Copy monitored addresses to abuse@example.comЭтот адрес e-mail защищен от спам-ботов. Чтобы увидеть его, у Вас должен быть включен Java-Script
        :0 c
        * ^(From|To).* Этот адрес e-mail защищен от спам-ботов. Чтобы увидеть его, у Вас должен быть включен Java-Script
        {
        # Prevent mail loops
         :0
        * ^X-Loop
        /dev/null
       
        # Copy each message to "monitored" directory
         :0 c
        monitored

        # Add an "X-Loop" header to prevent milter mail loops and mail a copy of the message to abuse@example.comЭтот адрес e-mail защищен от спам-ботов. Чтобы увидеть его, у Вас должен быть включен Java-Script
         :0
        | $FORMAIL -I "X-Loop: Synonym" | mailx -s "Monitored email" abuse@example.comЭтот адрес e-mail защищен от спам-ботов. Чтобы увидеть его, у Вас должен быть включен Java-Script
        }

        # Copy messages from example.com containing attachments
        # to attachments sub-directory for attachment report processing
        :0
        * ^From.*example\.com
        {
         :0 B
        * filename=
        attachments
        }
       
        # Discard all other messages
        :0
        *
        /dev/null

7. Запуск

после этого запускаем synonym

      /usr/local/etc/rc.d/synonym start

всё. копирование исходящей почты пошло!

* обсудить статью
* источник. Статьи по FreeBSD, Linux

zp8497586rq

























Смотрите также:

Readers Comments (Комментариев нет)

Comments are closed.

Exchange 2007

Проведение мониторинга Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 3)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Проведение мониторинга Exchange 2007 с помощью диспетчера System ... [+]

Практическое рассмотрение перехода с Exchange 2003 на Exchange 2007 (часть 1)

Введение В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 2)

Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть ... [+]

Мониторинг Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 2)

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ... [+]

Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 5)

Если вы пропустили предыдущие части этой серии статей, перейдите по ссылкам: Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 1) ... [+]

Установка и настройка Exchange 2007 из командной строки (Часть 3)

If you missed the previous parts in this article series please read: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 1)

Инструмент ExRCA Текущий выпуск инструмента предоставляется только в целях тестирования и оснащен 5 опциями: Тест подключения Outlook 2007 Autodiscover Тест подключения Outlook 2003 RPC ... [+]

Развертывание сервера Exchange 2007 Edge Transport (часть 5)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Развертывание сервера Exchange 2007 Edge Transport (часть 1) Развертывание ... [+]

Установка и настройка Exchange 2007 из командной строки (часть 2)

Если вы пропустили первую статью данного цикла, пожалуйста, перейдите по ссылке: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование интегрированных сценариев Using Exchange Server 2007 – часть 2: генерирование отчетов агента Transport AntiSpam Agent

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Использование интегрированных сценариев Using Exchange Server 2007 – часть ... [+]