一个完整的电子邮件系统应包括:SMTP服务器(Postfix)、POP3/IMAP服务器(Dovecot)、客户端工具(Thunderbird)、发信认证
相关术语
· MUA(Mail User Agent): Outlook、Foxmail、Thunderbird
MUA是一个邮件系统的客户端程序,提供了阅读、发送和接收邮件的用户接口,使用IMAP或POP3协议与服务器通信。
· MTA(Mail Transfer Agent): sendmail、postfix
MTA负责邮件的存储和转发。监视用户代理的请求,根据邮件的目标地址找出对应的邮件服务器,将邮件在服务器之间传输并且将接收到的邮件进行缓冲。
· MAA(Mail Access Agent):
MAA用于将用户连接到系统邮件库,使用POP或IMAP协议接收邮件
· MDA(Mail Ddlivery Agent): Procmail、Dropmail
MDA从MTA接收邮件,分析由 MTA 所收到的信件表头或内容等数据,来决定这封邮件的去向,通常会进行垃圾邮件及病毒扫描。
如果 MTA 所收到的这封信目标是自己,那么 MDA 会将邮件转到使用者的Mailbox,如果不是则将其转递出去。
各主要的 MTA 程序都有自己的 MDA 功能,不过有些外挂的程序功能更强大
· MRA(Mail Receive Agent) Dovecot
负责实现IMAP与POP3协议,与MUA进行交互
· Mailbox
postfix支持2种最常见的邮箱存储方式(当指定的存储位置最后一个字符为“/”时,自动使用Maildir存储方式)
> Mailbox:将同一用户的所有邮件内容存储在同一个文件中 (home_mailbox = Mailbox)
例如 /var/spool/mail/username ,这种方式比较古老,在邮件数量较多时查询和管理的效率较低
> Maildir :使用目录结构来存储用户的邮件内容,每一个用户对应有一个文件夹,每一封邮件作为一个独立的文件保存 (home_mailbox = Maildir/)
例如/home/username/Maildir/*。这种方式存取速度和效率更好,而且对于邮件内容管理也更方便