26 January 2008

SquirrelMailの設定 on Fedora 8

Fedora 8 のサーバ上に、Squirrelmail を設定する。

httpd サーバのインストール(これはデフォルトでインストール済み)、phpおよびphpマルチバイト文字モジュールのインストールを行う。

[root@localhost ~]# yum install php php-mbstring

Squirrelmailの日本語サイトより、最新のパッケージをダウンロードし、/var/www/html/… のフォルダ下辺りに解凍する。

[root@localhost ~]# cd /var/www/html [root@localhost html]# tar xvf squirrelmail-1.4.13.tar.gz [root@localhost html]# mv squirrelmail-1.4.13 webmail [root@localhost html]# cd webmail ← 分かりやすい適当なディレクトリ名に変更

ディレクトリのパーミッション初期設定を行う

[root@localhost html]# mkdir webmail/attach ← 添付ファイル用ディレクトリ作成 (config/conf.pl でこのディレクトリを指定する) [root@localhost html]# chown -R www_user:www_group webmail ← webmail以下全てのファイルとディレクトリをapache実行ユーザ:グループに変更 [root@localhost webmail]# chmod 730 data ← Squirrelmail 公式サイトの指定するパーミッションに変更 [root@localhost webmail]# chmod 730 attach

設定スクリプトを実行して、最低限の設定を行う (2のサーバ設定だけ行えば、アクセスくらいは出来る)

[root@localhost webmail]# cd config [root@localhost config]# ./conf.pl SquirrelMail Configuration : Read: config.php (1.4.0) --------------------------------------------------------- Main Menu -- 1. Organization Preferences 2. Server Settings ← ここでIMAPサーバ、SMTPサーバの設定を行う 3. Folder Defaults 4. General Options 5. Themes 6. Address Books 7. Message of the Day (MOTD) 8. Plugins 9. Database 10. Languages D. Set pre-defined settings for specific IMAP servers C Turn color off S Save data Q Quit Command >>

で、アクセスしてみるとエラー。(他のサーバで問題なく動いている設定をコピーしてもエラー)

"ERROR"
"You must be logged in to access this page."

/var/log/httpd/error_log を見てみると…

/var/log/httpd/error_log
[Sat Jan 26 09:17:19 2008] [error] [client 192.168.1.111] PHP Warning: session_write_clos e() [<a href='function.session-write-close'>function.session-write-close]: open(/var/l ib/php/session/sess_kg6hjjh8ahfkgnirmenl9m3h57, O_RDWR) failed: Permission denied (13) in /var/www/html/sqmail/functions/auth.php on line 70, referer: http://192.168.1.115/sqmail/s rc/login.php

phpのセッション一時ファイルが開けないようだ。

[root@localhost config]# cd /var/lib/php [root@localhost php]# ll 合計 8 drwxrwx--- 2 root apache 4096 2007-10-16 22:20 session [root@localhost php]# chown root:www_group session/ [root@localhost php]# ll 合計 8 drwxrwx--- 2 root www_group 4096 2007-10-16 22:20 session

この問題は、Apacheの実行ユーザを標準から変えている場合のみ起こるから、公式サイトには解決法の説明が無いのだろう。

最後に、設定ファイルのあるフォルダをwebからブラウズ出来ないように、.htaccessファイルを設定する。

/var/www/html/webmail/attach
/var/www/html/webmail/data
/var/www/html/webmail/config
Deny from All