Postfix邮件服务器的原理和postfix + dovecot配置,使用Thunderbird发送邮件和SMTP认证

1、邮件的基本概念
MUA:邮件用户代理,客户端收发邮件的软件
MTA:邮件传输代理,服务器上的部署邮件服务器的软件
MDA:邮件投递代理,在邮件服务器上将邮件存放到相应的位置
MRA:邮件收取代理,为MUA读取邮件提供标准接口,主要使用POP3和IMAP协议
2、常用的MUA与MTA
MUA:Outlook、Mozilla Thunderbird、Foxmail
MTA:Sendmail、Postfix、Qmail、Exchange Server
3、邮件传递原理
发送邮件时:
   用户通过MUA将邮件投递到MTA
   MTA首先将邮件传给MDA
   MDA会根据邮件收件人的不同采取不同的方式处理
      收信人和发信人来自同一域:MDA将邮件存放到对应邮件存放地点
      收信人和发信人来自不同域:MDA将邮件还给MTA
      MTA通过DNS查询到收件人MTA的IP地址
      将邮件投递到收件人MTA
      收件人所在区域MTA将邮件投递到MDA
      MDA将邮件存放到对应邮件存放地点
接受邮件时:    
   用户通过MUA连接MRA
   MRA在邮件存放地点将邮件收取,并传递回MUA
4、邮件中继
MTA收到邮件有两种处理方式,其中一种是向外投递邮件,这个就是中继。
当MTA投递邮件时,邮件的收件人和发件人都不是MTA所在区域,这个叫第三方中继
5、邮件相关协议
SMTP:简单邮件传输协议    TCP    25
POP3:邮局协议版本3    TCP    110
POPs:提供加密的POP3    TCP    995
IMAP:交互邮件访问协议    TCP    143
IMAPs:提供加密的IMAP    TCP    993
6、SMTP认证
SASL简单身份验证和安全层

7.邮件服务配置文件内容的解释

#inet_interfaces = localhost     //监听接口
 22 myhostname = mail.tarena.com     //邮件服务器主机名
 23 mydomain = tarena.com            //邮件服务器所在区域
 24 myorigin = $mydomain             //发件人DNS后缀            
 25 mydestination = $mydomain        //指定Postfix允许处理的邮件
 26 home_mailbox = Maildir/         //邮箱类型
 27 mynetworks = 192.168.10.0/24     //设置允许哪些客户端直接将需要转发到外部区域的邮件提交给Postfix

实验环境:

1.由于邮件服务器@后跟域名所以首先 搭建DNS服务器。

2.邮件服务信息,邮件服务器 :mail.tarena.com    IP地址:192.168.1.20,邮件的账号为服务器的系统用户。

3.主要软件: 发信服务软件:postfix    收信服务软件:dovecot

实验(一)

搭建DNS服务器要求192.168.1.20可以解析mail.tarena.com的条目

安装软件包

修改主配置 文件/etc/named.conf

修改区域文件(邮件服务 标志为MX )

检查配置文件和区域文件配置是否有错误

重启服务并进行测试

实验(二)

实验目的:构建postfix发信服务器(SMTP协议,TCP   25端口)

1.查看软件包是否已经安装,如果没有安装 用YUM安装就可以。

2.修改主配置文件,把主配置文件做一个备份为main.cf.bak  ,更改非默认配置文件。

postconf -n  为非默认配置,只需要更改非默认配置文件就可以。用非默认配置文件重新生成一个main.cf主配置文件,对新生成的文件进行操作。

inet_interfaces默认监听的端口为本地回环地址,把它注释掉,就是监听任何地址

3.重启服务

4.添加电子邮箱账号nick 和hunter

5.使用telnet测试发信(nick给hunter发信),用客户端192.168.1.30测试(在/etc/resolv.conf添加DNS服务器的地址。

220 mail.tarena.com.com ESMTP Postfix
HELO localhost                  //宣告客户端的主机地址
250 mail.tarena.com.com
MAIL FROM:[email protected]         //指定发件人地址
250 2.1.0 Ok
RCPT TO:[email protected]          //指定收件人地址
250 2.1.5 Ok
DATA                      //表示要开始写邮件内容了
354 End data with <CR><LF>.<CR><LF>
Subject:Test mail 1.              //指定邮件标题
  No.1 mail document.. ..              //输入文本邮件内容
.                     //独立的 . 表示输入完毕
250 2.0.0 Ok: queued as D4B5131D8B2
quit                     //断开telnet连接
221 2.0.0 Bye
Connection closed by foreign host.

6.检查邮件投递结果(在服务器上 192.168.1.20)

实验(三)

实验目的:构建dovecot收信服务器 【POP3/IMAP4协议,TCP 110/143端口】

1.安装 dovecot 软件包

2.调整dovecot服务配置、启动服务 disable_plaintext-auth = no 允许明文认证,mail_location = maildir:~/Maildir明确指定邮箱类型及路径。

重新启动服务

3.使用telnet测试收信(hunter)在客户端192.168.1.30测试

USER hunter                  //以用户hunter登录
+OK
PASS 123456                  //密码为123456
+OK Logged in.
LIST                      //查看邮件列表
+OK 6 messages:
1 451
.
RETR 1                     //获取编号为1的邮件
+OK 451 octets

实验(四)

实验目的:使用Thunderbird工具收发信和实现SMTP发信认证。

1.解压软件包

2.安装软件,进入以下图像界面

点击跳过并使用已有的电子邮箱,添加自己给用户的邮箱账号,按继续。

3.SMTP认证的工作 方式:SASL认证,启动SASL认证可以防止邮件服务器成为垃圾 中转站,可以防止自己的邮件服务器发送垃圾邮件,被封。

SMTP的认证的软件包 :cyrus-sasl

查看软件包是否已安装

启动服务,随开机自启动

查看saslauthd服务功能是否被开启,如果是本地用户认证成功的才转发邮件,否则我就不转发。

调整postfix配置,启动SMTP认证

27 mynetworks = 127.0.0.1                  //设置本地网络
 28 smtpd_sasl_auth_enable = yes              //启用SASL认证
 29 smtpd_sasl_security_options = noanonymous      //阻止匿名发信
 30 smtpd_recipient_restrictions =              //设置收件人过滤
 31  permit_mynetworks,  
 32  permit_sasl_authenticated,
 33  reject_unauth_destination          //拒绝向未授权的目标域发信

从新启动服务

4.在客户端测试SMTP发信认证,以用户nick为例,未经过认证登录时,向外域发邮件会被拒绝。

220 mail.tarena.com ESMTP Postfix
HELO localhost                  //宣告本机地址
250 mail.tarena.com
MAIL FROM:[email protected]         //指定发件人地址
250 2.1.0 Ok
RCPT TO:[email protected]         //指定收件人地址
554 5.7.1 <[email protected]>: Relay access denied
                    //发送外域的发信请求被拒绝
quit                     //断开telnet连接

为了能使用户可以和外域发送邮件,必须通过认证,以用户nick为例,生成用户名、密码的加密字串,通过base64加密认证

认证登录通过以后,才允许向外域发邮件

AUTH LOGIN                 //声明要执行认证登录
334 VXNlcm5hbWU6
bmljaw==                 //输入用户名nick的BASE64编码
334 UGFzc3dvcmQ6
MTIzNDU2Nw==                 //输入密码1234567的BASE64编码
235 2.7.0 Authentication successful
MAIL FROM:[email protected]         //指定发件人地址
250 2.1.0 Ok
RCPT TO:[email protected]             //指定收件人地址
250 2.1.5 Ok
DATA                     //开始编写邮件内容
354 End data with <CR><LF>.<CR><LF>
Subject:SMTP Auth Test             //指定邮件标题
  Hello, here is a test mail.             //输入文本邮件内容
.                     //独立的 . 表示输入完毕
250 2.0.0 Ok: queued as 8C48431D8B2
quit                     //断开telnet连接
221 2.0.0 Bye
Connection closed by foreign host.

总结:默认邮件服务器搭建完毕后,只能给本域发送邮件,如果想给外域发送邮件,必须要SMTP认证后才可以发送邮件,使用SMTP认证后可以防止邮件服务器发送垃圾邮件。

时间: 2024-10-15 14:40:53

Postfix邮件服务器的原理和postfix + dovecot配置,使用Thunderbird发送邮件和SMTP认证的相关文章

烂泥:Postfix邮件服务器搭建之软件安装与配置

本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb Postfix邮件服务器的搭建需要使用到几个软件,分别是cyrus-sasl.postfix.dovecot.postfixadmin.roundcubemail,只有这几个软件相互配合才能搭建一套完整的邮件服务器. PS:本次实验在centos6.5 64bit上进行. 一.软件功能介绍 cyrus-sasl.postfix.dovecot.postfixadmin.roundcub

烂泥:Postfix邮件服务器搭建之虚拟用户配置

本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 在前一篇文章<烂泥:Postfix邮件服务器搭建之软件安装与配置>中,我们介绍了psotfix邮件服务器搭建所需要的软件,以及各个软件的基本配置. 目前已经达到了通过系统用户可以登录到postfix邮件服务器,但是为了管理的方便和系统安全,我们一般是通过postfix的虚拟用户来管理邮件用户的. Postfix虚拟用户的原理是,先在系统中创建一个用户,该用户不能登录到系统,然后把邮件

linux redhat6.5 中 搭建Postfix邮件服务器

Postfix 是一种电子邮件服务器,它是由IBM华生研究中心(T.J. Watson Research Center)的荷兰籍研究员Wietse Venema为了改良sendmail邮件服务器而产生的.最早在1990年代晚期出现,是一个开放源代码的软件.实验需要:软件包 postfix(发送传输邮件) .dovecot(接受邮件) bind(DNS解析)实验目标:使zhangsan lisi 帐号通过postfix可以互发邮件 1:安装DNS 编辑named.conf 2:编辑named.rf

Linux6.5部署Postfix邮件服务器

2-12-部署Postfix邮件服务器实现邮件的收发功能 试验环境: 服务端:xuegod63.cn       IP:192.168.1.63 部署Postfix+Dovecot Postfix:提供邮件发送功能,使用的协议:SMTP,端口:25 Dovecot:提供邮件接收功能,使用的协议:POP3.IMAP,端口:110,143 邮件通信协议 1.SMTP(SimpleMail Transfer Protocol,简单邮件传输协议):主要用于发送和传输邮件.SMTP协议使用的TCP端口为2

【我的Linux,我做主!】动手搭建Postfix邮件服务器

目录:(一)了解邮件的整个收发流程(二)配置postfix邮件服务器(三)使用图形客户端收发邮件 (一)了解邮件的整个收发流程 (1.1)电子邮件在我们的日常生活中,属于经常用到的一种信息传输服务.我们使用的可能是自己公司的邮件服务器,也可能使用的是互联网中提供的知名邮件服务器,例如QQ邮箱.163邮箱.126邮箱等,它们收发邮件的流程都是一样的.假设现在有一个126邮件服务器,在邮件服务器上有两个帐户,分别是[email protected]和[email protected],此时如果tom

【转】Linux 下搭建Postfix邮件服务器详解:

在我自己的服务器上面搭建了邮件服务器,为的是接下来写shell脚本进行报警监控.当服务器发生意外,可以及时发送邮件服务器到邮箱. 看了两个教程,按照两个教程来搭建的,感谢原作. Linux 下搭建Postfix邮件服务器详解: 1.首先关闭sendmail服务 service sendmail stop 2.chkconfig sendmail off(关闭开机自启动) 3.修改DNS正解文件,使DNS能够解析邮箱服务 添加下面两行 mail.zhubf.com. IN A           

烂泥:Postfix邮件服务器搭建之准备工作

说实话,Postfix邮件服务器的搭建是一件很麻烦的事情,需要各种软件之间的配置和调试.在写这篇文章之前,我也是搭建测试了不下于10次才算把整个流程给走通,今天刚好有时间把整个搭建过程记录下来. 在正式安装postfix之前,我们先来介绍在搭建之前所需要做的准备工作. 一.域名解析 因为邮件服务器牵涉到域名的问题比较多,所以在此我们先来介绍有关域名解析的相关配置. 我们需要在域名解析控制台添加MX.TXT和相关的A记录,在平时的域名解析过程中,使用最多的是DNSPod以及万网,下面分别一一介绍下

postfix 邮件服务器搭建详解

常见的邮件服务器: Sendmail .Qmail .postfix .Zmaile Exchange  . Notes/Domino Coremail  .U-mail zmailer: 新出的邮件服务器.整合前面的邮件 COREMAIL:最早网易使用的工具 Nores/Domino IBM 必须试用 IBM的硬件设备 U-mail : 收费的软件 postfix: 6版以后是默认安装 红帽中免费开源的邮件服务器 邮件系统角色: MUA(邮件用户代理) MTA (邮件传输代理) MDA (邮件

Postfix邮件服务器(基础)

邮件服务器 电子邮件服务器是处理邮件交换的软硬件设施的总称,包括电子邮件程序.电子邮箱等.为用户提供基于E-mail服务的电子邮件系统,人们通过访问服务器实现邮件的交换. 常见的邮件服务器 类型 名称 特点 服务器端 Sendmail 资格最古老,运行稳定,但安全性欠佳 Postfix 采用模块化设计,在投递效率.稳定性.性能及安全性方面表现优秀,与sendmail保持足够的兼容性. Qmail 采用模块化设计,速度快.执行效率高,配置稍微复杂点 客户端 Outlook oe foxmail 邮