O que é ninguém usuário e grupo?

37

No meu servidor (Synology DS212), alguns arquivos e pastas têm nobody nobodyusuários e grupos. Quais são as características deste usuário e grupo? Quem pode escrever ou ler este arquivo?

Como posso mudá-lo ? Para qual usuário e grupo?

Guuk
fonte

Respostas:

41

O usuário ninguém é um pseudo-usuário em muitas distribuições de Unixes e Linux. De acordo com o Linux Standard Base , o usuário ninguém e seu grupo são usuários e grupos mnemônicos opcionais. Esse usuário deve representar o usuário com menos permissões no sistema. Na melhor das hipóteses, o usuário e seu grupo não estão atribuídos a nenhum arquivo ou diretório (como proprietário). Este usuário está em seu grupo correspondente que (de acordo com o LSB) também é chamado de "ninguém" e em nenhum outro grupo.

Em versões anteriores, o daemon de distribuição Unixes e Linux (por exemplo, um servidor da web) era chamado sob o usuário ninguém. Se um usuário mal-intencionado obtiver controle sobre um daemon, o dano que ele pode executar é limitado ao que o daemon pode. Mas o problema é que, quando há vários daemons em execução com o usuário ninguém, isso não faz mais sentido. É por isso que hoje esses daemons têm seu próprio usuário.

O usuário ninguém deve ter um shell atribuído a ele. Distribuições diferentes lidam com isso de maneiras diferentes: algumas se referem a /sbin/nologinisso que imprime uma mensagem; alguns se referem ao /bin/falseque simplesmente sai com 1 (false); ou alguns simplesmente desativam o usuário /etc/shadow.

De acordo com o Linux Standard Base, o usuário ninguém é "Usado pelo NFS". De fato, o daemon NFS é um dos poucos que ainda precisam do usuário ninguém. Se o proprietário de um arquivo ou diretório em um compartilhamento NFS montado não existir no sistema local, ele será substituído pelo usuário ninguém e seu grupo.

Você pode alterar a permissão de um arquivo pertencente ao usuário ninguém simplesmente com o usuário raiz e chown. Mas na máquina que hospeda o compartilhamento NFS, esse usuário pode existir, então tome cuidado.

Eu também uso um sistema Synology. Eles executam o servidor web apache sob o usuário ninguém.

caos
fonte
1
"quando há vários daemons rodando com o usuário ninguém, isso não faz mais sentido". - Por quê? Um daemon comprometido pode afetar outros daemons?
flow2k 1/11
5

O usuário que pode fazer login como nobodypode alterar esses arquivos, mas normalmente o sistema está configurado para que isso não seja possível. No meu sistema baseado em debian, a entrada no /etc/passwordarquivo é:

nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin

e /usr/sbin/nologindá:

This account is currently not available.

Você só pode alterar isso como raiz do usuário, pois normalmente ninguém mais é membro do grupo nobody. No entanto, duvido que você deva fazê-lo. Normalmente esses arquivos obtêm essa propriedade de propósito.

alguém
fonte
No meu caso, /etc/passwdeu tenho nobody:x:99:99::/:/bin/false. /bin/falsenão retorna nada.
Guuk
/bin/falsetambém impede alguém de fazer o login, mesmo se não haveria um conjunto Passord para nobodyem/etc/shadow , o que normalmente não existe.
qualquer um
Se por alguma razão quiser fazer login para a conta ninguém, você pode substituir o shell como sudo su nobody -s /bin/sh (Isso substitui o "shell default" / usr / bin / nologin com / bin / sh)
hanshenrik