今天就跟大家聊聊有關(guān)linux系統(tǒng)中怎么安裝dovecot,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
專業(yè)成都網(wǎng)站建設(shè)公司,做排名好的好網(wǎng)站,排在同行前面,為您帶來客戶和效益!成都創(chuàng)新互聯(lián)為您提供成都網(wǎng)站建設(shè),五站合一網(wǎng)站設(shè)計(jì)制作,服務(wù)好的網(wǎng)站設(shè)計(jì)公司,網(wǎng)站制作、成都做網(wǎng)站負(fù)責(zé)任的成都網(wǎng)站制作公司!CentOS系統(tǒng)自帶的yum進(jìn)行安裝,安裝非常簡單,只需要一個(gè)包:dovecot
# yum install dovecot
就一切都搞定了
它的主要配置文件也只有一個(gè),位于 /etc/dovecot.conf
base_dir = /var/run/dovecot/ # dovecot運(yùn)行目錄 protocols = pop3 pop3s # 使用協(xié)議 listen = * # 監(jiān)聽連接進(jìn)來的ip地址,* => 所有的IPV4,[::] => 所有的IPV6 disable_plaintext_auth = no log_path = /var/log/dovecot.log #日志文件位置 info_log_path = /var/log/dovecot-info.log # debug信息 log_timestamp = “%Y-%m-%d %H:%M:%S ” ssl_disable = yes mail_location = maildir:/var/vmail/%u #用戶的郵件目錄位置,這里使用maildir方式存儲 mail_privileged_group = mail protocol imap { } protocol pop3 { pop3_uidl_format = %08Xu%08Xv } protocol lda { postmaster_address = postmaster@example.com } auth_verbose = yes # 認(rèn)證詳細(xì)日志 auth_debug = yes # 認(rèn)證的debug信息打開,可以顯示出SQL查詢語句,正常后可關(guān)閉 auth_debug_passwords = yes ??梢燥@示密碼失敗的詳細(xì)信息,正常后可關(guān)閉 auth default { mechanisms = plain login #認(rèn)證機(jī)制 passdb pam { } passdb passwd-file { args = /etc/dovecot/passwd #密碼文件 } userdb passwd { } userdb static { args = uid=vmail gid=vmail home=/var/vmail/%u #這里的uid和gid需要可以訪問/home/vmail郵箱目錄 } user = root socket listen { client { path = /var/spool/postfix/private/auth-client #postfix需要連接到這個(gè)sock進(jìn)行認(rèn)證 mode = 0660 user = postfix group = postfix } } } dict { } plugin { }
/etc/dovecot/passwd,可以使用明碼或者是編碼后的密碼:
user1@example.com:{PLAIN}user1’s password user2@example.com:{PLAIN}user2’s password
這里使用了明文密碼,也可以使用加密后的密碼:
dovecotpw -s ssha Enter new password: foo Retype new password: foo {SSHA}dZ9TYI7DTM+J558QUBRAIMd/WCOoFGeU
在 /etc/dovecot/passwd
joe:{SSHA}dZ9TYI7DTM+J558QUBRAIMd/WCOoFGeU
以上介紹了帳號使用文件存儲的方式,下面再介紹一下使用mysql數(shù)據(jù)庫進(jìn)行帳號存儲,只需要修改auth default區(qū)塊:
auth default { mechanisms = plain login passdb pam { } passdb sql { args = /etc/dovecot/dovecot-sql.conf } userdb passwd { } userdb sql { args = /etc/dovecot/dovecot-sql.conf } user = root socket listen { client { path = /var/spool/postfix/private/auth-client mode = 0660 user = postfix group = postfix } } }
/etc/dovecot/dovecot-sql.conf
driver = mysql connect = host=/tmp/mysql.sock dbname=postfix user=postfix password=mypassword default_pass_scheme = MD5-CRYPT # 如果使用postfixadmin管理,需要用這個(gè)加密方式 password_query = SELECT username as user, password from mailbox WHERE username = ‘%u’ user_query = SELECT maildir, 501 AS uid, 501 AS gid FROM mailbox WHERE username = ‘%u’ #這里uid和gid需要可以訪問帳號郵件存儲目錄
就這么簡單,配置完成了,下面我們來進(jìn)行一下簡單的測試:
helo mail.xxx.net 250 mail.xxx.net >>> auth login 334 VXNlcm5hbWU6 >>> dXNlcjFAZXhhbXBsZS5jb20= (Base64后的用戶名:user1@example.com) 334 UGFzc3dvcmQ6 >>> Zm9vYmFy (Base64后的密碼:foobar) 235 2.7.0 Authentication successful
用plain的方式認(rèn)證
telnet localhost 25
220 mail.xxx.net ESMTP Postfix >>> auth plain 334 >>> AHVzZXIxQGV4YW1wbGUuY29tAGZvb2Jhcg== (Base64后的用戶名和密碼:\0user1@example.com\0foobar) 235 2.7.0 Authentication successful
使用plain方式認(rèn)證需要注意,用戶名和密碼需要一起進(jìn)行編碼,用\0作為分隔符。
Base64的方式有很多,最后我們再介紹一個(gè)使用Ruby進(jìn)行編碼的方法:
inosin@mac:~ > ruby -rbase64 -e ‘puts Base64.encode64(“\0user1@example.com\0foobar”)’ AHVzZXIxQGV4YW1wbGUuY29tAGZvb2Jhcg== inosin@mac:~ > ruby -rbase64 -e ‘puts Base64.encode64(“user1@example.com”)’ dXNlcjFAZXhhbXBsZS5jb20= inosin@mac:~ > ruby -rbase64 -e ‘puts Base64.encode64(“foobar”)’ Zm9vYmFy
看完上述內(nèi)容,你們對linux系統(tǒng)中怎么安裝dovecot有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。