2008-08-29 9 views
2

어떻게 PHP 스크립트가 단일 사용자 만 쓸 수 있도록 허용하는 등의 보안 제한이 높은 파일에 쓸 수있게 할 수 있습니까?php 스크립트가 아닌 세계 쓰기 가능 파일에 쓰기

난이도가 낮은 사용 권한 사용자 (어쩌면 아파치 또는 www 또는 아무도 없음)로 PHP 스크립트가 실행되고있는 것 같고, 아파치 the_writable_file을 채웠더라도 디렉토리가 쓰기 가능하지 않을 수 있습니다. 낮은 수준의 사용자. 일반적으로, PHP가 로컬 파일을 안전한 방법으로 사용할 수있는 일반적인 방법은 무엇입니까?

답변

2

불행히도 mod_php를 사용하는 공유 호스트에서 액세스를 제한하여 웹 응용 프로그램 및 로그인 사용자에게 파일을 보호 할 수있는 방법이 없습니다.

해결책은로 웹 응용 프로그램을 실행하는 것입니다. 그렇게하면 UNIX 파일 사용 권한으로 모든 사람을 올바르게 잠글 수 있습니다. SuExec, suPHP 또는 mod_fcgid 또는 mod_proxy_fcgid 인 FastCGI를 사용하여 PHP를 실행하는 등 여러 가지 방법을 구현할 수 있습니다. FastCGI가 내가 가장 좋아하는 방법입니다.

다른 해결책은 전용 호스트 또는 가상 사설 서버를 사용하는 것입니다.

0

물론, chgrp apache the_writable_filechmod g+w the_writable_file. 그 후에 보안 사용자와 아파치 사용자 만이 파일에 쓸 수 있습니다. 아파치 사용자는 일반적으로 로그인 할 수 없으므로 http 데몬을 통해 보안 파일에 쓰는 웹 사용자에 대해서만 걱정할 필요가 있습니다.

0

모든 포함 폴더에는 실행 권한이 있어야합니다.

예를 들어 파일이 /foo/bar/the_writable_file 인 경우 읽기/쓰기 권한이없는 경우에도 "foo"및 "bar"디렉토리는 모두 _writable_file에 액세스 할 수있는 실행 권한이 있어야합니다.