您查看的文章来源于http://www.oklinux.cn
============================================================
# 支持IMAP和POP3,默认即可,当然可以在其中加入很多参数以及优化,
protocol imap {
}
protocol pop3 {
}
# 本地投递代理设置
protocol lda {
# 发送拒绝信时使用的邮件地址(我目前也没清楚这里啥时候用)
postmaster_address = [email][email protected][/email]
}
# 如果想使用系统用户密码验证的话,只能把邮件帐号"@"以及其后的域名去掉。
# 如果你使用支持不同域用户([email][email protected][/email]不同于[email][email protected][/email])的其它密码数据库,
# 则可不必修改这里,默认是以%u也即类似"[email][email protected][/email]"的全名来当作用户名验证的。
auth_username_format = %n
============================================================
【注意】这里有一个弊端,如果使用"%n"来处理需要验证的用户名,则用户名后面的域名信息将会被抛弃,也就是说后面就无法再使用"%d"来获取用户域名信息了!
============================================================
# 默认的认证配置
auth default {
# 支持plain和login认证机制
mechanisms = plain login
# 为了和sendmail一致,这里使用pam密码验证方式(也可以使用shadow方式)
passdb pam {
}
============================================================
【注意】如果使用pam密码验证方式,需要在/etc/pam.d/目录下建立dovecot文件,
其内容和smtp文件一样即可。或者使用官方网站建议的:
# /etc/pam.d/dovecot
auth required pam_unix.so nullok
account required pam_unix.so
============================================================
# 系统用户始终用passwd作为用户数据库
userdb passwd {
}
# 需要用root用户来访问用户和密码数据库
user = root
}
好了,到此Dovecot的基本配置算完毕了,注意事项已经在上述配置的后面分别说清楚了。下面我们启动Dovecot,然后使用客户端Foxmail,Outlook测试是否OK。
【注意】防火墙需要开放110(POP3),143(IMAP),995(POP3S),993(IMAPS)端口。
启动dovecot:
[root@pps ~]# dovecot
如果Dovecot配置文件错误,这里会立刻提示出来。如果是客户端验证、接收(同步)等错误,则需要查看日志文件/var/log/maillog。
如果在日志中记录的错误不够详细,可以在配置文件里开启相关过程的“冗余”记录,比如:
# 显示协议层的SSL错误
verbose_ssl = yes
# 详细的认证过程信息记录
auth_verbose = yes
# 更详细的认证调试(debug)信息
auth_debug = no
更多的冗余、Debug选项可以参考示例配置文件或者官网相关资料。
停止dovecot:
[root@pps ~]# killdovecot.sh
这里的killdovecot.sh脚本是官网的脚本:
[root@pps etc]# cat /usr/local/dovecot/sbin/killdovecot.sh
#!/bin/sh
# master.pid is written to directory pointed by base_dir setting.
# /var/run/dovecot/ is a common location for it.
base_dir=`dovecot -a | grep ^base_dir: | sed 's/^[^:]*: //'`
kill `cat $base_dir/master.pid`
============================================================
非SLL/TLS的POP3/IMAP测试都OK。
~SSL/TLS测试~
IMAPS:发现Outlook Express能正常同步,而Foxmail(6.5 Beta3)出错。
如果没有启用SSL/TLS,Foxmail使用IMAP同步正常。
经过多次测试并参考互联网资料,我个人暂时认为是Foxmail Bug引起的。
POP3S:Foxmail、Outlook都正常。
Foxmail使用IMAPS同步邮件出错:
Apr 8 20:57:48 pps dovecot: imap-login: Disconnected (no auth attempts): rip=192.168.32.1, lip=192.168.32.50, TLS handshaking: SSL_accept() failed: error:1406B0CB:SSL routines:GET_CLIENT_MASTER_KEY:peer error no cipher
Outlook使用IMAP4同步邮件正常:
Apr 8 21:00:34 pps dovecot: imap-login: Login: user=<snail>, method=PLAIN, rip=192.168.32.1, lip=192.168.32.50, TLS
Apr 8 21:00:34 pps dovecot: IMAP(snail): Disconnected in IDLE bytes=258/443