Alternativa para sudo

Alternativa para sudo

Estou ciente de que podemos executar um comando/script como um super/outro usuário usando sudoo comando. Mas existe a possibilidade de o sudopróprio utilitário não estar disponível/removido pelo usuário. Em caso afirmativo, qual poderia ser a alternativa sudodiferente de su? Além disso, fazem sudoe suservem ao mesmo propósito?

Responder1

'sudo' permite que você inicie qualquer programa como qualquer usuário. É 'setuid root', pois o próprio programa requer permissões de root para fazer isso. O poder do sudo é que você pode configurar facilmente quem pode fazer o quê. Você pode permitir que um usuário execute o nmap (e apenas o nmap) usando o sudo.

'su' permite que você inicie um shell como qualquer usuário. Ao iniciar um shell, obviamente você pode iniciar qualquer outro programa. É portanto mais perigoso; em sistemas bem administrados, suo acesso geralmente é desativado, mas sudopode estar disponível para programas distintos.

A razão pela qual os dois programas acima são usados ​​é a responsabilização. Sudo registra todas as solicitações feitas. Portanto, é muito fácil para um administrador rastrear o que um usuário fez usando privilégios de root. Se você conceder acesso a um shell, um usuário poderá fazer o que quiser (é um 'buraco negro'). (É claro que o log avançado no nível do kernel impede isso).

Claro, esses programas também podem ser marcados como setuid. Isso altera as permissões do proprietário do binário ao executá-lo. Se você conseguir ativar o setuidbit por exemplo /bin/bashe definir o proprietário /bin/bashcomo root, você será root toda vez que executar /bin/bash.

Por último, o acesso físico à máquina permitirá que você faça o que quiser. Você pode inicializar a partir de uma unidade flash e acessar o sistema de arquivos local. Você pode até configurar seu bootloader para usar um initprocesso diferente que inicia imediatamente um shell no modo de usuário único (sem solicitar uma senha).

Responder2

Parece que ninguém respondeu à questão de saber se existem ou não alternativas ao sudo além do su, então você pode estar interessado em saber que o site do sudo na verdade mantém uma lista de alternativas ao sudo:

http://www.sudo.ws/other.html

A lista inclui software de código aberto e comercial. Aqui estão as alternativas de sudo de código aberto listadas no momento:

Dito isto, nunca usei nenhuma dessas alternativas, nem nunca vi ou ouvi falar delas em qualquer outro contexto. Também parece que pelo menos alguns deles são experimentais, extintos ou sem suporte. A impressão que tenho é que sudoé suo único jogo real da cidade.

Responder3

Faça login como root (se permitido em seu tty) ou reinicie o computador e faça login com init=/bin/bash na linha de comando para restaurar a funcionalidade necessária.

Ressalto que apenas o root pode remover o sudo.

sudo e su servem a propósitos semelhantes, mas diferentes. "sudo" permite que você faça algo com as permissões de outra pessoa, enquanto "su" permite que você "se torne" esse usuário e se comporte como ele.

Responder4

Se a máquina estiver openssh-serverinstalada, uma alternativa sudopode ser:

ssh root@localhost ..command.. ..goes.. ..here..

Se não tiver sido desativado, há sucomo você mencionou:

su - root -c "..command.. ..goes.. ..here.."

informação relacionada