轉載http://http://wiki.extmail.org/%E9%99%86%E3%80%81%E9%85%8D%E7%BD%AEmaildrop和http://wiki.extmail.org/%E9%99%86%E3%80%81%E9%85%8D%E7%BD%AEmaildrop,只是中間有少許的更改
1、安裝Courier-Authlib
安裝以下軟件包:
shell
# yum install courier-authlib
# yum install courier-authlib-mysql
編輯/etc/authlib/authmysqlrc文件:
shell
# vi /etc/authlib/authmysqlrc
並將其內容清空,然後增加如下內容:
MYSQL_SERVER localhost
MYSQL_USERNAME extmail
MYSQL_PASSWORD extmail(這個爲數據庫密碼,爲了安全建議更改)
MYSQL_SOCKET /var/lib/mysql/mysql.sock
MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE extmail
MYSQL_USER_TABLE mailbox
MYSQL_CRYPT_PWFIELD password
MYSQL_UID_FIELD uidnumber
MYSQL_GID_FIELD gidnumber
MYSQL_LOGIN_FIELD username
MYSQL_HOME_FIELD homedir
MYSQL_NAME_FIELD name
MYSQL_MAILDIR_FIELD maildir
MYSQL_QUOTA_FIELD quota
MYSQL_SELECT_CLAUSE SELECT username,password,"",uidnumber,gidnumber,\
CONCAT('/home/domains/',homedir), \
CONCAT('/home/domains/',maildir), \
quota, \
name \
FROM mailbox \
WHERE username = '$(local_part)@$(domain)'
修改authdaemonrc文件
shell
# vi /etc/authlib/authdaemonrc
修改如下內容:
authmodulelist="authmysql"
authmodulelistorig="authmysql"
2、啓動courier-authlib:
shell
# service courier-authlib start
如一切正常,命令行將返回如下信息:
Starting Courier authentication services: authdaemond
修改authdaemon socket目錄權限
如果該目錄權限不正確修改,maildrop及postfix等將無法正確獲取用戶的信息及密碼認證:
shell
# chmod 755 /var/spool/authdaemon/
3、安裝maildrop
shell
# yum install maildrop
配置master.cf 爲了使Postfix支持Maildrop,必須修改/etc/postfix/master.cf文件,註釋掉原來的maildrop的配置內容,並改爲:
maildrop unix - n n - - pipe
flags=DRhu user=vuser argv=maildrop -w 90 -d ${user}@${nexthop} ${recipient} ${user} ${extension} {nexthop}
注意:flags前面有“兩個空格”
配置main.cf 由於maildrop不支持一次接收多個收件人,因此必須在main.cf裏增加如下參數:
maildrop_destination_recipient_limit = 1
4、測試maildrop對authlib支持
shell
# maildrop -v
看是否出現以下內容:
maildrop 2.1.0 Copyright 1998-2005 Double Precision, Inc.
GDBM/DB extensions enabled.
Courier Authentication Library extension enabled.
Maildir quota extension enabled.
This program is distributed under the terms of the GNU General Public
License. See COPYING for additional information.
注意事項:
1、如需重新編譯Maildrop軟件包,必須先獲得其源碼rpm包,並且必須先行安裝courier-authlib及其devel軟件包,否則編譯後的maildrop將無法打開authlib支持。
2、maildrop RPM包安裝時,會自動創建vuser用戶及vgroup用戶組,專門用於郵件的存儲,vuser:vgroup的uid/gid都是1000,這與一般的郵件文檔中提及用postfix用戶存郵件不一樣。因爲postfix用戶的uid一般都低於500,而Suexec模塊編譯時對UID/GID的要求是要大於500,因此使用postfix用戶不能滿足要求。其次,如果用Maildrop作爲投遞代理(MDA),以postfix身份投遞的話,會導致postfix MTA錯誤。