WEBからシステムコマンドを実行するには
Windows(IIS)でもLinux(apache)でもWEBからだとシステムコマンド実行やrootオーナーファイル作成などは出来ません。
実は、出来ないこともないのですが・・・それだとザルセキュリティになってしまいます。
しかし、どうしても必要な場合がありますよね。
そんな時は、以下の手順で解決です!
- まず、Windowsではタスクスケジューラ、Linuxではcrontabを使い、目的の処理が起動できるように仕掛けます。尚、タスクスケジューラもcrontabも自動起動最小周期は1分間です。
- 次に、WEB(ブラウザ)からは、CGI経由で、空の実行サインファイルを作成します。
- タスクスケジューラやcrontabから1分毎に目的の処理が起動され、実行サインファイルがあれば、システムコマンド実行やrootオーナーファイル作成をするのです。
- そして、目的の処理の終わりに実行サインファイルを削除するわけです。
これで、結果的にWEBから『システムコマンドの実行』や『rootオーナーファイル作成』などができるようになるのです。
ただし、最大1分間弱のタイムラグがありますが、これはどうしようもありません。