设为首页 收藏本站
查看: 3009|回复: 0

[经验分享] 安装电子邮件系统SMTP

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-6-1 08:33:49 | 显示全部楼层 |阅读模式
电子邮件系统概述
收发信服务(Postfix+Dovecot)
SMTP认证控制

#########################################################

练习一:准备案例环境

邮件服务器:mail.tarena.com  192.168.4.5
邮件域:@tarena.com
邮件帐号:服务器的系统用户
发信服务软件:postfix
收信服务软件:dovecot

提供DNS域名解析:
[iyunv@www ~]# yum  -y  install  bind  bind-chroot
.. ..
[iyunv@www ~]# mv  /etc/named.conf  /etc/named.conf.origin
[iyunv@www ~]# vim  /var/named/chroot/etc/named.conf
.. ..

[iyunv@www ~]# vim  /var/named/chroot/var/named/tarena.com.zone
.. ..
@             IN      MX      5       mail.tarena.com.
mail          IN      A                  192.168.4.5
.. ..

[iyunv@www ~]# service named restart
[iyunv@www ~]# chkconfig  named  on

[iyunv@www named]# host  -t  MX  tarena.com      //客户端检查MX记录
tarena.com mail is handled by 10 mail.tarena.com.


练习二:构建 postfix 发信服务器 【SMTP协议,TCP 25端口】

1. 安装 postfix 软件包
[iyunv@svr5 ~]# yum  -y  install  postfix
[iyunv@svr5 ~]# chkconfig  postfix  on

2. 简化、调整主配置文件,启动 postfix 服务
[iyunv@svr5 ~]# cd /etc/postfix/
[iyunv@svr5 postfix]# postconf  -n  >  tmp.txt
[iyunv@svr5 postfix]# mv  main.cf  main.cf.origin
[iyunv@svr5 postfix]# mv  tmp.txt  main.cf

[iyunv@svr5 ~]# vim  /etc/postfix/main.cf
.. ..
#inet_interfaces = localhost                  //注释掉此行
myhostname = mail.tarena.com
mydomain = tarena.com                  //邮件域
myorigin = $mydomain                  //显示的发件域
mydestination = $mydomain, $myhostname          //本地投递域
home_mailbox = Maildir/                  //邮箱类型
.. ..
[iyunv@svr5 ~]# service  postfix  restart
[iyunv@svr5 ~]# chkconfig  postfix  on
[iyunv@svr5 ~]# netstat  -antp | grep :25
tcp     0   0  0.0.0.0:25      0.0.0.0:*      LISTEN      5927/master


3. 添加电子邮箱账号

[iyunv@svr5 ~]# useradd  nick
[iyunv@svr5 ~]# echo  1234567  |  passwd  --stdin  nick

[iyunv@svr5 ~]# useradd  hunter
[iyunv@svr5 ~]# echo  1234567  |  passwd  --stdin  hunter


4. 使用 telnet 测试发信(nick给hunter)

[iyunv@pc205 ~]# telnet mail.tarena.com 25         //连接邮件服务器的25端口
Trying 192.168.4.5...
Connected to mail.tarena.com (192.168.4.5).
Escape character is '^]'.
220 mail.tarena.com.com ESMTP Postfix
HELO localhost                      //宣告客户端的主机地址
250 mail.tarena.com.com
MAIL FROM:nick@tarena.com                 //指定发件人地址
250 2.1.0 Ok
RCPT TO:hunter@tarena.com                  //指定收件人地址
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.
[iyunv@pc205 ~]#


5. 检查邮件投递结果

[iyunv@svr5 ~]# ls  ~hunter/Maildir/new/          //新邮件列表
1379059530.V802I3ec129M716267.svr5.tarena.com
[iyunv@svr5 ~]# cat ~hunter/Maildir/new/1379059530.*
.. ..
Subject:Test mail 1.
  No.1 mail document.. ..
Message-Id: <20130913080450.1514631DA0B@mail.benet.com>
Date: Fri, 13 Sep 2013 16:04:40 +0800 (CST)
From: nick@tarena.com




练习三:构建 dovecot 收信服务器 【POP3/IMAP4协议,TCP 110/143端口】

1. 安装 dovecot 软件包
[iyunv@svr5 ~]# yum  -y  install   dovecot
[iyunv@svr5 ~]# chkconfig  dovecot  on

2. 调整 dovecot 服务配置、启动服务
[iyunv@svr5 ~]# vim  /etc/dovecot/conf.d/10-auth.conf
disable_plaintext_auth = no              //允许明文认证通信
[iyunv@svr5 ~]# vim  /etc/dovecot/conf.d/10-mail.conf
mail_location = maildir:~/Maildir           //明确指定邮箱类型及路径

[iyunv@svr5 ~]# service  dovecot  restart
[iyunv@svr5 ~]# netstat  -anpt | grep  dovecot
tcp        0      0 :::110         :::*         LISTEN      12694/dovecot
tcp        0      0 :::143         :::*         LISTEN      12694/dovecot


3. 使用 telnet 测试收信(hunter)

[iyunv@pc205 ~]# telnet mail.tarena.com 110         //连接邮件服务器的110端口
Trying 192.168.4.5...
Connected to mail.tarena.com (192.168.4.5).
Escape character is '^]'.
+OK Dovecot ready.
USER hunter                          //以用户hunter登录
+OK
PASS 1234567                          //密码为1234567
+OK Logged in.
LIST                              //查看邮件列表
+OK 6 messages:
1 451

.
RETR 1                             //获取编号为1的邮件
+OK 451 octets
Return-Path: <nick@tarena.com>
X-Original-To: hunter@tarena.com
Delivered-To: hunter@tarena.com
Received: from localhost (svr6.tarena.com [192.168.4.6])
        by mail.tarena.com.com (Postfix) with SMTP id D4B5131D8B2
        for <hunter@tarena.com>; Tue, 22 Oct 2013 14:58:46 +0800 (CST)
Subject:Test mail 1.
  No.1 mail document.. ..
.
QUIT                             //断开telnet连接
+OK Logging out.
Connection closed by foreign host.
[iyunv@pc205 ~]#


练习四:实现 SMTP 发信认证

1. 启动 saslauthd 认证服务

[iyunv@svr5 ~]# yum  -y  install  cyrus-sasl          //此包默认通常已安装

[iyunv@svr5 ~]# service  saslauthd  start
[iyunv@svr5 ~]# chkconfig  saslauthd  on

[iyunv@svr5 ~]# testsaslauthd  -u hunter  -p 1234567  -s  smtp
0: OK "Success."                       //检查saslauthd服务

2. 调整 postfix 配置,启用SMTP认证

[iyunv@svr5 ~]# vim  /etc/postfix/main.cf
.. ..
mynetworks = 127.0.0.1                  //设置本地网络
smtpd_sasl_auth_enable = yes                  //启用SASL认证
smtpd_sasl_security_options = noanonymous          //阻止匿名发信
smtpd_recipient_restrictions =              //设置收件人过滤
  permit_mynetworks,  permit_sasl_authenticated,
  reject_unauth_destination                  //拒绝向未授权的目标域发信

[iyunv@svr5 ~]# service postfix restart

3. 测试 SMTP 发信认证

1)以用户nick为例,未经过认证登录时,向外域发邮件会被拒绝
[iyunv@pc205 ~]# telnet mail.tarena.com 25
Trying 192.168.4.5...
Connected to mail.tarena.com (192.168.4.5).
Escape character is '^]'.
220 mail.tarena.com ESMTP Postfix
HELO localhost                      //宣告本机地址
250 mail.tarena.com
MAIL FROM:nick@tarena.com                 //指定发件人地址
250 2.1.0 Ok
RCPT TO:TsengYia@126.com                 //指定收件人地址
454 4.7.1 <TsengYia@126.com>: Relay access denied
                            //发送外域的发信请求被拒绝
quit                             //断开telnet连接
221 2.0.0 Bye
Connection closed by foreign host.
[iyunv@pc205 ~]#

2)为用户nick为例,生成用户名、密码的加密字串
[iyunv@svr5 ~]# printf  "nick" | openssl  base64
bmljaw==
[iyunv@svr5 ~]# printf  "1234567" | openssl  base64
MTIzNDU2Nw==

3)认证登录通过以后,才允许向外域发邮件
[iyunv@pc205 ~]# telnet mail.tarena.com 25
Trying 192.168.4.5...
Connected to mail.tarena.com (192.168.4.5).
Escape character is '^]'.
220 mail.tarena.com ESMTP Postfix
EHLO localhost                         //加密宣告本机地址
250-mail.tarena.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
AUTH LOGIN                         //声明要执行认证登录
334 VXNlcm5hbWU6
bmljaw==                         //输入用户名nick的BASE64编码
334 UGFzc3dvcmQ6
MTIzNDU2Nw==                         //输入密码1234567的BASE64编码
235 2.7.0 Authentication successful
MAIL FROM:nick@tarena.com                 //指定发件人地址
250 2.1.0 Ok
RCPT TO:TsengYia@126.com                 //指定收件人地址
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.
[iyunv@pc205 ~]#


#########################################################
EMOS_集成邮件系统-部署说明.pdf (558.91 KB, 下载次数: 0)


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-72600-1-1.html 上篇帖子: 关于Postfix邮件网关无法重启问题 下篇帖子: 关于Postfix邮件网关搭建中cdcc info运行错误解决方法 邮件系统 电子
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表