[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