2014-01-13 2 views
2

에서 프로세스를 종료 :나는이 코드와 모든 것을 가지고 웹 사이트

bash: pkill: (1503) - Operation not permitted 

나는 pkill이 su 명령이라는 것을 알고있다. 어쨌든이 PHP 스크립트를 실행할 수 있도록이 변경하려면?

+0

당신은 [ask ubun tu 공개 토론] (http://askubuntu.com/questions/155791/how-do-i-sudo-a-command-in-a-script-without-being-asked-for-a-password) – np87

+0

당신은 아파치 사용자는 더 많은 권한을 가지므로 명령을 실행할 수 있습니다. – Niels

+0

아마도이 링크가 도움이 될 것입니까? http://stackoverflow.com/questions/3166123/how-to-call-shell-script-from-php-that-requires-sudo – Albzi

답변

3

문제는 죽이기를 원하는 프로세스가 아파치 사용자가 아니라는 것입니다 (아파치는 보통 www-data 그룹 www-data). 아파치에 더 많은 권한을 부여하면 (예 : root 사용자로 실행) PHP 스크립트가 더 많은 권한으로 실행되고 이와 같은 작업을 수행 할 수 있습니다. 그러나 아파치 또는 PHP 스크립트에 보안 결함이있는 경우 악의적 인 공격자가 시스템을 대신 할 수 있기 때문에 위험 할 수 있습니다.

대신 setuid 비트를 사용하는 것이 좋습니다.

  1. pkill python
  2. 그것을 실행 (chmod a+x kill.sh)는
  3. 이 그것의 setuid (chmod u+s kill.sh)
  4. 가에서이 스크립트를 호출합니다 루트 (chown root:root kill.sh)
  5. 에 속해 있는지 확인하십시오 내용으로 파일 kill.sh 만들기 귀하의 PHP 스크립트