歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

如何安裝CyrusIMAP服務器

  本文文件旨在提供在 Linux 系統中安裝 Cyrus IMAP 服務器的一些幫助.   1. 介紹:   感謝 Bob Anderson ([email protected]) 和 Jorge Paramo ([email protected]), 他們在我使用 linux 的歷程中給了我許多幫助.   什麼是 IMAP 以及為什麼要使用它?   IMAP( 互聯網郵件訪問協議 ) 提供了一種訪問遠程服務器上的電子郵件或 BBS 郵件的方法. IMAP 普遍被認為是 POP ( 郵局協議 ) 郵件的替代者. IMAP 允許用戶從不同的機子上訪問他們的電子郵件而不用下載那些郵件. 這種郵件的訪問方式更加有效, 而且對終端用戶來說有更多的好處.   可以在下面的網址下找到更詳細的資料:   [1]http://www.imap.org/whatisIMAP.Html   IMAP 和 POP 的比較可參見:   [2]http://www.imap.org/imap.vs.pop.brief.html   為什麼要用 Cyrus 服務器?   Cyrus 被設計成在一台不允許一般用戶登錄的服務器上運行. Cyrus 也被認為是 Unix 上的兩個最普遍的 IMAP 服務器之一. 另一個是華盛頓大學的 IMAP 服務器.   [3]FTP://ftp.cac.washington.edu/imap/imap.tar.Z   2. 我的系統之細節   我已經成功地在分別運行 Linux Kernel 2.1.79 和 2.0.33 的 486DX66 和 Pentium 兩台機子上安裝了 Cyrus 系統. 這兩台機器是基於 Slackware 3.4 的.   3. Tcl 的安裝   在安裝 Cyrus 之前先確認你已經在自己的機子上安裝了 Tcl, 否則你將無法使用 Cyrus Admin Tool (cyradm).   你可以在下面的網址找到最新 tcl 的資源:   [4]ftp://ftp.sunlabs.com/pub/tcl/   在安裝之後, 確認在目錄 /usr/local/lib/ 下存在 liBTcl.a 文件. Tcl 8.0 使用的是 libtcl8.0.a, 你應當用下面的命令為它建立一個軟連接:   # ln -s libtcl8.0.a libtcl.a   4. makedepend 安裝   在你的系統中檢查是否有 makedepend 命令. 如果沒有也不用擔心, Cyrus 資源中就有. ( 在我安裝的 Slackware 3.4 中就沒有 makedepend 命令. )   為了安裝 makedepend , 先解壓 Cyrus 的分發版, 然後進入 makedepend 目錄, 輸入下面的命令:   ./configure   make   cp ./makedepend /usr/local/bin/makedepend   5. Cyrus 的安裝   請小心地按照 Cyrus 分發版中的注意事項進行安裝. 你可以在下面的網址中找到這些注意事項的一個拷貝:   [5]http://andrew2.andrew.cmu.edu/cyrus/imapd/install.html   關於某些安裝步驟的一些提示:   如果你用的是 Slackware 3.4 ( 使用 影子口令 ), 你應當這樣配置 :   ./configure --with-login=unix_pwcheck   並直接這樣 make 就可以:   make depend   make all CFLAGS=-O   第一步: 當加入 cyrus 用戶時, 我將用戶信息加鎖, 以最小化可能的安全漏洞.   第三步: 我不單單是拷貝一個 /etc/syslog.conf , 而且編輯它們.   第九步: 在 linux 下, 確認象下面那樣激活 pwcheck , 否則服務器便不會正確地工作:   umask 0;/usr/cyrus/bin/pwcheck &   umask 022   然後把下面的代碼加到激活腳本中:   if [ -f /usr/cyrus/bin/pwcheck ]; then   echo -n "Starting pwcheck for imap"   umask 0;/usr/cyrus/bin/pwcheck &   umask 022   fi   我將這些代碼加入到我的 /etc/rc.d/rc.local 中, 它們運行正常. 第十二步: 當編輯 /etc/inetd.conf 的時候, 記得將 TCP 包 包含進去,如下:   imap stream tcp nowait cyrus /usr/sbin/tcpd /usr/cyrus/bin/imapd   還有當你編輯完成後, 不要忘了給 inetd 發送-HUP信號:   # ps ax grep inetd   61 ? S 0:00 /usr/sbin/inetd   # kill -HUP 61   6. Sendmail 的設定   如果你沒有 sendmail 的源碼, 現在就下載吧. 除了運行 IMAP 外, 你還可以用它來做許多有趣的事, 比如設置反垃圾郵件的特性等等.   下面是我的 mc 文件. 除非在 /etc/sendmail.cN 文件中有用戶名的入口, 否則它將把郵件轉移給 IMAP. 它允許像 root 那樣的系統用戶把他們的郵件保存在緩沖池裡; 然而, 一般的用戶賬號缺省地將使用 IMAP. 不要簡單的拷貝下面的代碼, 因為 sendmail 會因為用的是空格而不是制表符而出錯:   divert(-1)   #   # (C) Copyright 1995 by Carnegie Mellon University   #   # All Rights Reserved   #   # Permission to use, copy, modify, and distribute this software and its   # documentation for any purpose and without fee is hereby granted,   # provided that the above copyright notice appear in all copies and that   # both that copyright notice and this permission notice appear in   # supporting documentation, and that the name of CMU not be   # used in advertising or publicity pertaining to distribution of the   # software without specific, written prior permission.   #   # CMU DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING   # ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL   # CMU BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR   # ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,   # WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,   # ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS   # SOFTWARE.   #   # Contributed to Berkeley by John Gardiner Myers .   #   # This sample mc file is for a site that uses the Cyrus IMAP server   # exclusively for local mail.   #     divert(0)dnl   VERSIONID(`@(#)cyrusproto.mc 8.3 (Carnegie Mellon) @(#)cyrusproto.mc 8.3)   OSTYPE(linux)   define(`confBIND_OPTS,`-DNSRCH -DEFNAMES)   FEATURE(nouUCp)   FEATURE(nocanonify)   FEATURE(always_add_domain)   MAILER(smtp)   MAILER(local)   MAILER(cyrus)     define(`confLOCAL_MAILER,`cyrus)     LOCAL_RULE_0   R$=N $: $#local $: $1   R$=N < @ $=w . > $: $#local $: $1   Rbb + $+ < @ $=w . > $#cyrusbb $: $1     LOCAL_CONFIG   FN /etc/sendmail.cN     # end of mc file   在生成 /etc/sendmail.cf 文件後, 創建一個叫 /etc/sendmail.cN 的文件, 將不打算用 IMAP 發送功能的用戶帳號寫入其中:   root   majordom   stan   mothra   在安裝完 Sendmail 8.8.8 之後我還安裝了 mail.local 作為給其它用戶賬號使用的本地發信程序. 下面是生成 mail.local 的訣竅. 先進入 sendmail 安裝點下的 mail.local 的目錄, 然後執行以下操作:   cp Makefile Makefile.orig   cp Makefile.dist Makefile   make   cp mail.local /bin/mail.local   chmod 4555 /bin/mail.local   執行完之後, 重啟 sendmail.   還有不要忘了關掉 Cyrus 安裝指南.   7. 設置信箱   確認要按照 IMAP 服務器的測試進行, 如果一切順利, 就繼續設置其它一些信箱.   8. 不承諾   不作任何擔保, 也沒有金錢回報, 請自己承擔使用的風險.   9. 資源   必要的安裝包.   Cyrus 的主頁:   [6]http://andrew2.andrew.cmu.edu/cyrus/imapd/   最新的 Cyrus 版本可以從下面的地點下載:   [7]ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/   Tcl 的主頁:   [8]http://sunscript.sun.com/   最新的 Tcl 資源可以從下面的地點下載:   [9]ftp://ftp.sunlabs.com/pub/tcl/   Sendmail 的主頁:   [10]http://www.sendmail.org/   最新的 Sendmail 版本可以從下面的地點下載:   [11]ftp://ftp.sendmail.org/ucb/src/sendmail/   參考資料:   1. http://www.imap.org/whatisIMAP.html   2. http://www.imap.org/imap.vs.pop.brief.html   3. ftp://ftp.cac.washington.edu/imap/imap.tar.Z   4. ftp://ftp.sunlabs.com/pub/tcl/   5. http://andrew2.andrew.cmu.edu/cyrus/imapd/install.html   6. http://andrew2.andrew.cmu.edu/cyrus/imapd/   7. ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/   8. http://sunscript.sun.com/   9. ftp://ftp.sunlabs.com/pub/tcl/   10. http://www.sendmail.org/   11. ftp://ftp.sendmail.org/ucb/src/sendmail/




Copyright © Linux教程網 All Rights Reserved