Документация по ОС FreeBSD Воскресенье, 05.05.2024, 13:31
Приветствую Вас Гость | RSS
Меню сайта

Категории каталога
Apache [58]
DNS [25]
FTP [27]
Mail [74]
Samba [24]
Squid [46]
SSH [23]
VPN [35]
РРР [20]
Net [173]

Главная » Статьи » Сеть » Mail

Настройка архивирования всей исходящей почты в sendmail [2008]
В этой заметке мы рассмотрим как организовать копирование исходящий(возможно всей т.е. и входящей) почты проходящей через 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

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


Источник: http://www.opennet.ru/base/net/sendmail_copy.txt.html
Категория: Mail | Добавил: oleg (25.12.2008) | Автор: Олег
Просмотров: 1167 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Beastie

Друзья сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
links

Copyright MyCorp © 2024