RHEL5使用Dovecot做POP3(S)/IMAP(S)服务器

我在另一篇文章里说到用Qpopper做POP3服务器,这里介绍使用功能更强大、更安全、更优秀的同时支持IMAP4、POP3协议的Dovecot。

RHEL5光碟自带的Dovecot是一个测试版本,我们可以下载一个稳定版本RPM包,但我推荐使用源码包编译的方式安装配置Dovecot。

(最新)源码包下载、解压、配置、编译、安装:
    [root@pps ~]# [url][/url]
    [root@pps ~]# tar zxf dovecot-1.1.13.tar.gz
    [root@pps ~]# cd dovecot-1.1.13
    [root@pps dovecot-1.1.13]# ./configure --prefix=/usr/local/dovecot
    [root@pps dovecot-1.1.13]# make
    [root@pps dovecot-1.1.13]# make install

【注意】在配置阶段(configure)使用"--prefix"指定安装的路径,如果不指定的话,默认安装到/usr/local后Doevecot相关文件“一盘散沙”,像我这样就全都放在/usr/local/dovecot目录下了,易于查找管理,也让人对Dovecot更明了。

============================================================
    下面是configure的最后输出信息:

Install prefix ...................... : /usr/local/dovecot
    File offsets ........................ : 64bit
    I/O loop method ..................... : epoll
    File change notification method ..... : inotify
    Building with SSL support ........... : yes (OpenSSL)
    Building with IPv6 support .......... : yes
    Building with pop3 server ........... : yes
    Building with mail delivery agent  .. : yes
    Building with GSSAPI support ........ : no
    Building with user database modules . : static prefetch passwd passwd-file sql nss
    Building with password lookup modules : passwd passwd-file shadow pam checkpassword sql
    Building with SQL drivers ............:

如果显示password查询不支持pam,应该是没有安装pam-dev包所致。

我的RHEL5没有安装RPM包形式的mysql,configure没能检测出我安装在/usr/local目录下的mysql。如果日后有可能需要用到mysql数据库验证,我可以指定"--with-mysql=/usr/local/mysql/lib"来让Dovecot支持mysql。
    ============================================================

Dovecot安装在/usr/local/dovecot,配置文件是/usr/local/dovecot/etc/dovecot.conf,但安装后只有一些示例配置文件在dovecot/etc目录下,如下所示:
    [root@pps ~]# cd /usr/local/dovecot/etc
    [root@pps etc]# ls
    dovecot-db-example.conf  dovecot-ldap-example.conf
    dovecot-example.conf     dovecot-sql-example.conf

我选择dovecot-example.conf作为蓝本进行修改配置:
    [root@pps etc]# cp dovecot-example.conf dovecot.conf

+++++++++++++++++++++++++++++
          我所启用、修改的选项如下:
    +++++++++++++++++++++++++++++
    #
    # /usr/local/dovecot/etc/dovecot.conf
    #

# 支持imap imaps pop3 pop3s协议
    protocols = imap imaps pop3 pop3s

# 允许不启用TLS情况下使用普通文本方式验证
    disable_plaintext_auth = no

# 启用ssl支持
    ssl_disable = no

# 指定证书和私钥的位置
    ssl_cert_file = /etc/pki/tls/certs/dovecot.pem
    ssl_key_file = /etc/pki/tls/certs/dovecot.pem

============================================================
    【注意】在源码包doc目录下,可以使用mkcert.sh脚本,根据dovecot-openssl.cnf文件里的信息生成自己签署认证的dovecot.pem文件,证书dovecot.pem生成在/etc/ssl/certs目录下,私钥dovecot.pem生成在/etc/ssl/private目录下。为了使得和我配置的sendmail.pem在同一位置,我将dovecot.pem(包括证书和私钥)放在/etc/pki/tls/certs/dovecot.pem文件里。我没有使用mkcert.sh生成,而是来到/etc/pki/tls/certs目录下执行make dovecot.pem。
    ============================================================

# 这是登录进程使用的用户,不是访问用户邮件的用户,不一定非得用下面的"mail"用户。
    login_user = mail

============================================================
    【注意】示例配置文件里有相关的建议,最好使用一个“没其它用途”的用户,默认是dovecot用户。这个用户是用来控制认证进程的访问权限的。当客户端验证成功后,产生新的具有相应用户权限的进程来对邮件进行访问操作。
    ============================================================

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wyfsyx.html