1 頁 (共 1 頁)

Open WebMail 安裝與設定(source安裝)

發表於 : 週四 2月 16, 2006 4:42 pm
布魯斯
Open WebMail 官方站台: http://openwebmail.org

Open WebMail 安裝需求

支援 CGI 的 Web server
Perl 5.005 以上 (需有 suid perl 支援)
(若無suidperl,需安裝)
CGI.pm-2.74.tar.gz (必要)
MIME-Base64-2.20.tar.gz (必要)
Digest-1.05.tar.gz (必要)
Digest-MD5-2.33.tar.gz (必要)
libnet-1.0901.tar.gz (必要)
Text-Iconv-1.2.tar.gz (必要)
libiconv-1.9.1.tar.gz (可選擇, 多國語言內碼轉換)
CGI-SpeedyCGI-2.22.tar.gz (可選擇, 常駐執行)
Compress-Zlib-1.21.tar.gz (可選擇, 網頁壓縮)
ispell-3.1.20.tar.gz (可選擇, 拼字檢查)
Quota-1.4.10.tar.gz (可選擇, Quota control)
Authen-PAM-0.12.tar.gz (可選擇, 外掛式認證)
ImageMagick-5.5.3.tar.gz (可選擇, 縮圖製作)
antiword-0.35.tar.gz (可選擇, MSWord 檔預覽)
openssl-0.9.7c.tar.gz (可選擇, POP3 的 SSL 支援, 若系統有 libssl 則不需要)
Net_SSLeay.pm-1.25.tar.gz (可選擇, POP3 的 SSL 支援)
IO-Socket-SSL-0.95.tar.gz (可選擇, POP3 的 SSL 支援)
clamav-0.70.tar.gz (可選擇, 病毒信掃描)
Mail-SpamAssassin-2.63.tar.gz (可選擇, 垃圾信判讀/學習)

安裝套件 (由 source 安裝)
系統:RedHat9,Apache2.047,souce自行安裝
首先請先到 http://turtle.ee.ncku.edu.tw/openwebmai ... /packages/ 下載上述的各個套件

安裝 CGI.pm 套件
cd /tmp
tar -zxvf CGI.pm-2.74.tar.gz
cd CGI.pm-2.74
perl Makefile.PL
make
make install

註: 可能您原本的機器上就已經安裝了 CGI.pm 這個套件, 不過由於有使用者回報 Open WebMail 如果使用太舊的 CGI.pm 版本, 會在上傳附件時, 發生當住的情形, 所以我們建議您安裝 2.74 以後或是更信的版本. 檢查 CGI.pm 版本的方式如下;

perl -MCGI -e 'print $CGI::VERSION'

安裝 MIME-Base64 套件

cd /tmp
tar -zxvf MIME-Base64-2.20.tar.gz
cd MIME-Base64-2.20
perl Makefile.PL
make
make install

註; 雖然您的機器可能已經安裝了 MIME-Base64 這個套件, 還是建議您從 source 重新裝一次. 這樣做的話, 可以確定 MIME-Base64 中的 XS 支援有被啟動, 可以大幅地增加處理 MIME 附件編碼與解碼的速度

安裝 libnet 套件

cd /tmp
tar -zxvf libnet-1.0901.tar.gz
cd libnet-1.0901
perl Makefile.PL (ans 'no' if asked to update configuration)
make
make install

安裝 Text-Iconv-1.2 套件 (自 openwebmail 1.80起)

openwemail 自 1.80 版以後開始支援多國的字集轉換弁?如: 中文的簡繁轉換, 日文的 Shif-JIS/ISO-2022-JP/EUC-JP 轉換, 或是各種字集對 Unicode (UTF- 的轉換), 這個轉換的動作是透過 Text-Icon 套件來完成的. 而由於 Text-Iconv 事實上只是提供對系統 iconv() 相關函式 的一個 perl 介面, 所有首先要確認系統上是否支援 iconv() 相關函式, 方法如下

man iconv

如果下完命令後沒有出現相關的 manpage 說明文件, 表示系統可能不支援 iconv() 相關函式, 不過別擔心, 我們可以透過安裝 libiconv 這個套件來替系統加上對 iconv() 的支援

cd /tmp
tar -zxvf libiconv-1.9.1.tar.gz
cd libiconv-1.9.1
./configure
make
make install

現在再試一次 'man iconv' 確認 libiconv 已經被成左漲w裝到系統之中

接下來就可以開始安裝 Text-Iconv 這個套件了

cd /tmp
tar -zxvf Text-Iconv-1.2.tar.gz
cd Text-Iconv-1.2
perl Makefile.PL

註: 如果您用的是 FreeBSD, 或是您剛才用手動安裝 libiconv-1.9.1.tar.gz 這個套件, 請在執行 perl Makefile.PL 之前, 先修改 Makefile.PL 檔案, 將 LIBS 和 INC 這兩行設定如下

'LIBS' => ['-L/usr/local/lib -liconv'], # e.g., '-lm'
'INC' => '-I/usr/local/include', # e.g., '-I/usr/include/other'

make
make test

註: 如果 make test 失敗, 代表您的 OS 不支援 iconv() 這個弁鄔峎O Makefile.PL 中的 LIB, INC 設定有誤. 您可以將 misc/patches/iconv.pl.fake 拷貝到 iconv.pl 這個檔案上, 讓 openwebmail 不透過 iconv 進行字集轉換. 這樣 簡/繁轉換 弁鈮|還在, 但是會喪失如 自動轉換 UTF-8 格式信件的弁?

make install

註:若是沒有安裝suidperl,需要安裝suidperl!

安裝 Open WebMail

http://turtle.ee.ncku.edu.tw/openwebmail/download/ 下可以下載 Open WebMail 的各個 Release 版本 (openwebmail-x.yy.tar.tgz) 與最新的 current 版本 (openwebmail-current.tgz). Release 版本 是屬於經過測試後, 弁鉊?冕酋w的版本, 而 current 則是含有每日最新弁鄔峟蚰羲熊{式碼。

cd /var/www
tar -zxvBpf openwebmail-X.XX.tgz
mv data/openwebmail html/
rmdir data

cd /var/www/cgi-bin/openwebmail/etc
修改 auth_unix.conf (由 etc/defaults/auth_unix.conf.default copy 過來改)
將 passwdfile_encrypted 設成 /etc/shadow
將 passwdmkdb 設成 none

修改 openwebmail.conf
將 mailspooldir 設成 /var/spool/mail
(附註:這裡的路徑是sendmail存放郵件的地方)
將 ow_htmldir 設成 /var/www/html/openwebmail
將 ow_cgidir 設成 /var/www/cgi-bin/openwebmail
將 spellcheck 設成 /usr/bin/ispell

修改dbm.conf(複製dbm.conf.default)
將dbmopen_ext設成 .db
將dbmopen_haslock設成yes


/var/www/cgi-bin/openwebmail/openwebmail-tool.pl --init

將下列文字加到 /etc/logrotate.d/syslog 讓系統定期砍掉過去的 log
/var/log/openwebmail.log {
postrotate
/usr/bin/killall -HUP syslogd
endscript
}

初始化 Open WebMail

在前面的安裝步驟裡頭, 最後一個步驟是

cd the_direcotry_of_openwebmail_cgi_scripts
./openwebmail-tool.pl --init

這個動作會建立一些 Open WebMail 在執行時會用到的對應表, 如簡繁轉換, 陰陽曆轉換等. 如果這個動作沒有做的話, 使用者將無法透過 Web 介面使用 Open WebMail

而由於在各種不同作業系統上的 perl 版本的差異, 其所使用的 dbm 種類也不盡相同, 有的可能需要特殊的設定後才能使用, --init 在建立上述對應表之前, 會測試系統上 perl 的 dbm 種類, 並且提供一些必要的建議事項

首先會檢查 etc/dbm.conf 中的 dbm_ext, dbmopen_ext 和 dbmopen_haslock 三個選項的設定是否正確, 如果設定有誤的話, 您會看到如下的畫面

Please change the following 3 options in etc/dbm.conf

from

dbm_ext .db
dbmopen_ext none
dbmopen_haslock no

to

dbm_ext .db
dbmopen_ext %dbm_ext%
dbmopen_haslock yes

管理者可以將 etc/defaults/dbm.conf copy 成 dbm.conf, 然後將正確的 dbm 設定值, 寫到 etc/dbm.conf 中


其次是檢查系統上的 dbm 是否內定使用 DB_File.pm 這個模組, 如果是而且有需要的話, 會建議您對 DB_File.pm 作一些必要的修改 (這個修改是由 DB_File.pm 作者所提供的), 您會看到如下畫面

Please modify /usr/libdata/perl/5.00503/mach/DB_File.pm by adding
$arg[3] = 0666 unless defined $arg[3];

before the following text (about line 247)

# make recno in Berkeley DB version 2 work like recno in version 1

請務必依照以上的建議作修改, 否則您的 Open WebMail 可能會無法完全正常動作, 也請記得在做完修改之後, 別忘了重新執行一次 './openwebmail-tool.pl --init'



測試 Open WebMail
在完成上面的步驟後, 您可以連線到

http://your_server_hostname/cgi-bin/ope ... webmail.pl

並且登入看看是否一切正常

發表於 : 週四 2月 16, 2006 4:43 pm
布魯斯

發表於 : 週四 2月 16, 2006 4:44 pm
布魯斯
建立一個轉址網頁(或從/var/www/data/openwebmail/redirect.html拷貝到/var/www/html/index.html)
在/var/www/html 建立一個 index.html 檔案, 內容如下

代碼: 選擇全部

<html><head> 
<meta http-equiv="Refresh" content="0;URL=http://your_server/cgi-bin/openwebmail/openwebmail.pl">
</head></html>


或是

代碼: 選擇全部

<html> 
<body onload="window.open('http://your_server/cgi-bin/openwebmail/openwebmail.pl','_top')">
</body>
</html>