Sudo versus login como root

Boa noite, pessoal.
Um tópico apenas para debater um assunto interessante:

Vocês preferem usar sudo ou fazer login como root para as tarefas administrativas?

Pergunto isso porque já ouvi gente experiente falando que sudo é inseguro, e também ouvi gente experiente falando que logar como root tem desvantagens. Então gostaria de saber de vocês quais as suas opiniões a respeito disso. Abraços a todos.

1 Like

O que torna o Linux seguro é justamente o sistema de permissões, logar como root torna o sistema vulnerável a vírus e erros do usuário.

2 Likes

Eu uso sudo por teimosia mesmo, mas concordo que é inseguro, pois você dar permissões de super usuário ao usuário comum, que, geralmente, usa uma senha mais fraca. Eu recomendaria não usar o sudo e logar como root, obviamente usando uma senha mais forte do que a do usuário comum, para executar tarefas específicas. Em relação as desvantagens, você terá de qualquer forma se não souber o que está fazendo.

1 Like

Eu criei o tópico e me esqueci de dar minha opinião:

Eu prefiro usar sudo, e recomendo a todos os usuários, epecialmente os novatos, a usarem sudo também. Usando sudo nós executamos apenas um comando como administrador já voltamos a usar nosso usuário comum em seguida. Um usuário novato pode se esquecer de sair do ambiente root e gravar coisas na home como root, para depois perceber que não tem permissão nas coisas por ter gravado como root, entre outras coisas.

Num servidor então, melhor usar sudo mesmo, pois frequentemente é mais de um usuário que faz coisas administrativas (cada um cuida de um serviço, por exemplo) e se usarmos login de root teremos que compartilhar a senha de root com todos.

2 Likes

Se estivermos falando da manutenção do seu próprio desktop, não vejo maiores motivos para não usar o sudo - um sistema será tão seguro quanto o hábito de seus usuários. :wink:

Quando falamos de ambientes empresariais, já trabalhei em um lugar onde tínhamos uma rede com mais de 4000 usuários ativos e tudo era gerenciado com uma base LDAP+PAM centralizada onde dávamos as permissões necessárias de administração para cada usuário.

No geral, penso que dar ao usuário o mínimo de permissões possível costuma ser mais saudável à longo prazo.

4 Likes

Já tive casos onde sudo não fazia modificações em certos arquivos e só como root, então caso for fazer modificações mais profunda no sistema o sudo pode limitar, mas também evitar a cometer certos erros e ainda continuará logado como usuário

2 Likes

Dependendo do tipo de servidor, querendo ou não é necessário o su, mas respondendo para uso pessoal ou sei lá qual o motivo:

O sudo seria mais seguro pois, imagina um usuário qualquer que tenha um acesso restrito como um convidado no sistema e tenha a brilhante ideia de testar algo mas precisa de mais permissões, mas como o root não tá ativo, não dá pra fazer nada. Então teria que saber qual a senha do "usuário real" da máquina em vez de usar o convidado apenas, que tem acesso restrito. Do contrário teria que saber qual a senha do administrador pra resetar a senha do usuário, mas se não tem a senha do admin, não dá pra acessar o usuário padrão e sem o usuário padrão não dá pra usar comandos administrativos.

Não sei se pegaram a idéia, meio que baguncei toda a imaginação e explicação aqui :smile:

2 Likes

Acho que isto explica um bocado:

* CU = Deve ser de “CU-Boulder”. Leia a Breve História do sudo

Fonte e mais info: Sudo in a Nutshell

Site oficial do sudo

2 Likes

Sim. Em algumas distros, como o Ubuntu, que trazem o root desabilitado, o sudoer tem mais poderes. Mas tudo é configurável com o visudo também.

1 Like

O q esse comando faz? sudo xargs rm -vr

1 Like

Sem parâmetro no final poderia ser que dê erro pra executar, mas se for fazer algum script de limpeza de diretórios ou outra coisa, deve tomar cuidado pra não errar o código.

Levando em conta de que diferente do ls que imprime caminhos relativos, com xargs da para obter resultados absolutos, sabendo os parâmetros corretos.

Ou você tá zuando mesmo com esta pergunta :expressionless:

2 Likes

Tipo excluir uma pasta de arquivos do programa instalado?

sudo = Super User DO, a idéia do sudo é você fazer uma terefa só

sudo su = Super User DO shell as Super User, a idéia desse comando é permitir a execução de várias tarefas como super usuário sem a necessidade de colocar sudo antes do comando e sem limite de tempo

Fazer login como Root é só pra último caso, por exemplo você perdeu acesso a sua conta de usuário

3 Likes

O sudo é inseguro porque você pode abrir brechas para um programa adquirir acesso root permanente (basta ele se lançar como sudo su)

3 Likes