제가 아는 한, 저는 샌드박스 서버를 사용했습니다.나 자신을 위해서만, 웹사이트는 다음 하위 디렉토리에 있습니다 /home/www/
.
drwxr-xr-x 5 root root 4096 Nov 30 14:45 www
|--- drwxr-xr-x 3 www-data www-data 4096 Oct 14 22:04 mywordpress (subdir of /home/www/)
내가 볼 수 있는 유일한 사용자/그룹은 root
및 입니다 www-data
.
이제 친구가 이 샌드박스 서버에서 웹사이트를 호스팅하도록 허용하고 싶습니다. 나는 사용자 계정을 만들었고 abcd
그의 집은 입니다 /home/abcd/
. 에서는 /home/
현재 다음을 보유하고 있습니다.
drwxr-xr-x 3 abcd abcd 4096 Dec 10 12:02 abcd
drwxr-xr-x 5 root root 4096 Nov 30 14:45 www
문제: 이 계정을 사용하여 SSH를 통해 로그인하면 abcd
여전히 탐색할 수 있지만 /home/www/
이는 원하지 않습니다!그러다가 이 디렉토리에 권한을 주어야겠다고 생각했는데 자주 사용하는 Apache/PHP 관련 내용을 더 이상 열람할 수 없을까 drwxr-xr--
걱정이 되었습니다 !www-data
/home/www/
/home/
질문: 친구와 제가 에서 내 파일을 볼 abcd
수 없이 Apache+PHP 웹사이트를 호스팅할 수 있게 해주는 간단한 샌드박스 서버 디렉터리 구조를 추천해 주실 수 있나요 ? (참고: 파일은 계속 표시되어야 합니다. 이것이 필요하다고 생각합니까?)abcd
/home/www/
www-data
답변1
해결해야 할 다른 세부 사항이 있기 때문에 이 질문에 대한 직접적인 대답은 없습니다. 그러나 권한 부분은 매우 간단합니다.
chgrp www-data /home/www
chmod 0750 /home/www
이는 루트의 rwx를 유지하고 www-data에 rx를 제공하며 다른 모든 사람의 모든 액세스를 제거합니다. 이는 반복적인 변경이 아니므로 Word Press 사이트에는 여전히 필수 쓰기 권한이 있습니다.
또한 동일한 방식으로 생성되는 향후 사용자를 방지하기 위해 사용자에게 abcd
약간의 개인 정보 보호를 제공합니다.
chgrp www-data /home/abcd
chmod 0750 /home/abcd
/home/www
예 를 들어 웹 서버 자체를 사용하거나 웹 서버에서 사용하는 프로그래밍 기술(예: PHP)을 통해 포함된 모든 유형의 파일에서 웹 서버에 액세스할 수 있는 모든 사용자가 읽을 수 있습니다. . 웹 서버 구성 및 설치된 모든 웹 프로그래밍 언어(심지어 CGI)에는 추가 제한이 필요할 수 있습니다.사용자 는 abcd
users 에 액세스할 수 www-data
있으므로 전체 목표의 이 부분은 끝이 아니라 시작입니다.
나머지 부분에 대한 좋은 답변을 얻으려면 웹 호스팅 환경에 대한 모든 세부 사항을 포함하여 새로운 질문을 하시기 바랍니다.
- 운영 체제 이름 및 버전
- 웹 서버 이름 및 버전
- Fast CGI 소프트웨어의 이름과 버전
- 빠른 CGI 구성
- 아파치 구성 파일
- PHP 버전 및 구성 파일
- 기타 관련 정보
관련 정보를 최대한 많이 제공하면(너무 많은 세부 정보를 제공하지 않고) 응답자가 자세한 답변을 제공하는 데 도움이 됩니다. 가능한 한 많은 "잡음"을 제거하기 위해 게시된 파일에서 주석을 제거할 수도 있습니다.