• ベストアンサー

CGIからのUNIXコマンドを防止する方法

telnet.cgi を使うと、CGIからUNIXコマンド(rmなど)が自由に使えてしまいます。 この利用を防止する方法はないですか。 /usr/bin /usr/local/bin フォルダのアクセス権を700にしてみたのですが、これではhttpdなど他のものまで、影響を受けてしまいました。

質問者が選んだベストアンサー

  • ベストアンサー
  • akino4
  • ベストアンサー率18% (35/185)
回答No.3

group examを例にすると -rwx---rwx hana:exm test.pl には、akira:examな人はアクセスできません。 そんな感じでいいんじゃないんですか? 特定のグループを排除したいなら ただ、この設定ではhana:examな人はあくせすできます。examに所属していても hana:examもきにくわないなら007とか まぁ~manでも読んでください 試せば3分で分かることですし

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • akino4
  • ベストアンサー率18% (35/185)
回答No.2

えっとこのURL解決するでしょ? パーミッションはどうするかは自分で考たが早いかな? グループで蹴るのがいいとおもいます

参考URL:
http://httpd.apache.org/docs/suexec.html
defd
質問者

補足

suEXECは利用しているのですが、これでどうすればいいでしょう。 例えば、/bin にアクセスさせたくないユーザー のgroup を users01 としたら、 /bin のアクセス権をどう設定すればよいでしょう。 group が users01 のユーザーはアクセスできない、というような設定はできますでしょうか。

すると、全ての回答が全文表示されます。
  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

一般の利用者には、CGIを作るために telnet は開放したいが、telnet.cgi を使わせたくない、ということですね。 一番確実なのは、telnet.cgi を削除してしまうこと、です。 後、考え付くのは、ログインシェルが読み込む起動時のスクリプトに、 親のプロセスをたどっていって、その中に httpd がいたら、そのまま 抜けてしまうような記述をしておくこと。 または、ログインシェル自体を自分で作成して、そのような判断を入れて しまうということ。 どちらにせよ、telnet.cgi を削除する以外に「簡単に」という方法は 思い付きません (^^;

すると、全ての回答が全文表示されます。

関連するQ&A