【p2】PHPでつくった2ch viewer【part15】
【やむを得ずレンタルサーバーにp2する場合】
※ 重 要 ※
複数のユーザーが同居するレンタルサーバーでは、サーバーのセキュリティ設定次第で
同居ユーザーの不正アクセスによるファイル書き換えなどの危険性は避けられないことから、
レンタルサーバーへのp2設置は極力避けること。
■やむを得ず設置する場合は以下の2点が両方満たされているかよく確認すること。
・SuExecが設定されていること。
(PerlなどのCGIスクリプトから同居ユーザーのファイルを操作できない)
・PHPはsafe_modeで動作すること。
(PHPスクリプトから同居ユーザーのファイルを操作できない)
その他にもサーバーの設定で同居ユーザーから不正利用される手段は多数あるので、
利用するサーバー管理者に問い合わせ、セキュリティ対策がしっかり取られているか
どうかよく確認すること。
■パーミッションの基本設定
・ディレクトリ = 707
・実行ファイル = 604
・読取りデータ = 604
・読/書データ = 606
3桁ある数字の中央(グループ権限)は必ず"0"にして、同居ユーザーから
ファイルを操作される危険を減らす。
ただし、先の SuExec、safe_mode の基本条件が満たされていない場合には
いくらパーミッションでグループ権限を無効にしても、同居ユーザーから
パーミッションを書き換えることは可能なので過信はしない。
conf.php に変数設定も以下のように変更しておく。
$dat_perm = 0606;
$key_perm = 0606;
$pass_perm = 0604;
$p2_perm = 0606; //見られてもあまり意味のない内部処理データファイル
$palace_perm=0606;
$favita_perm=0606;
$favlist_perm=0606;
$rct_perm = 0606;
$res_write_perm=0606;
>>469 乙。
ちょっと補足させてもらいます。
■パーミッションの基本設定
(モジュール版PHPのとき)
・dataディレクトリ = 707
・その他のディレクトリ = 705
・実行ファイル(*.php) = 604
・読取りデータ = 604
・読/書データ = 606
(CGI版PHPのとき)
・dataディレクトリ = 700
・その他のディレクトリ = 705
・実行ファイル = 700
・読取りデータ(*.inc) = 600
・読取りデータ(画像, *.js等) = 604
・読/書データ = 600