dovecot 是一個開源的IMAP和POP3郵件服務器 收件協議 (SMTP 傳輸發件)
POP/IMAP 是MUA從郵件服務器中讀取郵件時使用的協議。其中,與POP3是從郵件服務器中下載郵件存起來,IMAP則是將郵件留在服務器端直接對郵件進行管理、操作。
dovecot 可以被其他具有相同功能的軟件替代,比如:cyrus-imapd。
安裝;
yum install dovecot dovecot-devel dovecot-mysql pam-devel -y
2、dovecot 文件配置
dovecot 配置參考
# cat dovecot.conf
protocols = imap pop3 listen = * # 日志目錄 info_log_path = /var/log/dovecot-info.log debug_log_path = /var/log/dovecot-debug.log dict { #quota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext #expire = sqlite:/etc/dovecot/dovecot-dict-sql.conf.ext } !include conf.d/*.conf !include_try /etc/dovecot/local.conf
# dovecot-sql.conf.ext 下面自己創建編輯 passdb { driver = sql args = /etc/dovecot/dovecot-sql.conf.ext } # wmail 為前面創建的郵箱專用賬戶 userdb { driver = static args = uid=5000 gid=5000 home=/home/wmail/%d/%n } ####調試日志 auth_debug_passwords=yes mail_debug=yes auth_verbose=yes auth_verbose_passwords=plain
3、配置 dovecot 日志文件
需要 設置下權限 否則日志權限報錯
(mail dovecot: lda: Fatal: Can't open log file /var/log/dovecot-info.log: Permission denied)
# chown dovecot /var/log/dovecot-*.log # chmod 777 /var/log/dovecot-*.log
4、auth 認證 配置 參考:
# cat conf.d/10-auth.conf disable_plaintext_auth = no auth_mechanisms = plain login cram-md5 !include auth-system.conf.ext
5、10-ssl.comf 配置參考
10-ssl.conf文件主要是關於postfix的ssl認證相關的配置
ssl 先禁止用;
# cat conf.d/10-ssl.conf
ssl = no
6、10-mail.conf 文件配置參考
10-mail.conf 文件主要定義郵件用戶存儲相關信息的位置
# cat conf.d/10-mail.conf
mail_location = maildir:/home/wmail/%d/%n/Maildir mbox_write_locks = fcntl
7、10-master.conf 配置參考
10-master.conf文件定義了dovecot的pop3和imap端口
設置 auth-userdb 為之前創建的 postfix 專用用戶 wmail
# cat conf.d/10-master.conf |grep -v ^$ |grep -v ^#
service imap-login { inet_listener imap { port = 143 } } service pop3-login { inet_listener pop3 { port = 110 } } service auth { unix_listener auth-userdb { mode = 0600 user = wmail group = wmail } # Postfix smtp-auth unix_listener /var/spool/postfix/private/auth { mode = 0666 } # Auth process is run as this user. #user = $default_internal_user }
8、15-lda.conf 文件
修改15-lda.conf文件,是為了防止dovecot異常報錯。 # cat conf.d/15-lda.conf
postmaster_address = postmaster@example.com
9、在 /etc/dovecot/ 下創建 dovecot-sql.conf.ext 文件。
配置 mysql 鏈接信息。
# cat dovecot-sql.conf.ext driver = mysql connect = host=localhost dbname=postfix user=postfix password=postfix default_pass_scheme = MD5-CRYPT password_query = SELECT username AS user,password FROM mailbox WHERE username = '%u' AND active='1' user_query = SELECT maildir, 5000 AS uid, 5000 AS gid, CONCAT('dict:storage=',floor(quota/1000),' proxy::quota') as quota FROM mailbox WHERE username = '%u' AND active='1'
10、啟動dovecot
/etc/init.d/dovecot start chkconfig dovecot on 防止服務沖突 請關閉 portreserve /etc/init.d/portreserve stop chkconfig portreserve off
11、測試 dovecot
還可以 ss -tln 檢測 110 143 端口存活
telnet mail.wangxiaojing.com 110 telnet mail.wangxiaojing.com 143 出現+Ok Dovecot ready,則表示dovecot配置正確。