全部博文(403)
分类: LINUX
2011-05-24 09:12:54
解決 FreeBSD 上 OpenWebMail suidperl 支援問題
ee /etc/make.conf
ENABLE_SUIDPERL=true
cd /usr/ports/lang/perl5.8
make deinstall
make -DENABLE_SUIDPERL install
設定檔
openwebmail.conf
參數 | 說明 | 建議 |
default_language | 設定 OpenWebMail 預設的語系 | zh_TW.Big5 |
default_iconset | Cool3D.Chinese.Traditional | |
default_newmailsound | intel.wav | |
name | 首頁底下顯示名稱 | 改為自己想要的名稱,或是加上 # 註解 |
version | OpenWebMail 版本 | 預設值 |
logo_url | 首頁 Logo 圖示路徑 | 根據需求修改 |
logo_link | 首頁 Logo 圖示連結網頁路徑 | 根據需求修改 |
OpenWebMial 1.63
雖然在 Linux 上架設出一套 Mail Server 是簡單的事情,但同時還要具備 Web Mail 就不多見了,難道架設出一套 Web Mail 是一件相當困難的事情嗎!? 在 Linux 底下也還算是一件輕鬆的事情啦!我的使用環境為 CLE gaga + Apache + Sendmail + Openwebmail。
openwebmail 1.63
Authen-PAM-0.12.tar.gz
CGI.pm-2.74.tar.gz
步驟
安裝 Authen-PAM
tar zxf Authen-PAM-0.12.tar.gz
cd Authen-PAM-0.12
perl Makefile.PL
make
make install
安裝 CGI.pm-2.74.tar.gz
tar zxf CGI.pm-2.74.tar.gz
cd CGI.pm-2.74
perl Makefile.PL
make
make install
安裝 OpenWebMail
下載之後請複製到網頁設定的根目錄之下,通常的情況是在 /var/www/ 之下,不過像我的網頁都是遠端使用 FTP 發送的所以會更改路徑,當然就要按照實際的情況而定了。以下的步驟是假設網頁的路徑在 /home/www/www,
cd /home/www
tar zxf openwebmail-1.63.tgz
首先先將 openwebmail-1.63.tgz 複製或搬移到網頁的目錄之中,接著解開壓縮檔會產生 cgi-bin、data 兩個目錄,data 目錄之下的 openwebmail 還要再複製到真實的網頁根目錄之中,cgi-bin 就是只要的設定檔以及 php 網頁的目錄。
不要忘記將 openwebmail 的目錄複製,要不然等成功架設完成所有的圖片以及執行的網頁都還是找不到,那也是沒有用的。
根據環境編輯 openwebmail 設定檔
vi/home/www/cgi-bin/openwebmail/etc/openwebmail.conf
ow_cgidir /home/www/cgi-bin/openwebmail
ow_htmldir /home/www/data/openwebmail
default_language zh_TW.Big5
編輯認證設定檔
vi /home/www/cgi-bin/openwebmail/auth_unix.pl
my $unix_passwdfile="/etc/shadow";
my $unix_passwdmkdb="none";
設定紀錄檔
vi /etc/logrotate.d/syslog
最後加入
/var/log/openwebmail.log {
postrotate
/usr/bin/killall -HUP syslogd
endscript
}
修改使用者權限
vi /etc/httpd/conf/httpd.conf
user nobody
group nobody
vi /etc/sendmail.cf
在 Trusted users 區段增加 Tnobody
設定 httpd.conf
vi /etc/httpd/conf/httpd.conf
ScriptAlias /cgi-bin "/home/www/cgi-bin"
AllowOverride All
Options ExecCGI
Order allow,deny
Allow from all
設定 sendmail.conf
O DaemonPortOptions=Port=smtp,Addr=0.0.0.0, Name=MTA
測試
http://你的網域名稱/cgi-bin/openwebmail/openwebmail.pl
注意事項
1. 因為 openwebmail 需要取得 root 帳號來存取系統資源,所以相關的 .pl 網頁的擁有人都指定為 root.mail,如果你像我一樣使用 Dreamweaver 等的網頁編輯程式,那在上傳的時候會出現錯誤因為擁有人可能不相同,這時請不要特別的將 openwebmail 的擁有人改變因為這樣為讓 openwebmail 的運作不正常。
2. 還有 openwebmail 需要一個 .log 紀錄檔,這個檔案會自動產生不需自行建立,我第一次的時候就是因為自行建立了紀錄檔而導致失敗,雖然這個案例應該會比較少不過還是提出來提醒大家一下。
3. 最常遇到的問題應該是:無法開啟 /xxx/xxx/cgi-bin/openwebmail/etc/sessions/xxx-session-xxxxxxxx 的錯誤訊息吧!當你的密碼正確但進入的時候卻出現 session 無法開啟時,最有可能的就是 cgi-bin/openwebmail/etc/sessions 的目錄擁有人的權限設定錯誤,只要將 sessions 該目錄設定成 root.mail 就可以了。
檔案和信件匣對應