1.Sendmail服务软件包
sendmail-8.13.8-2.el5.i386.rpm:sendmail服务的主程序包,服务器端必须安装该软件包。
sendmail-cf-8.13.8-2.el5.i386.rpm:sendmail宏文件包
sendmail-devel-8.13.8-2.el5.i386.rpm:sendmail服务器开发工具软件包
sendmail-doc-8.13.8-2.el5.i386.rpm:sendmail服务器的说明文档
m4-1.4.5-3.el5.1.i386.rpm:宏处理过虑软件包
dovecot-1.0-1.2.rc15.el5.i386.rpm:接收邮件软件包,安装时需要注意安装顺序
2.Sendmail相关配置文档
sendmail.cf:sendmail核心配置文件,位于/etc/mail/sendmail/sendmail.cf
sendmail.mc:sendmail提供sendmail文件模板,通过编辑此文件后再使用m4工具将结果导入sendmail.cf完成配置sendmail核心配置文件,降低配置复杂度,位于/etc/mail/sendmail.mc
local-host-name:定义收发邮件服务器的域名和主机别名,位于/etc/mail/local-host-name
access.db:用来设置sendmail服务器为哪些主机进行转发邮件,位于/etc/mail/access.db
aliases.db:用来定义邮箱别名,位于/etc/mail/aliases.db
virtusertable.db:用来设置虚拟账户,位于/etc/mail/virtusertable.db
3.邮件功能组件
MUA:邮件用户代理(Mail User Agent)
MTA:邮件传输代理(Mail Transfer Agent)
MDA:邮件递送代理(Mail Delivery Agent)
4.Sendmail常规服务器配置
搭建Sendmail服务器流程:
(1)配置sendmail.mc文件
(2)使用m4工具将sendmail.mc文件导入sendmail.cf文件
(3)配置local-host-names文件
(4)建立用户帐号
(5)重新启动服务使配置生效
Sendmail应用案例1:
局域网网段:192.168.8.0/24
企业域名:redking.com
DNS及Sendmail服务器地址:192.168.8.1
sendmail服务是和DNS服务结合相当紧密的一个服务,所以我们在配置sendmail之前,需要设置并调试好DNS服务器(DNS配置请参考上季[RHEL5企业级Linux服务攻略]--第4季 DNS服务全攻略),DNS配置中设置MX资源记录指定邮件服务器地址。
(1)配置DNS主配置文件named.conf
image
(2)配置redking.com区域文件
使用MX记录设置邮件服务器,这条记录一定要有,否则Sendmail无法正常工作。
image
(3)配置redking.com反向区域文件
image
(4)修改DNS域名解析的配置文件
vim /etc/resolv.conf
image
(5)重启named服务使配置生效
image
(6)安装Sendmail软件包
RHEL5默认安装sendmail-8.13.8-2.el5m4-1.4.5-3.el5.1软件包,我们只需要安装sendmail-cf-8.13.8-2.el5宏文件包就可以了。
image
(7)编辑sendmail.mc修改SMTP侦听网段范围
配置邮件服务器需要更改IP地址为公司内部网段或者0.0.0.0,这样可以扩大侦听范围(通常都设置成0.0.0.0),否则邮件服务器无法正常发送邮件。
vim /etc/mail/sendmail.mc
第116行将smtp侦听范围从127.0.0.1改为0.0.0.0
image
第155行修改成自己域:LOCAL_DOMAIN(`redking.com')dnl
image
使用m4命令生成sendmail.cf文件,其实sendmail.mc即是一个模板文件哈~
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
image
(8)修改local-host-names文件添加域名及主机名
vim /etc/mail/local-host-names
image
 (9)安装Dovecot软件包(POP3和IMAP)
到这里sendmail服务器基本配置完成后,Mail Server就可以完成邮件发送工作,如果需要使用POP3和IMAP协议接收邮件还需要安装dovecot软件包。在rhel5里dovecot整合了IMAP。
安装dovecot软件包要解决其依赖性,安装per-DBI-1.52-1.fc6.i386.rpmmysql-5.0.22-2.1.0.1.i386.rpm
 image
(10)启动Sendmail服务
service sendmail restart和service dovecot restart命令启动sendmail和dovecot服务,如果每次开机启动,可以使用chkconfig命令修改。
image
(11)测试端口
使用netstat命令测试是否开启SMTP的25端口、POP3的110端口及IMAP的143端口。
image
也可以使用netstat -ntla
image
(12)验证Sendmail的SMTP认证功能
telnet localhost 25 后输入ehlo localhost验证Sendmail的SMTP认证功能
telnet localhost 110
image
telnet mail.redking.com 25
image
telnet mail.redking.com 110
image
(13)建立用户
image
(14)客户端测试
image
image
 image
image
Sendmail应用案例2:
公司采用两个网段和两个域来分别管理内部员工
team1.redking.com域采用192.168.10.0/24网段
team2.redking.com域采用192.168.20.0/24网段
DNS及Sendmail服务器地址:192.168.8.1
要求:
(1)员工可以自由收发内部邮件并且能够通过邮件服务器往外网发信。
(2)设置两个邮件群组team1和team2,确保发送给team1的邮件“team1.redking.com”域成员都可以收到,同理哈,发送给team2的邮件“team2.redking.com”域成员都可以收到。
(3)禁止待客室的主机192.168.10.88使用Sendmail服务器。
需求分析:
要求(1)中设置员工自由收发内部邮件可以参考Sendmail应用案例1去设置哈,如果需要邮件服务器把邮件发到外网需要设置access文件。
要求(2)需要别名设置来实现群发功能。
要求(3)需要在access文件中拒绝(REJECT)192.168.10.88
image
因实验原因:由senmail邮件服务器代替路由器功能哈~
image
配置实战:
(1)配置DNS服务
配置DNS主配置文件named.conf
image
配置redking.com.zone区域文件
image 
配置8.168.192.in-addr.arpa.zone反向区域文件
image
配置team1.redking.com.zone区域文件
image
配置10.168.192.in-addr.arpa.zone反向区域文件
image
配置team2.redking.com.zone区域文件
image
配置20.168.192.in-addr.arpa.zone反向区域文件
image
(2)修改DNS域名解析的配置文件
vim /etc/resolv.conf
image
(3)重启named服务使配置生效
image
(4)安装Sendmail软件包
RHEL5默认安装sendmail-8.13.8-2.el5m4-1.4.5-3.el5.1软件包,我们只需要安装sendmail-cf-8.13.8-2.el5宏文件包就可以了。
image
(5)编辑sendmail.mc修改SMTP侦听网段范围
配置邮件服务器需要更改IP地址为公司内部网段或者0.0.0.0,这样可以扩大侦听范围(通常都设置成0.0.0.0),否则邮件服务器无法正常发送邮件。
vim /etc/mail/sendmail.mc
第116行将smtp侦听范围从127.0.0.1改为0.0.0.0
image
第155行修改成自己域:LOCAL_DOMAIN(`redking.com')dnl
image
使用m4命令生成sendmail.cf文件,其实sendmail.mc即是一个模板文件哈~
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
image
(6)修改local-host-names文件添加域名及主机名
vim /etc/mail/local-host-names
image
(7)群发邮件设置
vim /etc/aliases
aliases文件语法格式:
真实用户帐号:别名1,别名2
image
使用newaliases命令生成aliases.db数据库文件
image
(8)配置访问控制的access文件
在RHEL5中,默认Sendmail服务器所在的主机的用户可以任意发送邮件,而不需要任何身份验证,即注意/etc/mail/access文件中有一行Connect: 127.0.0.1 RELAY
image
生成access数据库文件
makemap hash access.db > access 
image
(9)安装Dovecot软件包(POP3和IMAP)
到这里sendmail服务器基本配置完成后,Mail Server就可以完成邮件发送工作,如果需要使用POP3和IMAP协议接收邮件还需要安装dovecot软件包。在rhel5里dovecot整合了IMAP。
安装dovecot软件包要解决其依赖性,安装per-DBI-1.52-1.fc6.i386.rpmmysql-5.0.22-2.1.0.1.i386.rpm
 image
(10)启动Sendmail服务
service sendmail restart和service dovecot restart命令启动sendmail和dovecot服务,如果每次开机启动,可以使用chkconfig命令修改。
image
(11)测试端口
使用netstat -ntla命令测试是否开启SMTP的25端口、POP3的110端口及IMAP的143端口。
image
(12)建立用户
image
(13)客户端测试
192.168.8.0/24网段测试
image
image
 image
群发测试
 image
image
image 
 192.168.10.0/24网段测试
image
在服务器端可以看到team1组成员邮箱已经收到192.168.8.0/24网段中michael用户发的邮件。下面我们在192.168.10.0/24网段接收测试下~~~ 
image
正常接收群发邮件
image
下面由team1.redking.com区域向team2.redking.com用户成员群发邮件~~~
image
成功发送~~
image
下面team2成员用户应该收到两个封邮件
 192.168.20.0/24网段测试
服务器端状态:
image
客户端状态:
image
image
待客室主机192.168.10.88测试
最后我们测试禁止待客室的主机192.168.10.88使用Sendmail服务器
image
image
192.168.10.88主机不能使用Sendmail邮件功能
image
将受限的IP地址192.168.10.88换成其他不受限制的IP地址就可以将这原本不能发送的邮件发送出去了~~~
image
##########################华丽分割线############################
本季讲解了[RHEL5企业级Linux服务攻略]--第5季 Sendmail服务全攻略之常规配置,下季更新[RHEL5企业级Linux服务攻略]--第5季 Sendmail服务全攻略之高级配置哈,敬请期待哈~~~0(^-^)0
##########################华丽分割线############################