sendmail运行的主机需要具有完整的域名
# service sendmail start
# m4 sendmail.mc > sendmail.cf
实例配置要求
邮件服务器的IP地址为192.168.1.2,主机域名为mail.test.com
邮件服务器将为“test.com”域中的用户提供邮件服务
邮件服务器具有SMTP用户认证功能
域名设置
邮件服务器需要进行域名注册
在test.com区域文件中进行A记录和MX记录的设置
@ IN MX 5 mail.test.com.
mail IN A 192.168.1.2
设置local-host-names文件
local-host-names文件用于设置提供邮件服务的域名
在local-host-names文件中增加“test.com”域
# vi /etc/mail/local-host-names
//添加邮件服务器提供邮件服务的域名
test.com
开启sendmail服务的网络接口
在sendmail.mc文件中设置服务地址
# vi sendmail.mc
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
//修改为
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl
设置SMTP的用户认证
sendmail.mc文件中的配置
# vi /etc/mail/sendmail.mc
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
//去除行首的注释标记“dnl”,修改为
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
启动saslauthd服务程序
# service saslauthd start
邮件用户帐号
Sendmail服务器使用Linux系统中的用户帐号作为邮件帐号
建立邮件用户组
# groupadd mailuser
建立邮件用户帐号
# adduser -g mailuser -s /sbin/nologin mike
初始化用户口令
# passwd mike
设置邮件别名和邮件群发功能
邮件别名和邮件群发功能使用aliases机制实现
aliases和aliases.db文件
/etc/aliases /etc/aliases.db
aliases文件的记录格式
name: addr_1, addr_2, addr_3, . . .
设置邮件别名
admin: mike
设置邮件群发
testgroup: mike,john
修改aliases文件后更新aliases.db文件
# newaliases
访问控制的设置
access.db数据库可实现基于主机地址的访问控制
# cat /etc/mail/access
localhost.localdomain RELAY
localhost RELAY
127.0.0.1 RELAY
192.168.1 RELAY(加入允许网段)
access.db数据库默认开启了对邮件服务器本机用户的邮件投递
生成sendmail.cf文件
# cd /etc/mail
# m4 sendmail.mc> sendmail.cf
重新启动sendmail服务器
当完成对sendmail服务器的配置后,需要重新启动服务程序
# service sendmail restart
验证服务程序启动
# netstat -ntpl | grep 25
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 6835/sendmail: acce
安装dovecot 服务器(pop3服务)
# system-config-packages
开启dovecot 的pop3服务
修改dovecot.conf文件
# vi /etc/dovecot.conf
//将以下配置行
#protocols = imap imaps
//修改为
protocols = imap imaps pop3 pop3s
使用脚本启动dovecot服务
对dovecot.conf配置文件进行设置后,需要重新启动dovecot服务程序
# service dovecot restart
设置dovecot服务的启动状态
设置dovecot的启动状态
# chkconfig --level 35 dovecot on
验证dovecot服务启动
使用netstat命令查看dovecot已经监听110端口
# netstat -ntpl | grep 110