여기 chmod와 chown의 두 가지 문제가 있습니다. Netbeans가 사용자로서 실행 중이며 파일을 소유하고 있습니다. 다른 사람이 파일을 소유 한 경우 파일을 숨길 수 있습니다. 소유권을 변경하는 방법은 다음과 같습니다.
sudo chown your_account:your_account -R my_project
소유권이 수정 된 후에는 매우 보수적 인 chmod입니다.
chmod 760 -R my_project
첫 번째 숫자는 소유자이며 파일을 소유하고 7은 읽기 쓰기 실행입니다. 중간 번호는 그룹에 사용자 만 포함 된 후 그룹 액세스 권한을 제어하는 번호이지만 그룹에 다른 계정을 추가 할 수 있습니다.
파일이 모두 666 '이며, 모든 사람이 읽고 쓸 수 있고 파이썬과 같은 스크립팅 언어로 쓰여졌다 고 말하면 여전히 다음과 같이 실행할 수 있습니다 python my_script.py
. 그러나 chmod 666 은 다음 과 같이 실행할 수 없습니다./my_script.py
. 머리카락을 나누는 것처럼 보이지만 첫 번째 명령에서 python은 실행 파일이며 my_script를 읽고 있습니다 (따라서 읽기 액세스가 필요합니다), 두 번째 경우에는 my_script.py가 실행됩니다.
chmod와 chown이 방어하는 주요 위협은 시스템의 다른 계정으로부터 파일을 보호하는 것입니다. 이 시스템의 유일한 사용자 일 것입니다. 그러나 해커가 데몬 프로세스 (예 : bind 또는 postfix)를 통해 침입하면 해당 계정의 사용자 권한을 갖습니다. 해커가 netbeans 프로젝트에서 실행 코드를 작성하여 사용자가 실행할 수있는 것을 원하지 않습니다. 마지막 블록에 쓰기 비트가 없으면이 공격에 대해 걱정할 필요가 없습니다. 이것이 더 안전 chmod 775
하지만 일반적인 것이 보이는 이유 chmod 770
입니다. Apache와 같은 다른 데몬은 여전히 chmod 775로 NetBeans 프로젝트를 읽고 실행할 수 있으며 이는 Apache가 PHP 프로젝트를 실행하는 경우 중요 할 수 있습니다.