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

UW IMAP 服務器的性能優化

  概述: UW IMAP是由華盛頓大學開發的一個開放源碼的POP/IMAP服務器,這是一個使用的很廣泛的POP/IMAP服務器,象Mandrake、RedHat等比較流行的Linux發行版本都包含了UW IMAP服務器。但是在使用的過程中,常常會遇到一些這樣或那樣的問題,本文將討論在使用UW IMAP服務器時會碰到的一些問題,並給出相應的解決辦法,從而達到優化UW IMAP服務器性能的目的。 環境: 我們使用的試驗環境是RedHat7.1,需要用到以下軟件包: imap-2000-9.rpm 可以從RedHat7.1的安裝光盤中找到。 imap.tar.Z 可以從FTP.cac.washington.edu/imap/imap.tar.Z下載。 思路: 首先我們安裝imap-2000-9.rpm包,這個包中包含了imapd和ipop3在PAM中的認證機制,然後我們將重新編譯後的imapd和ipop3代替rpm包中的imapd和ipop3,這樣避免了自己重新寫PAM的認證規則。 注意: UW IMAP是沒有配置文件的,所以我們只能通過修改源程序以及采用其他一些輔助措施(比如優化xinetd)來達到對其進行性能調整的目的。但是這並不意味著需要您對linux下的c編程比較熟悉。 步驟: 一、獲得imap源代碼包 可以從ftp.cac.washington.edu/imap/imap.tar.Z下載imap的源代碼包,然後用以下命令解開源代碼包: #tar xvzf imap.tar.Z 將生成imap-2001.BETA.SNAP-0107221451目錄,然後進入該目錄: # cd imap-2001.BETA.SNAP-0107221451 二、修改源程序 通過修改源程序可以解決以下問題: 1.認證錯誤時,錯誤信息的出現有較長的延遲 為了防止別有用心的人猜測密碼,在認證錯誤後,有一段時間的延遲。為了取消該延遲,可以進入解開的源代碼目錄中的usr/osdep/unix目錄,然後編輯env_unix.c文件,查找sleep關鍵字,將sleep(3)這一行注釋掉。因為系統是通過該函數來達到延遲的目的的。 2.減小登錄超時時間 在用戶登錄過程中,如果一定時間內沒有輸入用戶名和密碼,系統會認為該會話超時,將終止會話,缺省超時時間是3分鐘,如果用戶量大,可以通過減小登錄會話超時時間來提高系統性能。 可以進入解開的源代碼目錄中的src/imapd目錄,然後編輯imapd.c文件,找到包含以下信息的一行: #define LOGINTIMEOUT 3 MINUTES 將其中的3改成1,也即認為登錄超時時間為1分鐘。 3.取消DNS反向解析 有時候,系統會對客戶機進行反向DNS解析,這將大大降低系統效率,可以進入解開的源代碼目錄,編輯Makefile文件,找到包含EXTRACFLAGS的一行,將其改成: EXTRACFLAGS=-DDISABLE_REVERSE_DNS_LOOKUP 從而取消對客戶機的反向DNS解析。 4.如果您想更改存放郵件的文件名,以及缺省的存放目錄,可以具體參考解開的源代碼目錄中的docs目錄,參考其中的CONFIG文件的說明。在無特殊要求時,是不需要這樣做的。 三、編譯 直接使用影子口令進行用戶認證時,可以使用make slx命令進行編譯。 如果要支持PAM則采用make lnp進行編譯。 四、替換源文件 編譯成功後,使用新的imapd和ipop3代替已有的imapd和ipop3: # cp ipopd/ipop3d /usr/sbin/


# cp imapd/imapd /usr/sbin/ 五、重載xinetd # service xinetd reload



Copyright © Linux教程網 All Rights Reserved