웹 서버에 대한 디렉토리 권한

웹 서버에 대한 디렉토리 권한

서버의 디렉터리에 대한 권한 문제가 있습니다. 처음에는 파일 권한을 읽었 drwx--S---으며 디렉터리 소유자로 로그인한 FTP 클라이언트에 연결하여 디렉터리를 관리할 수 있지만 브라우저에서 해당 파일을 보려고 하면 권한이 없다는 "금지됨" 메시지가 나타납니다. 파일을 보려면 . 나는 내가 사용하면

sudo chmod -R 644 my_directory

디렉토리의 권한을 변경하여 drw-r-Sr--사용합니다.

sudo chmod g+x my_directory

디렉토리의 권한을 변경한 후에는 drw-r-sr--모든 브라우저에서 파일을 읽을 수 있지만 더 이상 FTP를 통해 디렉토리로 파일을 전송하거나 볼 수 없습니다.

답변1

귀하의 질문을 바탕으로 가정을하겠습니다. 웹 서버 프로세스는 디렉터리의 그룹 소유권과 동일한 그룹에 있습니다.

디렉터리 권한에서 실행(x) 비트를 제거하고 그룹에만 반환했습니다. 이는 디렉토리가소유자실행 권한이 없으며 디렉터리를 변경/통과할 수 있어야 합니다. 이러한 이유로 절대 권한으로 chmod -R을 사용하는 것은 위험할 수 있습니다. 다음을 수행하는 것이 좋습니다.

디렉터리 권한을 수정하세요.

sudo find my_directory -type d -exec chmod 2750 {} \;

디렉터리 탐색을 중단했으므로 이 작업을 여러 번 수행해야 할 수도 있습니다. 위 명령을 실행할 때 권한 오류가 발생하면 해당 오류가 해결될 때까지 다시 실행하세요.

파일 권한을 수정하세요.

sudo find my_directory -type f -exec chmod 0640 {} \;

이 작업을 완료하면 디렉터리에 다음 권한이 부여되어야 합니다.

drwxr-s---

그리고 파일에는 다음 권한이 있어야 합니다.

-rwxr-x---

UNIX 권한을 더 잘 이해하려면 다음을 읽어 보는 것이 좋습니다.사람 2 chmod. 확실히 지루한 읽기이지만 각 비트의 의미를 설명합니다.

관련 정보