sendmail是smtp服务器吗?MTA和邮件服务器之间有什么区别吗?


15

我是新来的邮件用户,并不完全知道它是如何工作的。

我已经看到管理员使用sendmail发送电子邮件。sendmail是smtp服务器还是依靠smtp服务器中继电子邮件的客户端?我在Google上搜索,发现它是一个邮件传输代理。

邮件传输代理和邮件服务器之间有什么区别吗?

假设当我使用sendmail向user@yahoo.com发送电子邮件时,没有进行安全检查(反向dns等):我是否仍需要通过另一个smtp服务器(google.com?)还是可以发送邮件?从我的服务器使用sendmail?

如果有某种精神的人可以向我介绍有关邮件服务器如何工作的入门指南,那也将很好。

谢谢

Answers:


8

恕我直言,这个小教程MUA,MTA和MDA非常擅长解释Unix电子邮件系统的基本概念。

是的,配置正确的sendmail应该能够将电子邮件发送到可访问主机上的任何MTA(但是MTA可能出于各种原因拒绝该邮件)

现在,当您说mail server这通常是指以下任一/两者上的替代路径:

  • 接收方
    基本上用邮件服务器+在各种单独的机器模型(例如web / POP / IMAP / etc )上运行的各种邮件客户端替换目标主机MTA + MDA(和用户邮箱),通常适用于大多数公共邮件服务例如gmail / yahoo)。
  • 传输端
    基本上用邮件服务器+在各种不同机器型号上运行的各种邮件客户端替换发送主机MUA + MTA

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

电子邮件被发送到user @ domain

MUA 是电子邮件客户端。这将是SMTP客户端。(或更准确地说,是配置为运行特定SMTP客户端的用户界面,该客户端当然是该计算机本地的,但是当然连接到SMTP服务器)

MSA是MTA,表示它传输电子邮件,但它是MUA连接到的MTA。它在本地域上。它将运行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服务器Courier IMAPD

http://archive.vector.org.uk/art10500970
MAA(邮件访问代理):
管理电子邮件帐户的文件夹并使消息对MRA可用。MRA(邮件检索代理):通过MAA访问电子邮件文件夹,并使消息对MUA可用


您询问有关Sendmail的信息。我对这些与电子邮件相关的Linux程序知之甚少,但是Sendmail确实具有SMTP客户端,尽管它主要是MTA(并且任何可以充当MTA的程序都可以充当MSA,MSA只是MTA的一种形式)。

您询问是否可以直接发送到目标域的MTA,如果没有安全检查。我想我曾经做过MUA到MTA,只涉及一台SMTP服务器,所以是的。但是通常是您本地域中的MSA将其发送到那里的MTA。因此通常涉及两个SMTP服务器。我想看到的是,我运行了一个MSA SMTP服务器sendmail或postfix,看到它在域上进行DNS检查,看到它找到了目标MTA(另一个SMTP服务器)。然后我想他会尝试直接发送。对于我想发送到的一个域,我可以直接连接到该目标MTA。


1
注意-此链接上的图片ccm.net/contents/116-how-email-works-mta-mda-mua错误地将MDA 标识为POP / IMAP。但是该链接上的图片是错误的。
barlop 2016年

5

术语“电子邮件服务器”含糊不清。电子邮件有很多动人之处。

  • Sendmail是邮件传输/传输代理(MTA),又名SMTP服务器。(例如,还有其他exim4

    • 某些东西将打开与域的SMTP服务器的会话,以将消息发送到该域上的另一个主机。(通过DNS MX记录找到域的SMTP服务器)
  • SMTP服务器收到邮件后,可以执行以下操作:

    • 如果收到的邮件用于其他域,则可以将邮件中继到该域的SMTP服务器。
    • 如果收到的消息与SMTP服务器所在的域相同,则可以将消息传递给本地邮件传递代理(MDA)(如果它本身不充当MDA)。
    • 在UNIX系统上,本地MDA通常会将消息复制到本地用户的邮件后台打印程序(mboxMaildir)或其他存储机制。

如果你有一个SMTP服务器在UNIX / Linux系统上运行,你可以使用一个邮件用户代理(MUA)等muttpine或其他程序从本地假脱机阅读邮件。您必须登录到本地系统才能起作用。

如果您想阅读存储在远程系统上的邮件怎么办?远程系统必须正在运行POP3或IMAP服务器,它将从远程系统上的帐户中获取消息并将消息带给您,对于IMAP,还可以选择具有管理功能。POP3 / IMAP无法发送消息。

允许您通过POP3或IMAP从远程服务器读取邮件的应用程序也将允许您通过SMTP发送邮件,并且必须实现/成为这两种协议的客户端。POP3 / IMAP和SMTP不必位于同一主机上。

这些年来,大多数协议都采用了安全措施。这些协议中的每一个都有可选的方法来要求客户端证书或身份验证。保护SMTP服务器免于未经身份验证的用户中继电子邮件尤为重要,因为它通常会被滥用为垃圾邮件。SMTP用户名/密码/证书可以不同于任何POP3 / IMAP,而POP3 / IMAP可以与系统上的任何本地帐户都不同。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.