The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Postfix delivery status"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Почта)
Изначальное сообщение [ Отслеживать ]

"Postfix delivery status"  +/
Сообщение от Paulstrong email on 18-Май-11, 11:10 
Всем привет!
Есть сервер, на нем настроен Postfix, который принимает почту из внешки для виртуальных пользователей, а также позволяет виртуальным пользователям  отправлять почту  во внешку.
Нужно настроить postfix таким образом, чтобы при неудачной отправке (по любой из причин), на определенный мною ящик сразу же отправлялось письмо с причиной.
Читал в манах про DSN, как я понял, это делается при помощи bounce, но не совсем понял. Может у кого есть ценный опыт?
Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Postfix delivery status"  +/
Сообщение от rr (ok) on 18-Май-11, 12:00 
> Всем привет!
> Есть сервер, на нем настроен Postfix, который принимает почту из внешки для
> виртуальных пользователей, а также позволяет виртуальным пользователям  отправлять почту
>  во внешку.
> Нужно настроить postfix таким образом, чтобы при неудачной отправке (по любой из
> причин), на определенный мною ящик сразу же отправлялось письмо с причиной.
> Читал в манах про DSN, как я понял, это делается при помощи
> bounce, но не совсем понял. Может у кого есть ценный опыт?

А что postfix "из коробки" работает по-другому?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Postfix delivery status"  +/
Сообщение от Paulstrong email on 18-Май-11, 13:36 
>> Всем привет!
>> Есть сервер, на нем настроен Postfix, который принимает почту из внешки для
>> виртуальных пользователей, а также позволяет виртуальным пользователям  отправлять почту
>>  во внешку.
>> Нужно настроить postfix таким образом, чтобы при неудачной отправке (по любой из
>> причин), на определенный мною ящик сразу же отправлялось письмо с причиной.
>> Читал в манах про DSN, как я понял, это делается при помощи
>> bounce, но не совсем понял. Может у кого есть ценный опыт?
> А что postfix "из коробки" работает по-другому?

ну сейчас он настроен таким образом, что приходят отлупы только об отказах при отправке, т.е. когда удаленный сервер не хочет принимать письмо и говорит "иди нах".
но есть ситуации когда письмо встает в очередь (deferred), вот эти вещи и интересуют меня! то есть как только письмо встало в очередь - об этом надо получить оповещение на заданный адрес.

попробовал
delay_notice_recipient = myemail@localhost
error_notice_recipient = myemail@localhost

шлю сообщение на сервер, где специально настроил 4.7.1 сообщение (попробуйте позже)

но на этот ящик ничего не падает

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Postfix delivery status"  +/
Сообщение от rr (ok) on 18-Май-11, 13:38 
>[оверквотинг удален]
> при отправке, т.е. когда удаленный сервер не хочет принимать письмо и
> говорит "иди нах".
> но есть ситуации когда письмо встает в очередь (deferred), вот эти вещи
> и интересуют меня! то есть как только письмо встало в очередь
> - об этом надо получить оповещение на заданный адрес.
> попробовал
> delay_notice_recipient = myemail@localhost
> error_notice_recipient = myemail@localhost
> шлю сообщение на сервер, где специально настроил 4.7.1 сообщение (попробуйте позже)
> но на этот ящик ничего не падает

так или иначе письмо всегда встает в очередь.
рано или поздно отправитель получит сообщение почему письмо не было доставлено

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

7. "Postfix delivery status"  +/
Сообщение от Paulstrong email on 18-Май-11, 13:54 
>[оверквотинг удален]
>> но есть ситуации когда письмо встает в очередь (deferred), вот эти вещи
>> и интересуют меня! то есть как только письмо встало в очередь
>> - об этом надо получить оповещение на заданный адрес.
>> попробовал
>> delay_notice_recipient = myemail@localhost
>> error_notice_recipient = myemail@localhost
>> шлю сообщение на сервер, где специально настроил 4.7.1 сообщение (попробуйте позже)
>> но на этот ящик ничего не падает
> так или иначе письмо всегда встает в очередь.
> рано или поздно отправитель получит сообщение почему письмо не было доставлено

Я не против, но мне необходимо получать оповещение о status=deferred на указанный мною ящик, тут просто важна каждая минута, бизнес дело такое

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

8. "Postfix delivery status"  +/
Сообщение от Феликс Жопорезку on 18-Май-11, 13:57 
> мне необходимо получать оповещение о status=deferred на указанный

Можно написать скрипт на перле, который будет высматривать соотв сообщения в логе


Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

11. "Postfix delivery status"  +/
Сообщение от Феликс Жопорезку on 18-Май-11, 14:06 
>> мне необходимо получать оповещение о status=deferred на указанный
> Можно написать скрипт на перле, который будет высматривать соотв сообщения в логе

Что-то типа того

$log_obj = File::Tail->new(name => $log_to_watch, maxinterval => 1);

while ($TERM_Signal == 0)
{
        ($nfound, $timeleft, @pending) = File::Tail::select(undef, undef, undef, $timeout, $log_obj);

        unless ($nfound)
        {
                #select(undef, undef, undef, 0.1); # 100 ms sleep
                sleep(1);
        }
        else
        {
                foreach (@pending)
                {
                        my $line = $_->read;
                        if ($line =~ /deferred/)
                        {
                sendMailTramPamPam

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

18. "Postfix delivery status"  +/
Сообщение от LSTemp (ok) on 18-Май-11, 20:16 
>[оверквотинг удален]
>> но есть ситуации когда письмо встает в очередь (deferred), вот эти вещи
>> и интересуют меня! то есть как только письмо встало в очередь
>> - об этом надо получить оповещение на заданный адрес.
>> попробовал
>> delay_notice_recipient = myemail@localhost
>> error_notice_recipient = myemail@localhost
>> шлю сообщение на сервер, где специально настроил 4.7.1 сообщение (попробуйте позже)
>> но на этот ящик ничего не падает
> так или иначе письмо всегда встает в очередь.
> рано или поздно отправитель получит сообщение почему письмо не было доставлено

в этом-то и весь кайф bounce|etc. сервер пытается доставить отосланное сообщение на основе настроенных Вами параметров (типа тыкаться каждые 2-а часа 5-ть раз, если сервер получателя дал отлуп по 5xx, чтобы ручками это не делать пользователю).

в postfix, кстати есть возможность отослать оповещение для отправител. что типа: Ваше письмо сейчас не доставлено ${потому_что} но оно в очереди еще на ${на_такое-то_время} и не надо его слать опять. etc.

И ТОЛЬКО КОГДА СЕРВЕР САМ СПРАВИТЬСЯ НЕ МОЖЕТ (в соответствии с Вашими настройками) по задаче отправки/релея письма - тут уж сообщения(я про служебные) и отсылаются.

PS
только при удаленном админе такое решение ИНОГДА имеет право жить. когда кроме почты и ССШ ничего не доступно на управляемом сервере по причине блокировки внешнего трафика.

PSS
учите протоколы. что можно/не_можно написано для всех. тогда вопросы останутся только по их реализации=возможности_конфигурации в конкретном продукте. но это уже будет совсем другой вес вопроса.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

17. "Postfix delivery status"  +/
Сообщение от LSTemp (ok) on 18-Май-11, 19:52 
> ну сейчас он настроен таким образом, что приходят отлупы только об отказах
> при отправке, т.е. когда удаленный сервер не хочет принимать письмо и
> говорит "иди нах".
> но есть ситуации когда письмо встает в очередь (deferred), вот эти вещи
> и интересуют меня! то есть как только письмо встало в очередь
> - об этом надо получить оповещение на заданный адрес.

а нахрен тебе это надо???????
это самое последние, что в логах обычно ищут. когда процесс обработки письма идет не так . как планировался.


> попробовал
> delay_notice_recipient = myemail@localhost
> error_notice_recipient = myemail@localhost
> шлю сообщение на сервер, где специально настроил 4.7.1 сообщение (попробуйте позже)
> но на этот ящик ничего не падает

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Postfix delivery status"  +/
Сообщение от Феликс Жопорезку on 18-Май-11, 13:39 
> А что postfix "из коробки" работает по-другому?

Я вот тоже думал, что так работает "из коробки", пока на одном дебианском гадюшнике не поставил postfix из пакетов, кстати.

Если я правильно понял

bounce_notice_recipient = postmaster@domain.tld
2bounce_notice_recipient = postmaster@domain.tld
delay_notice_recipient = postmaster@domain.tld
error_notice_recipient = postmaster@domain.tld

notify_classes = resource, software, bounce, 2bounce, delay, policy, protocol

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

5. "Postfix delivery status"  +/
Сообщение от rr (ok) on 18-Май-11, 13:45 
>> А что postfix "из коробки" работает по-другому?
> Я вот тоже думал, что так работает "из коробки", пока на одном
> дебианском гадюшнике не поставил postfix из пакетов, кстати.
> Если я правильно понял
> bounce_notice_recipient = postmaster@domain.tld
> 2bounce_notice_recipient = postmaster@domain.tld
> delay_notice_recipient = postmaster@domain.tld
> error_notice_recipient = postmaster@domain.tld
> notify_classes = resource, software, bounce, 2bounce, delay, policy, protocol

Прошу прощение, ключевое слово было ОПРЕДЕЛННЫЙ ЯЩИК.

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Postfix delivery status"  +/
Сообщение от Феликс Жопорезку on 18-Май-11, 13:53 
> Прошу прощение, ключевое слово было ОПРЕДЕЛННЫЙ ЯЩИК.

Ну, тогда почтовыми фильтрами можно замочить всё что не на ОПРЕДЕЛЁННЫЙ ящик.
Или если postfix delivery через dovecot делает sieve скриптом убить всё ненужное.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

9. "Postfix delivery status"  +/
Сообщение от rr (ok) on 18-Май-11, 13:57 
>> Прошу прощение, ключевое слово было ОПРЕДЕЛННЫЙ ЯЩИК.
> Ну, тогда почтовыми фильтрами можно замочить всё что не на ОПРЕДЕЛЁННЫЙ ящик.
> Или если postfix delivery через dovecot делает sieve скриптом убить всё ненужное.

при большой активности будет очень много почты на postmaster, любой отлуп от спамера - это письмо!


Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

10. "Postfix delivery status"  +/
Сообщение от Феликс Жопорезку on 18-Май-11, 14:01 
> при большой активности будет очень много почты на postmaster, любой отлуп от
> спамера - это письмо!

Я знаю. Сам получаю тысяч десять-двадцать баунсов в день, но у меня их два трудолюбивых демона на перле разбирают


Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

12. "Postfix delivery status"  +/
Сообщение от Paulstrong email on 18-Май-11, 14:11 
>> при большой активности будет очень много почты на postmaster, любой отлуп от
>> спамера - это письмо!
> Я знаю. Сам получаю тысяч десять-двадцать баунсов в день, но у меня
> их два трудолюбивых демона на перле разбирают

Спасибо вам все большое, за внимание!
Решил вопрос комбинацией параметров

delay_warning_time 10s
delay_notice_recipient my@email.com

Еще раз всем спасибо!

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

13. "Postfix delivery status"  +/
Сообщение от Paulstrong email on 18-Май-11, 18:19 
А если быть точнее - сделал так:

bounce_template_file = /etc/postfix/bounce.cf
2bounce_notice_recipient = email@domain.com
bounce_notice_recipient = email@domain.com
delay_notice_recipient = email@domain.com
error_notice_recipient = email@domain.com
notify_classes = resource, software, bounce, 2bounce, delay
delay_warning_time = 1s

при таких настройках после любой из неудачных попыток будет слаться копия отлупа на адрес email@domain.com, а оригинал отсылается на mail_from (из хедеров)

можно закрыть вопрос и приобщить к истории!

Всем еще раз спасибо!

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

14. "Postfix delivery status"  +/
Сообщение от qwe (??) on 18-Май-11, 19:02 
>[оверквотинг удален]
> 2bounce_notice_recipient = email@domain.com
> bounce_notice_recipient = email@domain.com
> delay_notice_recipient = email@domain.com
> error_notice_recipient = email@domain.com
> notify_classes = resource, software, bounce, 2bounce, delay
> delay_warning_time = 1s
> при таких настройках после любой из неудачных попыток будет слаться копия отлупа
> на адрес email@domain.com, а оригинал отсылается на mail_from (из хедеров)
> можно закрыть вопрос и приобщить к истории!
> Всем еще раз спасибо!

А содержание файла /etc/postfix/bounce.cf ?

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

20. "Postfix delivery status"  +/
Сообщение от paul strong on 19-Май-11, 04:39 
>[оверквотинг удален]
>> bounce_notice_recipient = email@domain.com
>> delay_notice_recipient = email@domain.com
>> error_notice_recipient = email@domain.com
>> notify_classes = resource, software, bounce, 2bounce, delay
>> delay_warning_time = 1s
>> при таких настройках после любой из неудачных попыток будет слаться копия отлупа
>> на адрес email@domain.com, а оригинал отсылается на mail_from (из хедеров)
>> можно закрыть вопрос и приобщить к истории!
>> Всем еще раз спасибо!
> А содержание файла /etc/postfix/bounce.cf ?

ну там шаблоны отлупов, можно не приводить здесь)

Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

19. "Postfix delivery status"  +/
Сообщение от LSTemp (ok) on 18-Май-11, 20:46 
>> А что postfix "из коробки" работает по-другому?
> Я вот тоже думал, что так работает "из коробки", пока на одном
> дебианском гадюшнике не поставил postfix из пакетов, кстати.
> Если я правильно понял

А что Вы поняли?

> bounce_notice_recipient = postmaster@domain.tld
> 2bounce_notice_recipient = postmaster@domain.tld
> delay_notice_recipient = postmaster@domain.tld
> error_notice_recipient = postmaster@domain.tld
> notify_classes = resource, software, bounce, 2bounce, delay, policy, protocol

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

15. "Postfix delivery status"  +/
Сообщение от LSTemp (ok) on 18-Май-11, 19:34 
>> Всем привет!
>> Есть сервер, на нем настроен Postfix, который принимает почту из внешки для
>> виртуальных пользователей, а также позволяет виртуальным пользователям  отправлять почту
>>  во внешку.
>> Нужно настроить postfix таким образом, чтобы при неудачной отправке (по любой из
>> причин), на определенный мною ящик сразу же отправлялось письмо с причиной.
>> Читал в манах про DSN, как я понял, это делается при помощи
>> bounce, но не совсем понял. Может у кого есть ценный опыт?
> А что postfix "из коробки" работает по-другому?

А Вы много "коробок" открывали?


Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

16. "Postfix delivery status"  +/
Сообщение от LSTemp (ok) on 18-Май-11, 19:49 
> Всем привет!
> Есть сервер, на нем настроен Postfix, который принимает почту из внешки для
> виртуальных пользователей, а также позволяет виртуальным пользователям  отправлять почту
>  во внешку.
> Нужно настроить postfix таким образом, чтобы при неудачной отправке (по любой из
> причин), на определенный мною ящик сразу же отправлялось письмо с причиной.
> Читал в манах про DSN, как я понял, это делается при помощи
> bounce, но не совсем понял. Может у кого есть ценный опыт?

скорее всего подобные ответы уже есть (по мере чтения отвечаю).

1) главное тут не боунсить почту не легитимным пользователям (читай: не авторизованным или не из локалки (даже из локалки без авторизации лучше не выпускать - ибо спам-боты)). Почему объяснять надо?

2) почитайте про postmaster в RFC и настройте. для ловли ошибок (и тучи спама) вполне достаточно.

3) а нахера Вам "каждое письмо с причиной"? Вам гемороя мало? настройте банальные вещи сначало - те же очереди для повторной отсылки писем итд.


Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

21. "Postfix delivery status"  +/
Сообщение от paul strong on 19-Май-11, 04:41 
>[оверквотинг удален]
>> bounce, но не совсем понял. Может у кого есть ценный опыт?
> скорее всего подобные ответы уже есть (по мере чтения отвечаю).
> 1) главное тут не боунсить почту не легитимным пользователям (читай: не авторизованным
> или не из локалки (даже из локалки без авторизации лучше не
> выпускать - ибо спам-боты)). Почему объяснять надо?
> 2) почитайте про postmaster в RFC и настройте. для ловли ошибок (и
> тучи спама) вполне достаточно.
> 3) а нахера Вам "каждое письмо с причиной"? Вам гемороя мало? настройте
> банальные вещи сначало - те же очереди для повторной отсылки писем
> итд.

1) что посоветуешь касательного первого пункта?
2) спасибо за совет! обязательно обращу внимание
3) нужно оперативно реагировать на ситуации, когда письмо не ушло, они бывают редко, но когда случаются, очень неудобно перед клиентами, а так хоть в курсе будем.

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

22. "Postfix delivery status"  +/
Сообщение от paul strong on 19-Май-11, 04:42 
>[оверквотинг удален]
>>> bounce, но не совсем понял. Может у кого есть ценный опыт?
>> скорее всего подобные ответы уже есть (по мере чтения отвечаю).
>> 1) главное тут не боунсить почту не легитимным пользователям (читай: не авторизованным
>> или не из локалки (даже из локалки без авторизации лучше не
>> выпускать - ибо спам-боты)). Почему объяснять надо?
>> 2) почитайте про postmaster в RFC и настройте. для ловли ошибок (и
>> тучи спама) вполне достаточно.
>> 3) а нахера Вам "каждое письмо с причиной"? Вам гемороя мало? настройте
>> банальные вещи сначало - те же очереди для повторной отсылки писем
>> итд.

касательно 1 пункта, я имею ввиду как не слать баунсы неавторизованным пользователям?

Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру