PHPで開発するとapaheユーザ権限でコマンドを実行するため、そのままだと実行できないわけです。
ということで、sudoを利用します。
visudoを利用してsudoの設定を編集します。
以下を追加。
apache ALL=(root) NOPASSWD: ALL参考にさせて頂きました。
Apache ユーザに別のユーザとして処理を実行させる 明滅するプログラマの思索
期待通り、sudoを利用してroot権限でコマンドが実行できます。
でも、何でもかんでも実行できるのも怖いなーということで、やはりnmapだけ実行できるように修正します。
apache ALL=(root) NOPASSWD:/usr/bin/nmap参考にさせて頂きました。
PHPにて、root権限でコマンド実行 みズとおかズ
取り敢えず、これで大丈夫でそうです。
0 件のコメント:
コメントを投稿