문제

LightTPD 1.4 하에서 CGI로 PHP 5.2.6을 실행하고 어떤 이유로 든 항상 루트로 실행됩니다. 모든 PHP-CGI 프로세스는 루트가 소유하고 파일 시스템에 작성된 모든 파일은 루트가 소유합니다.

LightTPD에서 사용자를 권한이없는 것으로 설정하려고 시도했으며 확인했으며, Root로 실행되는 PHP 일뿐입니다.

PHP-CGI를보다 안전한 사용자로 실행하도록 어떻게 설정합니까?

도움이 되었습니까?

해결책

  1. 보장하다 :

    server.username            = "nonprivuser"
    server.groupname           = "nonprivgroup"
    
  2. Lighttpd를 중지하십시오.

  3. 기존 PHP 프로세스를 확인하고 죽입니다.
  4. LightTPD를 시작하십시오
  5. PHP 프로세스가 비 개인으로 실행 중입니다

PHP가 여전히 루트로 실행중인 경우, 당신은 그들을로드하는 어딘가에 setuid 스크립트를 가질 수 있습니다 (실제로는 안되지만 실행 가능).

이 경우 'Bin-Path'파일에 펑키 한 것이 없다고 말하는 파일을 확인하십시오.

다른 팁

서버에서 루트로 시작된 FastCGI 프로세스가있을 수 있습니다. 이 경우 FASTCGI 프로세스는 LightTPD에서 호출 된 PHP 프로세스를 계속 실행합니다.

서버에서 FastCGI 프로세스를 죽이고 LightTPD를 다시 시작하는 것이 좋습니다.

FastCGI 데몬을 시작할 수있는 스타트 업 스크립트를 살펴볼 수도 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top