Usuário ninguém está logado em '???'

2

Uma transcrição da sessão de hoje:

x@yz:~$ shutdown now
User nobody is logged in on ???.
Please retry operation after closing inhibitors and logging out other users.
Alternatively, ignore inhibitors and users with 'systemctl poweroff -i'.

Eu usei shutdown now o tempo todo e nunca vi nada assim. O que é isso? O que é o negócio de nobody em ??? ? Eu sou o único usuário do meu sistema e nunca mexi com o / nobody there

EDIT (por comentários):

x@yz:~$ ps -aux | grep nobody
nobody    2666  0.0  0.0  45408   132 ?        Ss   May  09   0:00 /lib/systemd/systemd --user
nobody    2667  0.0  0.0 163956     8 ?        S    May  09   0:00 (sd-pam)
x        11189  0.0  0.0  24480  1004 pts/0    S+   02:50   0:00 grep --color=auto nobody

x@yz:~$ ps -U 65534
 PID TTY          TIME CMD
 2666 ?        00:00:00 systemd
 2667 ?        00:00:00 (sd-pam)
    
por jaam 12.05.2018 / 01:45

1 resposta

2

Para esclarecer tudo: -

1. Como ninguém entrou no seu sistema?

Ninguém usuário é um pseudo usuário criado por padrão em uma nova instalação em muitas distribuições Linux e Unix

2. Quem é que ninguém é usuário?

"" tem menos permissões no sistema. Não possui arquivos, não está em grupos privilegiados e não possui habilidades, exceto aquelas que qualquer outro usuário possui. Ninguém usuário não tem shell atribuído a ele.

~$ sudo grep nobody /etc/passwd
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin

3. Qual é o propósito de ninguém usuário?

No início das distribuições Unix e Linux, era comum a execução de daemons (por exemplo, um servidor web) sob nenhum usuário para limitar os danos ao resto do sistema, de modo que se um usuário mal-intencionado obtivesse controle sobre esse daemon, ele não tem acesso a nenhum arquivo ou direitos privilegiados.

Mas o problema é que, quando há vários daemons sendo executados com o usuário nobody, isso não tem mais sentido. É por isso que hoje esses daemons têm seu próprio usuário.

4. Como ninguém logou no seu sistema?

Você pode ter algum serviço / daemon em execução que é executado sob nenhum usuário. Alguns exemplos de serviços podem ser: httpd, nfs, postfix, etc

5. Quais são os dois processos em execução no seu sistema sob nenhum usuário?

6. Por que os processos (systemd e sd-pam) ainda estão lá, mesmo quando o serviço que rodava sob nenhum usuário não está mais sendo executado?

Bem, isso foi relatado como um bug onde

Systemd-user doesn't properly close its PAM session.

O Systemd não consegue fechar a sessão do pam corretamente porque o subprocesso do sd-pam descarta privilégios após o pam_open_session (). Portanto, pam_close_session () é executado como o usuário, e não como root, o que quebra os módulos PAM que precisam executar tarefas privilegiadas para limpar a sessão.

Para mais informações sobre isso:

link

link

link

link

    
por 12.05.2018 / 09:23