복붙노트

SUDO가 필요한 PHP에서 쉘 스크립트를 호출하는 방법은 무엇입니까?

PHP

SUDO가 필요한 PHP에서 쉘 스크립트를 호출하는 방법은 무엇입니까?

SUDO가 작동해야하는 bash 스크립트 파일이 있습니다.

SUDO를 사용하여 명령 줄에서 실행할 수 있지만 SUDO 암호를 입력하라는 메시지가 표시됩니다.

shell_exec를 통해이 스크립트를 실행하고 싶지만 SUDO를 호출하면 커맨드 라인처럼 암호를 입력 할 수 없습니다. sudo를 사용하여 sudo에 대한 암호를 전달하는 방법이 있습니까?

어떻게해야합니까?

해결법

  1. ==============================

    1.sudoers 파일 (visudo 포함)을 편집하고 웹 서버 사용자가 암호없이 명령을 실행할 수있게하는 규칙을 추가하십시오. 예 :

    sudoers 파일 (visudo 포함)을 편집하고 웹 서버 사용자가 암호없이 명령을 실행할 수있게하는 규칙을 추가하십시오. 예 :

    www-data ALL=NOPASSWD: /path/to/script
    
  2. ==============================

    2.이 문제에 대한 다양한 해결책이 있습니다.

    이 문제에 대한 다양한 해결책이 있습니다.

  3. ==============================

    3.다음과 같이 sudoers 파일에 추가 할 수 있습니다.

    다음과 같이 sudoers 파일에 추가 할 수 있습니다.

    username ALL=NOPASSWD: /path/to/script
    

    그러면 특정 사용자가 암호를 묻지 않고 해당 스크립트에서 sudo를 호출 할 수 있습니다.

  4. from https://stackoverflow.com/questions/3166123/how-to-call-shell-script-from-php-that-requires-sudo by cc-by-sa and MIT license