1.2 要求
該文檔提到了三種服務器:web服務器,imap服務器和LDAP服務器。這些服務器可以位于獨立的主機上,或若干個獨立的機 器上(例如:23個web服務器,5個LDAP服務器和10個IMAP服務器),或單臺服務器上。同時需要具有在 Linux環境下從源代碼安裝軟件的基本知識
1.3 使用的軟件
1.4 特別注釋
2. 安裝軟件 2.1 Web服務器的安裝
2.2 LDAP服務器的安裝
2.3 IMAP服務器的安裝
3. 如何配置服務器協同工作 3.1 LDAP服務器 的配置
同樣,需要選擇一個用戶擁有cyrus管理權限。只有需要在imap服務器上配置cyrus時,才會需要考慮管理問題。另外,最好不要給一個已經 存在的用戶添加管理權限,這樣做可能導致安全問題或者導致該用戶不能查看自己的信件的問題。
3.2 imap服務器的配置
3.3 web服務器
例如,你可以將700,000個用戶分配到各個服務器上,平均每臺服務 器10000個用戶。郵件目的地址是user1@dom.ain的郵件將接入到某臺WEB服務器,而該郵件將根據maildrop屬性 被轉發到地址,而發網user657的郵件將被轉發給user657@mail34。而且,maildrop屬性同時可以被用作轉發地 址,如給user302的信件被轉發給someuser@somewhereelse.com。
對IMP的培配置一般將根據軟件文檔,配置結束以后,需要做如下修 改: 在config/defaults.php教程3增添如下內容:
- /* LDAP/IMAP Server Default */ $default->LDAP_server = 'ldap.dom.ain'; $default->LDAP_dn = 'o=someorg,c=US'; $default->LDAP_search_field = 'uid'; $default->ldap_choose_server = true;
- to mailbox.php3 apply the following patch:
- Index: mailbox.php3 =================================================================== RCS file: /home/cvs/imp/mailbox.php3,v retrieving revision 2.29 diff -c -r2.29 mailbox.php3 *** mailbox.php3 1999/07/29 07:20:00 2.29 --- mailbox.php3 1999/08/04 18:04:10 *************** *** 29,34 **** --- 29,51 ---- require './lib/mimetypes.lib'; require './config/defaults.php3'; + /************LDAP**************/ + + if ($default->ldap_choose_server) { + $ldapconnect = ldap_connect($default->LDAP_server); + if ($ldapconnect) { + print("YES! "); + $ldapbind = ldap_bind($ldapconnect); + $ldaps教程earch = ldap_search($ldapconnect, $default->LDAP_dn, $default->LDAP_search_field."=".$imapuser, array("maildrop")); + $ldapget = ldap_get_entries($ldapconnect, $ldapsearch); + $ldapspl = explode("@", $ldapget[0]["maildrop"][0]); + $server = $ldapspl[1]; + $port = $default->port; + } + }
- + /**********end ldap************/ + + /* Html styles configuration */ require './config/html.php3'; /* Mailbox configuration */
全部配置結束以后,將具有一個高可擴展性的web郵件系統。
注:1999年8月,IMP的新版本已經包含了這些補丁的內容,所以如果使 用新版本的話,就不需添加這些內容。
4. Miscellaneous 4.1 Adding Users
這里是一小段向LDAP服務器中增添用戶的代碼,并且同時向cyrus增添一個郵件用戶。這是針對 IMAP服務器設計的,但是你可以修改其適應別的環境。
- <?php
- $ldapconn = ldap_connect("ldap.dom.ain");
- $machine = "mail01";
- if ($ldapconn)
- {
- $ldhb = ldap_bind($ldapconn, "cn=cyrusadmin, o=someorg,c=US","password");
- $dn = "uid=". $username .", o=someorg, c=US";
- $info["uid"]=$username;
- $info["userpassword"] = $password;
- $info["objectclass"] = "account";
- $info["maildrop"] = $username ."@" .$machine .".dom.ain";
- $info["mailacceptinggeneralid"] = $username;
- $ldhb = ldap_add($ldapconn, $dn, $info);
- ldap_close($ldapconn);
- }
- $imapconn = imap_open("{" .$machine .".dom.ain:143}", "cyrusadmin","password");
- if ($imapopen)
- {
- imap_createmailbox($imapconn, "{" .$machine ."dom.ain:143}user.".$username );
- imap_close($imapconn);
- }
- ?>
新聞熱點
疑難解答