O usuário root é capaz de administrar a tela para outros usuários?

O usuário root é capaz de administrar a tela para outros usuários?

Estamos tentando reescrever um assassino de sessão de tela draconiano para usuários que deixam suas sessões de tela ativas por um período excessivo de tempo e, de uma forma ou de outra, contornaram o tempo limite de nossa sessão.

O método atual é encontrar o pid para a tela e eliminá-lo, parece que o programa da tela está escrito de uma forma que você pode conectar-se a sessões de outros usuários, mas quando tento fazer qualquer coisa como root, o diretório da tela é um diretório diferente. Suponho que isso seja por motivos de segurança, mas existe alguma maneira de substituir isso intencionalmente para que eu possa fazer algo como screen -r somedude/33333 -d -X quit? como raiz?

Responder1

As instâncias padrão screensão singleuser, ou seja, cada instância só pode ser acessada pelo usuário que a cria.

Para permitir instâncias multiusuário screen, você pode adicionar estes comandos:

multiuser on
addacl root,<user1>,<user2>,...

para sua screenconfiguração global, ou seja /etc/screenrc, .

Todas screenas instâncias depois disso devem ser multiusuário screen, ou seja, podem ser anexadas por outros usuários especificados em addacl; exceto se substituído por comandos específicos do usuário.

Você pode listar as telas do usuário com

$ find /var/run/screen -type s
/var/run/screen/S-<user>/<pid>.<tty>.<host>

e anexe à tela de outro usuário com

$ screen -d -r <user>/<pid>

Verificarman screen, Seção de personalização para obter mais informações sobre screenrc.

Observe que cada usuário também pode adicionar seus próprios screenrccomandos específicos do usuário no $HOME/.screenrcarquivo, desabilitando assim a tela multiusuário para seu usuário.

informação relacionada