Redhat Linux 6.4 mail server configuration

一.需求

搭建邮件服务器,用于测试环境邮件收发

操作系统:Redhat Linux 6.4

域名:xxx.testdomain.com.cn

DNS解析配置:使用已配置正反向认证的基于windows DNS server解析以上域名(不在此处配置)


二.邮件服务器背景知识


MUA(Mail User Agent)就是我们的邮件收发客户端,如foxmail,outlook等等。

MTA(Mail Transfer Agent)指邮件服务器用户发送和接受邮件的配置或软件,MTA接受foxmail(MUA)传输过来的邮件,再转发出去。

MDA(Mail Delivery Agent)前面提到邮件由MTA接受和发送,但是接受谁的邮件,又发送给谁,这个任务就交给MDA,它会把从foxmail(配置在邮件服务器中的某个账号即邮件发送人)的邮件转存到另一个账号(邮件接收人)制定的邮件目录下。最终才会有MTA 发出去。



三.邮件收发协议及服务 

邮件发送服务

协议: SMTP  

端口 :25 

对应Linux RPM包:senmail

 

邮件接收服务

协议:POP3   
端口:110

对应Linux RPM包:dovecot

 

用户验证服务

对应linux RPM包:cyrus-sasl

以上具体包详见安装步骤


四.安装过程

1.检查Send Mail 的安装包

[root@sql root]# rpm -qa | grep sendmail
sendmail-8.12.8-4
sendmail-cf-8.12.8-4
[root@sql root]# rpm -qa | grep m4
m4-1.4.1-13
[root@sql root]# rpm -q mailx
mailx-8.1.1-28
 



2.检查POP3IMAP 组件

[root@sql root]# rpm -qa | grep imap
php-imap-4.2.2-17
imap-2001a-18(未安装)或安装 dovecot

如果有用DNS 那么DNS 的MX 要把mail加上(此次未准备)

在已有DNSserver前提下配置/etc/resolv.conf

安装用户认证

#yum install cyrus-sasl
#yum install cyrus-sasl-md5
#yum install cyrus-sasl-plain
#yum install cyrus-sasl-lib



3.sendmail 的相关设置
1) M4 转换sendmail 所需的snedmail.cf

#cd /etc/mail
#m4 /usr/share/sendmail-cf/m4/cf.m4 / > sendmail.mc > redhat.cf
 

注意:

上面这一步是在sendmial.mc 文件中不包含有include(`/usr/share/sendmail-cf/m4/cf.m4') 时才需要做的一个转换动作。

一般情况下不需要做。
2)已包含了直接做下面的动作(redhat.cf 就是sendmail.cf 的内容

# m4 sendmail.mc > redhat.cf

 3)备份sendmail.cf

#mv /etc/mail/sendmail.cf /etc/mail/sendmail.cf.old
# cp redhat.cf  /etc/mail/sendmail.cf

 

4.修改sendmail.mc 设置

1)修改
#cd /etc/mail
#vi sendmail.mc
找到下面这一段

# 找到下面3行:
dnl TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(`confAUTH_MECHANISMS', `DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA') 
# 改成:
TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')

保存退出


2)重新制定文档

#m4 sendmail.mc > redhat.cf
#mv sendmail.cf sendmail.cf.old
#cp redhat.cf sendmail.cf
 


5. 启动 Mail Server

1)启动sendmail


# /etc/rc.d/init.d/sendmail start

2) 修改并 启动POP3 (只有安装了 imap-2001pop3这个文件,顾提供第二种方法
方法 1

# cd /etc/xinetd.d
# vi ipop3
修改下面一行
disable = yes
将其改成
disable = no

保存离开

#/etc/rc.d/init.d/xinetd restart
查看监听和端口

#netstat -tl



方法2) 此次采用该方法

1)添加收件人收件目录

# vi /etc/dovecot/conf.d/10-mail.conf
找到 #protocols=imap imaps一行,去掉#,修改为

protocols = imap pop3

找到 #defaultmailenv ,去掉#defaultmailenv = mbox:~/mail/:INBOX=/var/mail/%u,注释.

defaultmailenv = mbox:~/mail/:INBOX=/var/mail/%u

 

2)开启plaintext_auth

#vi /etc/dovecot/dovecot.conf
protocols = imap pop3 lmtp  --取消这行注释

增加下面2行认证方式:

disable_plaintext_auth=no
ssl_disable = no 

启动dovecot服务 

#/etc/init.d/dovecot start 
# /usr/sbin/sendmail -bd -q30m

参数说明:
-bd :表示将sendmaildaemon (可以想成常驻记忆体的类型)的类型启动!
-q : queue的意思,后面接的是时间参数,时间参数有:
s () m() h(小时)d()
-q30m表示每隔三十分钟,会将放置在邮件队列(一般是在/var/spool/mqueue )
的邮件尝试寄出一次!所以,上面的例子当中,说的是将sendmaildaemon
的类型启动之后,并且每30分钟去将邮件队列(为寄出的邮件)尝试寄出一次!



6.设定mail服务器主机名称

# cd /etc/mail
# vi local-host-names

注意,设置mail 服务器正确的 /etc/hosts mapping

 

7.设定邮件服务器的权限 /etc/mail/access

# vi /etc/mail/access
# Check the /usr/share/doc/sendmail/README.cf file for a description
# of the format of this file. (search for access_db in that file)
# The /usr/share/doc/sendmail/README.cf is part of the sendmail-doc
# package.
#
# If you want to use AuthInfo with "M:PLAIN LOGIN", make sure to have the
# cyrus-sasl-plain package installed.
#
# By default we allow relaying from localhost...

localhost.localdomain           RELAY
localhost                       RELAY
127.0.0.1                       RELAY
10.100.16                       RELAY
10.100.17                       RELAY
testdomain.com.cn               RELAY
10.100                          RELAY

 

8.设定使用者别名/etc/aliases
可省略


9.创建专用邮件收发帐号

#init 5 进入图形下界面 更容易添加用户和组

vi /etc/group
mail:x:12:mail,testuser1,testmailuser 
  --比如此处用非root做为邮件收发的账号
 

10. 测试发送邮件(从主机端发送)

# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost (127.0.0.1).
Escape character is '^]'.
220 vbird.adsldns.org ESMTP Sendmail 8.12.7/8.12.7; Sat, 22 Feb 2003 13:52:52 +0800
ehlo sql.dba.com <==测试
250-vbird.adsldns.org Hello sql.dba.com [192.168.6.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH LOGIN PLAIN    <= 成功
250-DELIVERBY
250 HELP
mail from: "test<root@sicnapp02145.testdomain.com.cn --发送地址
250 2.1.0 vbird@vbird.adsldns.org... Sender ok 
rcpt to: <testuser1@sicnmat02101.testdomain.com.cn--目的邮件地址
250 2.1.5 root@vbird.adsldns.org... Recipient ok 
data --准备输出内容 
354 Enter mail, end with "." on a line by itself 
This is just testing 
.       --此处录入点符号 表示结束
250 2.0.0 h1M5qqJc022990 Message accepted for delivery 
quit--离开

 

11.设置开机启动

#chkconfig sendmail on
#chkconfig dovecot on
#chkconfig saslauthd on
 

12.重启服务

#service sendmail restart
#service dovecot restart
#service saslauthd restart


13. 客户端测试sendmail server结束11步测试结果



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值