[mdk-re] Re[2]: [mdk-re] Анатомия почты в Spring

Sergey Kuznetsov =?iso-8859-1?q?skuznetsov_=CE=C1_comail=2Eru?=
Вт Сен 25 23:26:11 MSD 2001


>> Получение почты:
>> Fetchmail  скачивает  почту  с почтового сервера по команде fetchmail,
>> если  есть предварительно созданный файл .fetchmailrc, или fetchmail с
>> параметрами,  если такого файла нет. Затем почта передается postfix'у,
>> который отдает ее MUA по запросу пользователя.
> Точнее, почта передается агенту локальной доставки (procmail), который 
> кладет почту в системный почтовый ящик (/var/spool/mail/<user>). Затем
> уже MUA забирает (по команде пользователя) почту из спула и кладет
> ее в свою собственную базу (напр, ~/Mail/).
>> 

Ага...  Значит  procmail  тоже  в этой схеме ДОЛЖЕН БЫТЬ задействован.
Если  не  ошибаюсь,  он  проводит сортировку писем... ну да, рассовать
почту  по  локальным  ящикам  -  это,  собственно,  и  есть сортировка
(особенно  если  включить  правила,  по  которым  письма,  к  примеру,
удаляются).   А   есть  для  его  настройки  какая-нибудь  утиль  типа
fetchmailconf, или это можно ТОЛЬКО через файл конфигурации?

> Идея примерно следующая:
> Вам необходимо отправить почтовое сообщение пользователю
> (локальному 
> или удаленному). Не забывайте, что процессы в Unix тоже, в
> некотором 
> приближении, рассматриваются как пользователи. Если бы дело
> ограничивалось
> людьми, то настроил пару-тройку MUA, куда ложить почту и все!
> Но нельзя настроить
> массу программ, которые могут выдавать почту для, скажем,
> root'а и иже с ним.
> Т.е. нужен механизм приема "случайных" сообщений, приходящих
> на стандартный
> порт (для smtp - 25). Обмен сообщениями между процессами
> через порты - стандартная
> "фича" Unix (и не только). В случае с удаленным пользователем
> - более показательный
> пример. Он не знает, что вы написали ему письмо (он вообще
> Вас не знает :), поэтому
> запускать fetchmail и смотреть почтовый ящик на Вашем
> компьютере он не будет 
> (да и не сможет, пока не узнает свой логин и пароль :). Тут
> опять помогает postfix
> (правильнее MTA). Он узнает IP адрес вашего адресата и
> обращается к запущенному
> у него агенту MTA.

Так, попробуем въехать. Если мой адресат имеет постоянное подключение
к И-нету, то этот MTA запущен на _локальной_ машине, а если он такой
же dialup'щик, то он крутится на _почтовом сервере провайдера_. Так?

> Обмениваются приветами, и ваш передает
> письмо. Тот смотрит, 
> является ли адрес адресата для него локальным - если да, то
> передает локальному
> агенту для разборки и укладывания в соотв. локальный почт.
> ящик; если нет - смотрит, 
> разрешено ли ему релеить это письмо на другой хост, и либо
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Имеется в виду - на компьютер адресата?

> передает, либо дает
> вашему MTA "отлуп", дескать relay запрещен.
> Короче, таким образом письмо попадает в тот или иной
> локальный системный 
> почтовый ящик. А вот тут может понадобится fetchmail. Если вы
                                                             ^^^
Я или адресат моего письма?

> реальный
> пользователь хоста, т.е. имеет доступ к его терминалу -
> запускайте MUA и читайте
> почту, если же вы удаленный пользователь хоста (не случайный,
> а имеющий логин
> и пароль), то вы можете либо читать почту online, либо
> перебросить ее на свою машину
> и читать offline. Переброской занимается fetchmail.
> Обращается к POP-серверу удаленного
> хоста, логинится и смотрит, есть ли для него почта в
> системном почтовом спуле, 
> если да - забирает ее и передает локальному агент доставки -
> тот сам разберется, какое 
> письмо в какой ящик кинуть, а может вообще в /dev/null (т.е.
> фильтрация).
>
> Надеюсь, не сильно сумбурно получилось.

Да нет, вроде что-то в голове прояснилось. Спасибо! А что выступает в
роли MTA в оффтопике? Сама почтовая программа?

С уважением,
Сергей





Подробная информация о списке рассылки community