我運行php 5.2.6作爲lighttpd 1.4下的cgi,由於某些原因,它始終以root身份運行。所有php-cgi進程都由root擁有,寫入文件系統的所有文件都由root擁有。php-cgi以根用戶身份運行
我試過將lighttpd中的用戶設置爲非特權,並確認它正在運行,它只是以root身份運行的php。
我該如何設置php-cgi作爲一個更安全的用戶來運行?
我運行php 5.2.6作爲lighttpd 1.4下的cgi,由於某些原因,它始終以root身份運行。所有php-cgi進程都由root擁有,寫入文件系統的所有文件都由root擁有。php-cgi以根用戶身份運行
我試過將lighttpd中的用戶設置爲非特權,並確認它正在運行,它只是以root身份運行的php。
我該如何設置php-cgi作爲一個更安全的用戶來運行?
確保:
server.username = "nonprivuser"
server.groupname = "nonprivgroup"
停止lighttpd的。
如果PHP仍然以root身份運行,那麼你可能有一個setuid腳本某處加載它們(你真的不應該,但它是可行的)
如果是這樣,請檢查文件'bin-path'是否沒有任何時髦的東西。
您可能有一個以root身份在服務器上啓動的fastcgi進程。如果是這種情況,那麼fastcgi進程將繼續運行由lighttpd調用的php進程。
我建議殺死服務器上的fastcgi進程並重新啓動lighttpd。
您可能還想看看可能啓動fastcgi守護進程的任何啓動腳本。
那麼你是說如果沒有fastcgi進程運行第一次啓動設置用戶所有其他運行?有趣... – 2008-10-06 04:55:05