私はすべてのSudoの投稿をserverfaultで読みましたが、何が悪いのかまだわかりません。通常、私は最終的に解決策を見つけますが、今回は見つかりません:
Apacheユーザーがこのコマンドをユーザー "hremotessh"として実行できるようにしたい:
Sudo /home/hremotessh/scripts/redirect.sh 8892 8893
したがって、私はこれをvisudoに追加しました:
Apache ALL=(hremotessh) NOPASSWD: /home/hremotessh/scripts/redirect.sh
しかし、須藤はまだパスワードを尋ねていますか?
Sudo /home/hremotessh/scripts/redirect.sh
[Sudo] password for Apache:
私はこれを試しましたが、良くはありません:
Sudo -u hremotessh /home/hremotessh/scripts/redirect.sh
hremotessh is not in the sudoers file. This incident will be reported.
どんなアイデアでも大歓迎です:-)
デニス
Rootとしてコマンドを実行する場合を除き、ユーザー名を指定する必要があるため、
su - Apache -s /bin/bash
Sudo -u hremotessh /home/hremotessh/scripts/redirect.sh 8892 8893
sudoコマンドをテストするための正しい構文です。
Apacheユーザーのパスワードの入力を求められないため、Sudoは正しく構成されているようです。
結果の警告:hremotessh is not in the sudoers file.
は、redirect.shスクリプトで別のSudo
コマンドが使用されていることを示します。また、そのユーザーには(有効な)Sudoポリシーはありません。