suexec と PHP
▽20040308a
#プログラミング
#PHP
PHP は apache のモジュールとして動かすことがほとんどなわけだが, これだと誰が使っても同じ権限で動くことになってしまって, ISP なんかだと都合が悪いわけですわね. かといって CGI モジュールの方だとサーバ環境が詳細に取れなかったりしてイマイチ.
で,CGI 版 PHP の wrapper として動く類のモジュールで, apache 版と同様な環境を提供してくれるようなものがいくつかあるのだけど, そういうのではないもので面白そうなのがあります.
mod_become.
ある VH を特定のユーザ権限で動かせるもの……なのかな?
ただし setuid() とかで中のコードが勝手に権限変更できてしまうので,
これはそれぞれで禁止してくだちい,とある.
PHP でいうと POSIX 互換関数のうちの seteuid() とかを
PHP.ini の disable_functions
で禁止するってわけだな.