2019独角兽企业重金招聘Python工程师标准>>>
什么是MTA?
引用鸟哥私房菜的一段:
MTA (Mail Transfer Agent):
MUA 幫用戶傳送郵件到郵件主機上,那這部郵件主機如果能夠幫用戶將這封信寄出去,那他就是一部郵件傳送主機 (MTA) 啦!這個 MTA 就是『郵件傳送代理人』的意思。也來顧名思義一下,既然是『傳送代理人』, 那麼使用者寄出的信,幫使用者將屬於該用戶的信件收下時,就是找它 (MTA) 就對啦!基本上,MTA 的功能有這些:
收受信件:使用簡單郵件傳送協定(SMTP) MTA 主機最主要的功能就是:將來自用戶端或者是其他 MTA 的來信收下來,這個時候 MTA 使用的是 Simple Mail Transfer Protocol (SMTP),他使用的是 port 25 啦!
轉遞信件: 如果該封信件的目的地並不是本身的用戶,且該封信的相關資料符合使用 MTA 的權力, 那麼咱們的 MTA 就會將該封信再傳送到下一部主機上。這即是所謂的轉遞 (Relay) 的功能。
在linux服务器上,作为MTA的主要有两种
- sendmail
- postfix sendmail作为老牌的mta,配置比较麻烦,且从性能角度考虑,更多考虑使用postfix。
POSTFIX的基础设定
安装:
sudo apt-get install postfix
一些比较关键和基础的设定:
> myhostname = mail.example.com
> mydomain = example.com
> myorigin = $mydomain
> inet_interfaces = all
> mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
> mynetworks = 192.168.0.0/24, 127.0.0.0/8
> relay_domains =
> home_mailbox = Maildir/
相关说明:
myhostname:这是系统的主机名称(例如:系统名叫 mail 或 mail.example.com)。
mydomain:这是邮件服务器的域名(它可以是真实或虚构的域名)。
myorigin:这是本地邮寄的电邮发放及投递时用的域名。
inet_interfaces:它设置 postfix 可以用来接收邮件的网络界面。它们最少要包括 localhost 及 本地网域。
mydestination:这是可投递的网域(换言之,这台服务器是寄往这些网域的邮件的最终目的地)。
mynetworks:这是获信任可以通过服务器来发放或转发邮件的 IP 地址。当来自这些 IP 地址以外的用户尝试通过服务器发放邮件时,便会被拒绝。
relay_domains:这是本系统会把邮件转寄到的网域的清单。通过将它设置为空白,我们确保这台邮件服务器不会成为未受信任的网络的公开转发站。
如果要发往外部的网站,需要在relay_domains填写相应的域名。 也可以使用postconf -e设定,如:
postconf -e relay_domains=163.com
##MAIL CLIENT
- mutt
mail命令
安装:
sudo apt-get install mailutils
通常使用如下命令来发送邮件:
echo xxxx | mail -s subject abc@def.com
一些高级应用:
-aHEADER:content #添加mail的header信息,如需要指定发件人则:
-aFrom:spuser@example.com #在收件箱显示发件人为此。
-A attachment #添加附件
mutt使用方法
安装
sudo apt-get install mutt
基础使用兼容mail命令
==============================
Postfix 教学文档
郵件伺服器: Postfix
mutt配置
输入链接说明