- ベストアンサー
セキュリティの為のSUEXECについて
- セキュリティの為にSUEXECを導入しておりますので、SSIで実行ファイルを使用される際の制限について説明いたします。
- 実行ファイルまでのパスを絶対パス(フルパス)で指定すると動作出来ませんし、上位ディレクトリを参照することもできません。
- 実行ファイルは、SSIを記述するファイルと同じ階層か、下位のディレクトリに設置してください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
通常モードでCGIやSSIを実行すると、 WWWサーバ管理者のユーザID(nobodyなど)での実行になってしまいますので、 一般ユーザでは削除や書き換えができませんのでサーバ管理者に依頼するしか方法がありません。 また、ものによっては、サーバ管理者側のファイル等が破壊されるなどの問題があります。 それを防ぐのがsuEXECです。 suEXECを使用すると、サーバを実行しているユーザIDとは異なるユーザIDでCGIやSSIを実行することができます。 この「異なるユーザID」が各利用者の事です。 各利用者のIDで管理できるため、利用者にホームディレクトリの管理を任せることが可能になります。 SSIを記述するファイルと同じ階層か下層に制限されるのも、suEXECの特徴です。 要は、「他ユーザには迷惑掛けないでね」という事です。 >「実行ファイルは、SSIを記述するファイルと同じ階層か、下位のディレクトリに設置して頂きますよう」ということがわかりません。 トップページの「index.html」のファイルがある階層を含む下位の事です。
その他の回答 (1)
- ralf124c
- ベストアンサー率52% (232/446)
ロリポップは使っていませんので断言はできませんが共用サーバのサービスではFTPなどで得られる見かけのファイル構造はあてにならないことが多いので、事故を防ぐため簡易に説明しているのではないでしょうか。 これは、各共有ユーザに割り当てられた領域より外には、システムの基幹部分などが存在し、勝手にいじられると同じサーバに割り当てられた他のユーザに迷惑がかかることになりますので、意図的に見えないようにするのが普通です。 Webサーバサービスからホームページ用に割り当てられる領域は、Webサーバから指定された場所「DocumentRoot」以下のディレクトリが自由に利用できるすべての世界ですが、そこからCGIやSSIを通して起動されるプログラムはそこから派生したものとはいえシステム上で実行されるプログラムなので、Webサーバの指定するディレクトリ構造など知ったこっちゃないのです。 FTPではホームディレクトリ以下しか見えないから、見掛けのまま絶対パス(Webサービスでなくシステム上のディレクトリパス)を利用したりすると、見えない部分が不足しているため単なるエラーですめばいいのですが偶然が重なってサーバトラブルの原因となるケースも考えられます。 環境変数「SCRIPT_FILENAME」と「SCRIPT_NAME」をCGIで表示させれば、「パス」の相違がわかります。 経験の浅いWebデザイナーなどは、Webサーバサービス上で提供されるURL表現上の「絶対・相対パス」について、実際のファイルシステムとそのまま同じものと思っている方が多いので、CGIやSSIが絡むページを作ってもらうときは説明が大変で、いくら説明してもどうしようもないページが生産されてWebプログラマーが帳尻あわせで大変なことになるケースが多いのです。 しかも納期いっぱいに作業しようとするため、往々にして出来上がってくるのが遅かったりするのでさらにしわ寄せが・・・。 「お前がはやくページを作らんとシステムは作業でけまへんがな」と何回言っても学習能力がないページ制作者は多いもので・・・。 質問への回答がストレスのはけ口になりつつあるので、もとい。 さらに、CGIやSSIは誰の権限で実行しているかというと、Webサーバで指定された権限で実行されます。 当然、共用サーバは複数のオーナーでひとつのWebサーバを利用していますので、実行されるプログラム同士は同じ権限ゆえに他のユーザの領域に対する権限も持ち合わせることになります。 この権限を変えて、他のユーザ領域へ侵入を許可させないために「SUEXEC」を使って実行権限をもっと低いものに変えて実行しているのだと思います。 これは、他に迷惑をかけないという制限ではありますが、他から自分への迷惑がかからないという安全保障でもあります。 以上のようにややこしい話ですが、ややこしい説明をしても一般の方は「私は素人だから」を免罪符に好き勝手するので、ルールをシンプルにしてこれ以上のことはするなとしているのではないかと思います。 長々と、どうも失礼いたしました。
お礼
ありがとうございました。参考にさせていただきます。
お礼
ありがとうございました。 suEXECというものば少し分かった感じがしました。