sudo -l quando runas_default é um usuário diferente

0

Por razões, para utilizar comandos de administração do sistema, é necessário usar uma conta de dois fatores. Esta conta é diferente da conta de login normal. Por exemplo, se a conta de login padrão for "alice", a conta de dois fatores pode ser "alice2".

Eu tenho um arquivo sudo (um por usuário permitido, em /etc/sudoers.d) que é semelhante ao seguinte:

Defaults:alice  runaspw,runas_default=alice2

alice ALL=(alice2) /bin/bash

Isso funciona em que "alice" é solicitada a senha para "alice2" (que é uma senha somente de dois fatores) e, em seguida, "alice" é alterada para a conta "alice2". De lá, eu tenho um arquivo sudo separado que permite que alice2 use qualquer comando sudo sem uma senha.

Assim, tudo parece estar bem no que diz respeito à autenticação de dois fatores. No entanto, existem alguns comandos que estão isentos dessa abordagem de dois fatores (como reiniciar alguns serviços em determinadas máquinas). Eu também tenho esse trabalho, penso eu, por linhas como

Cmnd_Alias  SRVCHTTPD = /usr/bin/systemctl restart httpd
Defaults!SRVCHTTPD  !runaspw,runas_default=root

Aqui, o usuário "alice" é solicitado a fornecer a senha para "alice", e o serviço pode ser reiniciado.

Agora, meu problema. Quando um usuário executa sudo -l para ver quais comandos podem ser executados, o usuário é solicitado a fornecer uma conta de dois fatores (alice2) em vez da conta principal (alice). Eu tentei adicionar um alias de comando ( seguindo uma sugestão aqui no sudo -l ), essencialmente replicando as linhas acima.

Cmnd_Alias SUDOLIST = /usr/bin/sudo -l
Defaults!SUDOLIST !runaspw,runas_default=root

No entanto, essa abordagem não funcionou e o usuário ainda foi solicitado a fornecer uma senha de conta de dois fatores.

Eu apreciaria qualquer conselho sobre o que não estou fazendo corretamente aqui.

    
por KevinO 12.04.2018 / 16:17

0 respostas

Tags