내 서버(Synology DS212)에서 일부 파일과 폴더에는 nobody nobody
사용자와 그룹이 있습니다. 이 사용자와 그룹의 특징은 무엇입니까? 누가 이 파일을 쓰거나 읽을 수 있나요?
어떻게 바꿀 수 있나요? 어떤 사용자와 그룹을 위한 것인가?
답변1
많은 Unix 및 Linux 배포판에서 none 사용자는 의사 사용자입니다. ~에 따르면리눅스 표준 라이브러리, 아무도 사용자 및 해당 그룹은 선택적 니모닉 사용자 및 그룹입니다. 이 사용자는 시스템에서 최소한의 권한을 가진 사용자를 나타냅니다. 가장 좋은 경우는 사용자와 해당 그룹이 파일이나 디렉터리에 (소유자로서) 할당되지 않는 것입니다. 사용자는 LSB에 따라 "nobody"라고도 하며 다른 그룹에 속하지 않는 해당 그룹에 속합니다.
초기 Unix 및 Linux 배포판에서는 데몬 프로세스(예: 웹 서버)가 사용자 없이 호출되었습니다. 악의적인 사용자가 그러한 데몬의 제어권을 얻으면 그가 입힐 수 있는 피해는 데몬이 입힐 수 있는 피해로 제한됩니다. 그러나 문제는 아무도 사용자로 실행되지 않는 데몬이 여러 개 있을 때 이것이 더 이상 의미가 없다는 것입니다. 이것이 바로 오늘날 이러한 데몬이 자체 사용자를 갖는 이유입니다.
누구도 사용자에게 쉘을 할당해서는 안 됩니다. 다양한 배포판은 이를 다양한 방식으로 처리합니다. 일부는 메시지 인쇄를 참조합니다 /sbin/nologin
. 일부는 /bin/false
단순히 1(false)로 종료하거나 단순히 사용자를 비활성화하는 것을 의미합니다 /etc/shadow
.
Linux 표준 라이브러리에 따르면 none 사용자는 "NFS에서 사용됩니다". 실제로 NFS 데몬은 여전히 인간 사용자가 필요하지 않은 몇 안 되는 데몬 중 하나입니다. 마운트된 NFS 공유의 파일 또는 디렉터리 소유자가 로컬 시스템에 없으면 소유자는 무인 사용자 및 해당 그룹으로 대체됩니다.
루트 사용자와 를 사용하여 누구도 소유하지 않은 파일에 대한 권한을 변경할 수 있습니다 chown
. 그러나 이 사용자는 NFS 공유를 호스팅하는 컴퓨터에 존재할 수 있으므로 주의하세요.
저도 Synology 시스템을 사용합니다. 그들은 아무도 사용자로 아파치 웹 서버를 실행합니다.
답변2
로그인할 수 있는 사용자는 nobody
이러한 파일을 변경할 수 있지만 일반적으로 시스템이 설정되어 있으므로 이것이 불가능합니다. 내 Debian 기반 시스템에서 파일의 항목은 다음과 /etc/passwd
같습니다.
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
그리고 /usr/sbin/nologin
다음을 제공합니다:
This account is currently not available.
일반적으로 다른 누구도 이 그룹의 구성원이 아니기 때문에 루트 사용자에서만 이 설정을 변경할 수 있습니다 nobody
. 하지만 그렇게 해야 할지 의심스럽습니다. 이러한 파일은 의도적으로 소유권을 획득하는 경우가 많습니다.