简单邮件服务(Postfix+dovecot)

原创 2015年11月19日 19:38:17

电子邮件基本概念:

MUA(Mail User Agent)接收邮件所使用的邮件客户端,使用IMAP或POP3协议与服务器通信;
MTA(Mail Transfer Agent) 通过SMTP协议发送、转发邮件;
MDA(Mail Deliver Agent)将MTA接收到的邮件保存到磁盘或指定地方,通常会进行垃圾邮件及病毒扫描;将接收下来的邮件存放到对应用户邮筒当中的程序。通过分析MTA所收到邮件的表头或内容,来判断此邮件是属于哪个用户,然后决定将此邮件投递给哪个用户的邮筒里
MRA(Mail Receive Agent)负责实现IMAP与POP3协议,与MUA进行交互;通过MRA服务器提供的邮政服务协议(POP)来接收自己的邮件(zhud)
SMTP(Simple Mail Transfer Protocol)传输发送邮件所使用的标准协议;
IMAP(Internet Message Access Protocol)接收邮件使用的标准协议之一;
POP3(Post Office Protocol 3) 接收邮件使用的标准协议之一。
SPF(Sender Policy Framework)发信者策略架构,SPF是为了防范垃圾邮件而提出来的一种DNS记录类型,它是一种TXT类型的记录,它用于登记某个域名拥有的用来外发邮件的所有IP地址。
按照SPF的格式在DNS记录中增加一条TXT类型的记录,将提高该域名的信誉度,同时可以防止垃圾邮件伪造该域的发件人发送垃圾邮件。SPF是跟DNS相关的一项技术,它的内容写在DNS的txt类型的记录里面。mx记录的作用是给寄信者指明某个域名的邮件服务器有哪些。SPF的作用跟mx相反,它向收信者表明,哪些邮件服务器是经过某个域名认可会发送邮件的。

邮件服务器基本都有MTA,MDA,MRA 组成。
MRA与MUA交互,将server上的邮件通过IMAP、POP3协议送给client端(加密用IMAPS、POP3s)

常用的MUA有:outlook、thunderbird、Mac Mail、mutt;
常用的MTA服务有:sendmail、postfix;
常用的MDA有:procmail、dropmail;
常用的MRA有:dovecot、Cyrus-IMAP。

邮件收发过程:

    开始,用邮件用户代理(MUA)创建了一封电子邮件,邮件创建后被送到了该用户的邮件传输代理(MTA)——传送过程使用的是SMTP协议。然后MTA检查该邮件的收信人,向DNS服务器查询接收方MTA对应的域名,然后将邮件发送至接收方MTA——使用的仍然是SMTP协议。这时,邮件已经从远程的用户工作站发送到了他的ISP的邮件服务器,并且转发到了您的域中。
    然而,邮件在传输过程中很有可能被转移到另外一个MTA,但最终会有某个MTA接管这封邮件,并且负责投递。这时,MTA会将邮件传递给某个邮件投递代理(MDA),MDA的主要作用就是将邮件保存到本地磁盘,有些MDA也可以完成其他功能,比如邮件过滤或将邮件直接投递到子文件夹。需要注意的是,完成将邮件存放在服务器上这个功能的是MDA。
    最后,查收邮件。运行MUA,您可以使用IMAP协议或POP3协议来向邮件服务器查询您的邮件。邮件服务器会先确认您的身份,然后从邮件存储区检索邮件列表,并将列表返回给MUA。现在您就可以阅读邮件了。

Postfix(以下配置在内网范围访问)

Postfix之所以流行是因为其性能和安全性。它支持邮件过滤,称之为milter。milter的功能是允许邮件先经过防病毒和防垃圾邮件的软件扫描,然后再发送到Postfix。经过标准的配置,Postfix能够在较少的系统资源下运行。与其它MTA一样,Postfix有一个主要的配置文件(main.cf)。Postfix的每种配置都是基于表来驱动的,它可以转换成任何关系型数据库或文本文件。它还使用了Perl兼容的正则表达式库。与其它MTA相比,安装Postfix相对复杂一些。它支持虚拟邮箱和虚拟域。postfix在性能上大约比sendmail快三倍。

安装

#yum install -y postfix

查看sendmial

#rpm -qa | grep sendmail(在rhel6.4里没有)
#rpm -qa | grep sendmail | xargs rpm -e(若存在,删除)

修改MTA(默认邮件传输代理)

#alternatives –config mta

更改配置主配置文件

#vim /etc/postfix/main.cf

myhostname = test.example.com  #主机名  
mydomain = example.com         #域名
myorigin = $mydomain           #送件来源主机名  
inet_interfaces = all   #监听所有地址来的服务,不只是127.0.0.1  
inet_protocols = all    #支持IPv6  
mydestination = $myhostname, localhost.$mydomain, localhost #MDA的目的地,能够收信的主机地址。与mail to相对。如果DNS中配了MX,则要把MX内容填在这。  
mynetworks = 127.0.0.0/8, 192.168.173.0/24
#受信的network。只有来自这些网络的邮件才帮忙Relay,从来源IP的角度过滤  
relay_domains = $mydestination #MTA的目的地,通常为下游Mail地址。从来源域名的角度过滤 
mail_spool_directory /var/spool/mail/

重启服务

#service postfix restart
#chkconfig postfix on

如果需要邮件转发(发给user1的都发给user2)

#vim /etc/aliases

#加入一行
user1:  user2

#postalias /etc/aliases

dovecot

Dovecot 是一个开源的 IMAP 和 POP3 邮件服务器,支持 Linux/Unix 系统。
POP / IMAP 是 MUA 从邮件服务器中读取邮件时使用的协议。其中,与 POP3 是从邮件服务器中下载邮件存起来,IMAP4 则是将邮件留在服务器端直接对邮件进行管理、操作。

安装

#yum install -y dovecot

更改配置

#vim /etc/dovecot/dovecot.conf

# 去掉下面一行前面的注释
# protocols =imap pop3 lmtp

重启服务

#service dovecot restart
#chkconfig dovecot on

测试

#echo “this is a test” | mail -s “to user2 not user1” user1@test.example.com
#cat /var/spool/mail/user1
#cat /var/spool/mail/user2

版权声明:本文为博主原创文章,未经博主允许不得转载。

CentOS 64位下安装Postfix+Dovecot 配置邮件服务器笔记

Postfix 和Dovecot功能确实很强大,支持各种认证方式, 配置非常灵活, 就因为太过于灵活, 反而安装配置的过程中,容易有各种各样的陷阱,碰到问题了, 日志是最好的解决办法了。    我们假...
  • langeldep
  • langeldep
  • 2014年08月16日 11:31
  • 12463

配置电子邮件传输----邮件接收dovecot

fsfs
  • helloPucca
  • helloPucca
  • 2017年05月24日 17:24
  • 611

[centos]linux搭建PostFIX和dovecot收发邮件

监控linux某些服务状态并进行邮件报警,使用postfix和dovecot进行邮件的收发。
  • qq_20441521
  • qq_20441521
  • 2016年12月05日 12:16
  • 2784

邮件服务器搭建 Centos+Postfix+Dovecot+Roundcube

1、安装postfix yum remove sendmail yum install postfix 1.1、修改postfix配置 vim /etc/postfix/main.cf,在文件...
  • yaojackie
  • yaojackie
  • 2015年02月06日 16:57
  • 1338

Centos6 Postfix+Dovecot+Postfixadmin+Roundcube 搭建Webmail邮件系统

一 安装准备 1 添加DNS解析记录 2 配置iptables防火墙 3 配置hostname 4 配置软件源 二 环境配置 1 配置LAMP环境 2 整合Apache和PHP 3 测试php解析...
  • Air_Penguin
  • Air_Penguin
  • 2015年08月14日 15:47
  • 7883

Linux下Postfix的配置和使用

Linux下免费邮件服务Postfix的搭建方法和配置
  • hitabc141592
  • hitabc141592
  • 2014年05月16日 16:40
  • 60173

Python使用SMTP发送邮件(163,yeah等网易邮箱已测试可以)

#! /usr/bin/env python # -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText m...
  • lucahan
  • lucahan
  • 2016年07月30日 09:29
  • 24414

用Postfix + Dovecot 搭建的邮件服务器被垃圾邮件当中转服务器的处理

今天发邮件, 发送失败,然后到服务器上看日志, 发现硬盘被垃圾邮件的缓存队列和日志塞满了, tail    -f    /var/log/maillog   发现疯狂刷屏,部分日志如下 :Aug 17...
  • langeldep
  • langeldep
  • 2014年08月17日 14:22
  • 25364

Liunx学习篇第三章之~配置电子邮件传输(postfix)

电子邮件发送 >服务器使用SMTP协议将电子邮件提交至TCP端口25,或由本地客户端通过/usr/bin/sendmail程序进行提交。如果该   MTA是最终目标位置,邮件将传递至MDA。否则,将使...
  • zhaoxiaoheng
  • zhaoxiaoheng
  • 2017年05月23日 10:43
  • 92

【很棒】Postfix使用介绍

Postfix为何物,详见:http://zh.wikipedia.org/wiki/Postfix 0.关于Postfix postfix的产生是为了替代传统的sendmail.相较于s...
  • aqzwss
  • aqzwss
  • 2016年02月02日 23:03
  • 822
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:简单邮件服务(Postfix+dovecot)
举报原因:
原因补充:

(最多只允许输入30个字)