The OpenNET Project / Index page

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

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

"Утилита для модификации исходящих писем"  
Сообщение от harmant (ok) on 11-Сен-07, 18:16 
Здравствуйте, хочу наваять такую программку, которая будет ставиться в некой корпоративной среде, в которой есть smtp-сервер. Программа должна особым образом модифицировать весь smtp-траффик.

smtp-сервер в сети может быть какой угодно (postfix, exim, qmail, communigate, sendmail, exchange, mdaemon, iplanet, zmailer, smail, eserv... ). Писать под них плагины - муторно (хотя наверное придется).

Но вот думал, что можно как-то по хитрому выкрутиться? Чтобы не писать кучу разных плагинов, а сваять какой-то умный механизм, которому корпоративный сервак будет отдавать на модификацию всю исходящую почту. Наверное это должно происходить по smtp или lmtp. Подскажите, как обычно решаются такие вопросы, а то от почтовых систем далек я, да и от линукса.

Или может есть какое-то униерсальное api или слой-протокол для таких плагинов. Краем уха слышал про milter api, но не понял куда это конкретно применимо (вроде sendmail и postfix, может что еще).

Если писать отдельный проксик, который будет получать почту, а потом отправлять на исходный сервер, то возникают вопросы:

1) как соблюсти всю исходную авторизацию с учетом того, что письмо я могу поменять (дописать хеадер). И у исходного сервера может быть свой сертификат, который получается должен будет использоваться и в проксике.

2)как организовать "прозрачность"? ведь исходный сервер может быть настроен на прием определенного диапазона ip, а если он будет принимать письма только с этого ip - это сделает мой сервер дыркой в безопасности системы, так как исходный сервер будет принимать все письма от моего проксика без фильтрации.

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

Вообще, мне видится следующая схема:

Исходный smtp-сервер получает почту для отправки - отдает моему серверу.. я в письмеца добавляю пару хеадеров и отдаю назад исходному серверу для дальнейшей отправки.

Извините, что все так сумбурно. сам уже путаюсь, подскажите плз как обычно такие вопросы решаются. По сути мне просто нужно добавлять подпись ко всем исходящим письмам.

Заранее спасибо.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

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


1. "Утилита для модификации исходящих писем"  
Сообщение от Answer on 12-Сен-07, 09:01 
>[оверквотинг удален]
>
>Исходный smtp-сервер получает почту для отправки - отдает моему серверу.. я в
>письмеца добавляю пару хеадеров и отдаю назад исходному серверу для дальнейшей
>отправки.
>
>Извините, что все так сумбурно. сам уже путаюсь, подскажите плз как обычно
>такие вопросы решаются. По сути мне просто нужно добавлять подпись ко
>всем исходящим письмам.
>
>Заранее спасибо.

По-подробнее ничего непонятно! Есть много способов модифицировать письмо, под каждый из мта (или под все сразу), вами перечисленных (могу говорить только про юниксовые), готовыми вариантами, или написав что-то, что будет весить меньше 1Кб - на чем угодно вплодь на шеле. Тем не менее все задачи эти админского плана и решаются индивидуально.

Привидите пример: Письмо1 (с загаловками) -> Письмо2 - что вы хотите.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Утилита для модификации исходящих писем"  
Сообщение от harmant (ok) on 12-Сен-07, 10:15 
>По-подробнее ничего непонятно! Есть много способов модифицировать письмо, под каждый из мта
>(или под все сразу), вами перечисленных (могу говорить только про юниксовые),
>готовыми вариантами, или написав что-то, что будет весить меньше 1Кб -
>на чем угодно вплодь на шеле. Тем не менее все задачи
>эти админского плана и решаются индивидуально.
>
>Привидите пример: Письмо1 (с загаловками) -> Письмо2 - что вы хотите.

мне нужно дописать всего несколько хеадеров, но нужно это систему сделать по-максимум автоматической, чтобы не каждый админ сам прикручивал ее к своему mta, а чтобы мой инсталлятор все сделал сам (может я мыслю в терминах винды :(, но желательно именно так).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Утилита для модификации исходящих писем"  
Сообщение от Answer on 12-Сен-07, 14:01 
>[оверквотинг удален]
>>готовыми вариантами, или написав что-то, что будет весить меньше 1Кб -
>>на чем угодно вплодь на шеле. Тем не менее все задачи
>>эти админского плана и решаются индивидуально.
>>
>>Привидите пример: Письмо1 (с загаловками) -> Письмо2 - что вы хотите.
>
>мне нужно дописать всего несколько хеадеров, но нужно это систему сделать по-максимум
>автоматической, чтобы не каждый админ сам прикручивал ее к своему mta,
>а чтобы мой инсталлятор все сделал сам (может я мыслю в
>терминах винды :(, но желательно именно так).

Тело письма от заголовков отделяет пустая строка:
header: parametr
header: parametr
header: parametr

Hello!
....
WBR!

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Утилита для модификации исходящих писем"  
Сообщение от harmant (ok) on 12-Сен-07, 14:33 
>
>Тело письма от заголовков отделяет пустая строка:
>header: parametr
>header: parametr
>header: parametr
>
>Hello!
>....
>WBR!

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

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Утилита для модификации исходящих писем"  
Сообщение от Answer on 12-Сен-07, 15:47 
>[оверквотинг удален]
>>header: parametr
>>header: parametr
>>
>>Hello!
>>....
>>WBR!
>
>это конечно полезная информация, но не приблизившая меня к решению проблемы создания
>универсального механизма для добавления ко всем исходящим письмам своих хеадеров для
>всех mta.

Странный вы человек: пишите, но не читаете RFC (принципиально?), пишите, но не знаете *ix, пишите, но для элементарной задачи с вставлением строки в массив строк ищите утилиту? Наверное в данном случае любому админу проще написать самому под себя то что вы пишите!

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Утилита для модификации исходящих писем"  
Сообщение от harmant (ok) on 12-Сен-07, 15:56 
>
>Странный вы человек: пишите, но не читаете RFC (принципиально?), пишите, но не
>знаете *ix, пишите, но для элементарной задачи с вставлением строки в
>массив строк ищите утилиту? Наверное в данном случае любому админу проще
>написать самому под себя то что вы пишите!

Да нет... не судите вот так вот сразу... как подписать письмо я знаю - это не есть проблема.. утилита мне нужна не для того.. а чтобы мой механизм подписи автоматом работал на всех (известных мне и неизвестных мне MTA). Я не спрашиваю как вставить хеадер. Я спрашиваю как навешаться на событие отправки для всех MTA, какое есть для этого api, какие протоколы, и т.д.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Утилита для модификации исходящих писем"  
Сообщение от chip email(ok) on 18-Сен-07, 12:16 
>[оверквотинг удален]
>>знаете *ix, пишите, но для элементарной задачи с вставлением строки в
>>массив строк ищите утилиту? Наверное в данном случае любому админу проще
>>написать самому под себя то что вы пишите!
>
>Да нет... не судите вот так вот сразу... как подписать письмо я
>знаю - это не есть проблема.. утилита мне нужна не для
>того.. а чтобы мой механизм подписи автоматом работал на всех (известных
>мне и неизвестных мне MTA). Я не спрашиваю как вставить хеадер.
>Я спрашиваю как навешаться на событие отправки для всех MTA, какое
>есть для этого api, какие протоколы, и т.д.

Большинство MTA умеют полноценно работать с LMTP. На мой взгляд, на него и нужно ориентироваться. А что касается чтобы было прозрачно - если Ваш продукт заинтересует администратора настроить фильтр, который бы передавал отправляемое письмо на обработку Вашему фильтру не составит для них труда.

Схема должна быть следующей:

SMTP (MTA) --[ LMTP ]--> Ваш Фильтр --> возврат письма в queue MTA для дальнейшей отправки.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Утилита для модификации исходящих писем"  
Сообщение от harmant (ok) on 18-Сен-07, 18:51 
>Большинство MTA умеют полноценно работать с LMTP. На мой взгляд, на него
>и нужно ориентироваться. А что касается чтобы было прозрачно - если
>Ваш продукт заинтересует администратора настроить фильтр, который бы передавал отправляемое письмо
>на обработку Вашему фильтру не составит для них труда.
>
>Схема должна быть следующей:
>
>SMTP (MTA) --[ LMTP ]--> Ваш Фильтр --> возврат письма в queue MTA для дальнейшей отправки.

Для меня тоже наиболее правильной выглядит подобная схема, тока вот не знаю LMTP или SMTP протокол использовать для передачи писем моему фильтру. И скудные мои познания мне напоминают, что lmtp предназначен для обработки уже полученных писем, а не тех, которые еще не отправлены. Поправьте меня, если я ошибаюсь.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Утилита для модификации исходящих писем"  
Сообщение от chip email(ok) on 19-Сен-07, 09:49 
>Для меня тоже наиболее правильной выглядит подобная схема, тока вот не знаю
>LMTP или SMTP протокол использовать для передачи писем моему фильтру. И
>скудные мои познания мне напоминают, что lmtp предназначен для обработки уже
>полученных писем, а не тех, которые еще не отправлены. Поправьте меня,
>если я ошибаюсь.

Оба протокола очень близки. В частности lmtp у postfix'a получился на базе smtp модуля. Посему - почему бы не задуматься о более универсальном подходе и не реализовать оба подхода?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "Утилита для модификации исходящих писем"  
Сообщение от harmant (ok) on 19-Сен-07, 10:31 
>Оба протокола очень близки. В частности lmtp у postfix'a получился на базе
>smtp модуля. Посему - почему бы не задуматься о более универсальном
>подходе и не реализовать оба подхода?

Да просто, как всегда, все хочется реализовать малой кровью :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

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

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




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

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