phpのプログラム経由で、UNIX内のコマンドを特定のユーザで実行させる場合の方法を教えて下さい。そのときのセキュリティ上の注意も教えていただけると助かります。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2004/09/21 15:51:41
  • 終了:--

回答(2件)

id:Sumaru No.1

Sumaru回答回数98ベストアンサー獲得回数02004/09/21 16:07:52

ポイント40pt

system()で実行させるかexec()で実行させる

って所でしょうか。

必要に応じてsudoするとかですね。

どちらにしても、例えばhtmlなどのformから入力されたコマンドをそのまま実行すると大変なことになりますので、十分な注意が必要と考えます。(rm -rf /)とかされたら…

id:fm315

ありがとうございます!

webで検索しているのですが、

”setuid”,”sudo”,”system()”,”exec()”というようなキーワードが出てきます。

2004/09/21 16:11:47
id:Sumaru No.2

Sumaru回答回数98ベストアンサー獲得回数02004/09/21 16:52:13

ポイント40pt

具体的にどのようなことをなさりたいのかで、色々方法が変わってくるかと思いますが、実行するコマンドが特定のコマンドになるのなら、あらかじめ.shなりを記述しておき(sudoしてコマンドを実行するような)、PHPから実行させるとか、定期的な処理(多分違うかもしれませんが)ならcronを使うとかも有りますが

id:fm315

返答ありがとうございます!

具体的には、vpopmailの”vadduser”コマンドを実行して、web上からメールアドレスの発行ができるようにしたい、と考えています。

上記プログラムのUID:GIDは”vpopmail:vchkpw”です。

2004/09/22 15:27:44
  • id:Sumaru
    qmailadminでは

    その用途でしたらおそらくqmail+vpopmailの組み合わせなのでは?でしたらqmailadminを利用してみてはいかがでしょうか?
    cgiプログラムで設置も簡単ですし。。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません