14

Я новичок в почте и не знаю точно, как это работает.

Я видел, как администраторы использовали sendmail для отправки электронной почты. Является ли sendmail сервером smtp или клиентом, который использует SMTP-сервер для пересылки электронной почты? Я погуглил и прочитал, что это агент пересылки почты.

Есть ли разница между почтовым агентом и почтовым сервером?

Предполагая, что нет никаких проверок безопасности (обратный DNS и т.д.), Когда я использую sendmail для отправки электронного письма на user@yahoo.com: мне все равно нужно пройти через другой SMTP-сервер (google.com?) или я могу отправлять почту с моего сервера с помощью sendmail?

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

Спасибо

3 ответа3

8

Я немного разобрался в этом.

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

Из того, что я могу собрать, это идет так

MUA-->MSA--->MTA--->(MDA->Comp)<--MUA

и с участием клиента IMAP/POP (MRA) и сервера IMAP/POP (MAA)

sending(A->B->C->D->X)   then  from receiving right to left (X<--B<--A)
    A      B     C          D          X      B     A 
    MUA-->MSA--->MTA--->(MDA->Comp)-->MAA<---MRA<--MUA

Письма отправляются на домен пользователя @

MUA - это почтовый клиент. Это был бы клиент SMTP. (или, точнее, пользовательский интерфейс, настроенный для запуска определенного SMTP-клиента, который, конечно, является локальным для этой машины, но, конечно, подключается к SMTP-серверу)

MSA - это MTA, означающее, что он передает электронную почту, но это MTA, к которому подключается MUA. И это на локальном домене. Было бы запустить SMTP. Это был бы SMTP-сервер. (возможно, есть другие протоколы, которые он может использовать в качестве альтернативы SMTP).

MTA - это MTA в домене назначения.

MDA - это компьютер в домене получателя, который пишет /"доставляет" сообщение в "почтовое хранилище", которое находится на жестком диске, к которому у компьютера есть доступ. Часто местный к этому. Этот почтовый магазин хранит почту для пользователей домена.

MAA и MRA - это связано с получением электронной почты, а не с отправкой электронной почты. Термин MAA менее известен, и часто люди называют MRA просто клиентом IMAP/POP и не дают серверу сокращение. Я слышал, что MRA - это термин как для клиента, так и для сервера. Аргументом является то, что он говорит «агент», поэтому просто описывает функцию, а определение не ограничивается только клиентом или просто сервером. Но сайты, которые используют термин MAA, по-видимому, определяют MAA как сервер, а MRA - как клиента, и, возможно, они правы. Итак, я пойду с этим и приведу цитаты из двух веб-сайтов об этом для определения и примера.

Существует MAA, который является сервером POP/IMAP. И MRA, который является клиентом POP/IMAP. Две ссылки, которые упоминают это ..

https://www.ida.liu.se/~TDDI09/lectures/TDDI09-F4.pdf
MRA клиент Fetchmail
MAA сервер Курьер IMAPD

http://archive.vector.org.uk/art10500970
MAA (агент доступа к почте):
управляет папками учетной записи электронной почты и делает сообщения доступными для MRA. MRA (Агент поиска почты): получает доступ к папкам электронной почты через MAA и делает сообщения доступными для MUA


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

Вы спрашиваете, можно ли отправить напрямую в MTA конечного домена, если нет проверок безопасности. Я думаю, что однажды сделал это MUA to MTA, задействовал только один SMTP-сервер, так что да. Но обычно это MSA в вашем локальном домене, который отправляет его в MTA.Поэтому обычно задействованы два SMTP-сервера. Я думаю, что я сделал, чтобы убедиться, что я запустил SMTP-сервер MSA sendmail или postfix, увидел, что он выполняет проверку DNS в домене, и увидел, что он находит целевой MTA(другой SMTP-сервер). Тогда я подумал, хе, я постараюсь отправить его напрямую. И для одного домена, который я хотел отправить, я мог подключиться напрямую к этому MTA назначения.

7

ИМХО, это крошечное руководство, MUA, MTA и MDA, очень хорошо объясняет основные концепции почтовой системы Unix.

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

Теперь, когда вы говорите, mail server который обычно ссылается на альтернативный путь в одном или обоих:

  • Принимающая сторона
    В основном замена целевого хоста MTA+MDA (и почтового ящика пользователя) на почтовый сервер + различные почтовые клиенты, работающие на разных моделях отдельных машин (например, web/POP/IMAP/и т.д.), Обычно применимые к большинству общедоступных почтовых сервисов, таких как gmail/Yahoo).
  • Передающая сторона
    В основном замена отправляющего хоста MUA + MTA на почтовый сервер + различные почтовые клиенты, работающие на разных моделях отдельных машин
5

Термин "почтовый сервер" является расплывчатым. В электронной почте много движущихся частей.

  • Sendmail - агент передачи почты / транспорта (MTA), он же SMTP-сервер. (Есть и другие, например exim4)

    • Что-то откроет сеанс с SMTP-сервером домена, чтобы отправить сообщение другому хосту в этом домене. (SMTP-сервер домена обнаружен через DNS-записи MX)
  • Как только SMTP-сервер получает сообщение, он может делать несколько вещей:

    • Если полученное сообщение предназначено для другого домена, оно может ретранслировать сообщение на SMTP-сервер этого домена.
    • Если полученное сообщение относится к тому же домену, на котором живет SMTP-сервер, он может передать сообщение локальному агенту доставки почты (MDA) (если он не действует как сам MDA).
    • В системах UNIX локальный MDA обычно копирует сообщение в почтовую папку локального пользователя (mbox или Maildir) или другой механизм хранения.

Если у вас SMTP-сервер, работающий в системе UNIX/Linux, вы можете использовать почтовый агент пользователя (MUA), такой как mutt , pine или другую программу, для чтения почты из локальной очереди. Вы должны войти в локальную систему, чтобы это работало.

Что если вы хотите читать почту, хранящуюся в удаленной системе? В удаленной системе должен быть запущен сервер POP3 или IMAP, который будет получать сообщения из учетной записи на удаленной системе и доставлять их вам, при необходимости с функциями управления в случае IMAP. POP3/IMAP не может отправлять сообщения.

Приложения, которые позволяют вам читать почту с удаленного сервера через POP3 или IMAP, также позволят вам отправлять почту через SMTP и должны будут реализовывать / быть клиентом для обоих протоколов. POP3 / IMAP и SMTP не должны жить на одном хосте.

Безопасность была обеспечена большинством из этих протоколов на протяжении многих лет. Каждый из этих протоколов имеет дополнительные методы, требующие сертификаты клиента или аутентификацию. Особенно важно защитить SMTP-сервер от ретрансляции электронной почты для неаутентифицированных пользователей, так как он обычно используется для спама. Имя пользователя / пароль / сертификат SMTP может отличаться от любых POP3 / IMAP, которые могут отличаться от любых локальных учетных записей в системе.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .