关于mail mailx 以及sendmail 的理解

  最近在弄邮件告警相关的东西,接触到了mail这一块,但是发送邮件的时间看到网上的用法 yum install mailx sednmail -y 这一块很迷糊 所以决定自己研究下

  首先套用官话解释:

    mail, mailx都是收发邮件用的,类似浏览器的作用,叫做mail user agent.
sendmail是做邮件服务器的,类似apache, nginx的作用,可以用作mail transport agent
三个概念:
邮件用户代理(MUA,Mail User Agent); 邮件传送代理(MTA,Mail Transport Agent);邮件分发代理(MDA,Mail Deliver Agent)
mail 是用户使用客户端(类似foxmail)负责向MTA 撰写 发送邮件;mailx和mail本职是一样的,只是版本不同,叫法不一样
sedmail就是负责邮件传输的MTA

  好了,我们简单理解下邮件的发送过程:

邮件服务器的传输过程如上所示,其几个重要组件如下:

1)MUA(Mail User Agent):即邮件客户端软件,如Windows的Outlook,客户通过它来浏览、写和收邮件;

2)MTA(Mail Transfer Agent):当你在MUA(如outlook)上点发邮件时,其实它是把邮件发到MTA(如SendMail, Postfix),通过MTA实现发邮件的功能;

3)MDA(Mail Delivery Agent):MDA是挂在MUA下的一个小功能,它的主要功能是分析邮件的表头,决定邮件去向。

邮件传输过程采用的协议如下:

1)SMTP(Simple Mail Transfer Protocal)

 

邮件接收所需要的组件(MRA)和协议(POP3和IMAP)

邮件接收需要的组件为:

1)MRA(Mail Retrival Agrent):MUA向MRA发送请求接收邮件

邮件接收有两种协议:

1)POP3:当MUA收到邮件后,该协议将默认删除Mailbox里的内容

2)IMAP:当MUA收到邮件后,该协议不删除Mailbox里的内容,所以一定要对每个用户的Mailbox进行容量限制

 

所以我们可以这样理解:

sendmail 服务跟 mail 命令能不能发邮件没关系。
发邮件只有要 too@too.com 这个地址就行了,查询 too.com MX记录得到这个邮箱 SMTP 服务的地址,直接往这个地址丢就好了。

MUA,MTA这种说法太学术了,说白了MUA就是邮件客户端,thunderbird之类的;MTA就是邮件服务器,比如sendmail,其他的什么MSA,MDA,MRA都是中间环节可以无视。

用mail命令发邮件的过程基本就是

引用:
MUA(mail命令) --SMTP投递--> MTA(too.com的服务器上的sendmail或其他程序) --POP3或IMAP拉取--> MUA(配置了too@too.com的邮件客户端)

sendmail 是用来收邮件的,比如上面这个邮件是没法回的,因为你没填from:说明这封邮件的发件地址,如果你希望对方能够回邮件给你这台机器,那么可能是这样的流程:

引用:
MUA(mail命令, from: abc@def.com) --SMTP投递--> MTA(本地的sendmail服务,def.com的MX记录需要指向这台机器的IP地址) --SMTP投递--> MTA(too.com的服务器上的sendmail或其他程序) --POP3或IMAP拉取--> MUA(配置了too@too.com的邮件客户端)


这样对方就可以沿这条路的反向给你回邮件了。可以看到这里的MTA可以收到邮件存下来,等MUA拿走,也可以把邮件转发给另一个MTA,起到了转发的作用,所以叫做MTA。

至于第二个问题邮件服务器的用户其实最早的时候就是机器用户,abc@def.com就是说def.com的MX记录指向的机器真的有一个abc用户,但比较高级的MTA允许这个用户也配成虚拟的,不与实际用户对应。

 

 

所以简单粗暴的理解下就是 如果我们只是想要发送邮件 只需要mail  或者mailx 就可以了,如果我们需要发送邮件并且能收到对方的邮件 我们可能就需要sendmail 服务了。

 

 

 

 

 

转载于:https://www.cnblogs.com/ZFBG/p/9182967.html

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值