http://blog.tianya.cn/blogger/post_show.asp?BlogID=506800&PostID=9013205
1.添加邮件虚拟主机虚名:
#cd /etc/mail
# vi local-host-names ,在里面添加邮件虚拟主机
xxit.com
mail.xxit.com
2.打开SMTP发信认证
#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
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
将其改为如下:
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl
重启sendmail
然后用m4重新生成sendmail.cf
#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
3.安装IMAP和POP3
[root@localhost mail]# rpm -qa|grep dovecot
dovecot-0.99.11-4.EL4
(RHEL3,imap:RHEL4 dovecot)
#vi /etc/doctov.conf
protocols = pop3 pop3s imap imaps
#service dovecot restart
#service sendmail restart
查看端口是否工作正常:
#netstat -utl
tcp 0 0 *:imaps *:* LISTEN
tcp 0 0 *:pop3s *:* LISTEN
tcp 0 0 *:pop3 *:* LISTEN
tcp 0 0 *:imap *:* LISTEN
5.安全认证组件:
[root@localhost ~]# rpm -qa|grep sasl
cyrus-sasl-md5-2.1.19-5.EL4
cyrus-sasl-plain-2.1.19-5.EL4
cyrus-sasl-gssapi-2.1.19-5.EL4
cyrus-sasl-ntlm-2.1.19-5.EL4
cyrus-sasl-sql-2.1.19-5.EL4
cyrus-sasl-2.1.19-5.EL4
cyrus-sasl-devel-2.1.19-5.EL4
#servcie saslauthd start //启动安全认证
-------------
测试邮件:
#mail q
#sendmail -q
#tail /var/log/maillog 多分析日志
6,创建邮件列表别名:
# vi /etc/aliases
最后一行加入:
ltocc:netseek,okman,javin,[email protected]
(给ltocc发邮件,netseek,okman,javin,cnseek@gmail可以收到邮件)
#newaliases 使别名生效.
但是这样做,可能在几年以后,越来越多,你看你的aliases里的include(包括)功能,使用文件类型的方法达到邮件群发的目的。
#vi /etc/mail/ltocc
netseek, \
okman, \
..
[email protected] ,最后一个不用呆", \",与变量设置规则相符.
#vi /etc/aliases
ltocc: :include:/etc/mail/ltocc
#newaliases
7,Relay转发
#vi /etc/mail/access
通常情况下,Sendmail不会为邮件服务Relay信息,这样可以防止一些有恶意的人利用别人的邮件服务器乱发邮件。缺省情况下,Sendmail关闭了Relay功能。如果你要为别的服务器Relay邮件,可以进行如下设置——在access文件中加入要为其Relay信件的机器,格式为:
hostname RELAY
ipaddress RELAY
如果要为一个域内多个机器Relay信件,则可以在/etc/mail/access文件中直接加入其子网IP或域名,如下所示:
access文件内容:
domainname.com RELAY(允许为域domainname的所有计算机relay邮件)
localhost RELAY
192.168.1.0 RELAY (为192.168.1.0此网内所有机器relay邮件)
此文件惟一决定了哪些机器、哪个域可以使用邮件服务器转发邮件。
根据自己需要修改完成后,生成数据库文件:
#makemap hash access.db <access //生成access.db文件
service sendmail restart
8.添加邮件登陆账号
#useradd –s /sbin/nologin nestseek
#passwd netseek
9.添加虚拟域:
#vi /etc/mail/virtusertable
[email protected] netseek
[email protected] cnseek
运行makemap命令为virtusertable重新建立数据库映谢。
#cd /etc/mail
#makemap hash virtusertable.db < virtusertable