/ 中存储网

centos系统lnmp环境下安裝配置sendmail+dovecot

2014-07-25 09:32:13 来源:中存储网

1. 添加SendMail服務域名

 vim /etc/mail/local-host-names
 將「beyondhk.com」 加至 local-host-names 文件中
 一行一個域名


2. 更改Sendmail的網絡接口
 cp sendmail.mc sendmail.mc.bak /備份配置文件
 vim /etc/mail/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

查 找:

dnl DAEMON_OPTIONS(‘Port=submission, Name=MSA, M=Ea')dnl

修改為:

DAEMON_OPTIONS('Port=25, Name=MSA, M=Ea')dnl

若你的伺服不許可使用25,請更改其他.

 

3. 開啟SMTP的用戶認證
 vim /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

 

4. 安裝SMTP驗證saslauthd套件

 yum install cyrus-sasl cyrus-sasl-devel cyrus-sasl-plain cyrus-sasl-md5

 

5. 設定可以RELAY的區域
 指定為本機RELAY 驗證的部分會使用SMTP驗證
 vi /etc/mail/access
 Connect:localhost.localdomain RELAY
 Connect:localhost RELAY
 Connect:127.0.0.1 RELAY

 Connect:beyondhk.com RELAY

 

6. 生成sendmail.cf文件
 cd /etc/mail

 m4 sendmail.mc > sendmail.cf

 

7. 製作出 hash 格式的資料庫
 cd /etc/mail

 makemap hash access.db < access

 

8. 用戶管理指令
 groupadd mailuser   /* 建立郵件用戶組*/
 useradd -g mailuser -s /sbin/nologin mike   /*建立不能登錄系統的郵件用戶*/
 vim /etc/aliases   /*sendmail使用aliases機制實現郵件別名和群發功能*/
 admin: mike   /*admin是mike的別名*/
 testgroup: mike,john,tom,jack   /*郵件群發,向testgroup郵箱發送就是向4個人發送*/

 newaliases   /*對aliases.db數據庫更新*/

 

9. 安裝dovecot(POP3,IMAP)
 yum install dovecot
 vim /etc/dovecot/dovecot.conf
 查找:#protocols = imap pop3 lmtp

 更改:protocols = imap pop3 lmtp

 

10. 設定dovecot使用的驗證機制
 vi /etc/sysconfig/saslauthd
尋找:MECH=pam
 改為:MECH=shadow
11. 設置在系統3和5級別啟動 及重啟
 chkconfig --level 35 sendmail on
 chkconfig --level 35 saslauthd on
 chkconfig --level 35 dovecot on
service dovecot restart
 service saslauthd restart
 service sendmail restart
注意事項:
若發現Dovecot不能正常使用並在maillog中出了這個訊息:
user towns: Initialization failed: mail_location not set and autodetection failed: Mail storage autodetection failed with home=/home/towns
 Error: Invalid user settings. Refer to server log for more information.
vim /etc/dovecot/conf.d/10-mail.conf
 找到並修改下行,沒找到就自己加上去,注意/var/spool/mail/這段,請改成自己系統的
 mail_location = mbox:~/mail:INBOX=/var/spool/mail/%u