Por que su para root ao invés de logar como root?

33

Ouvi dizer que é melhor suar root em vez de fazer login diretamente como usuário root (e, claro, as pessoas também dizem que é melhor usar o sudo). Eu nunca entendi porque um é melhor que o (s) outro (s), insight?

    
por thepocketwade 16.07.2009 / 22:41

10 respostas

43

A inferência é apenas su ou sudo quando necessário.

A maioria das tarefas diárias não requer um shell de root. Por isso, é uma boa prática usar um shell não privilegiado como seu comportamento padrão e, em seguida, apenas elevar para root quando você precisar realizar tarefas especiais.

Ao fazer isso, você está reduzindo o escopo de erros perigosos (scripts incorretos, curingas incorretos etc.) e vulnerabilidades de quaisquer aplicativos que você usa. Especialmente aqueles que se conectam à Internet - veja o velho ditado "Don't IRC como root ".

sudo é frequentemente recomendado porque permite um bom detalhamento e audita o uso de tais privilégios.

Ao observar essas práticas, você também pode desativar os logons raiz remotos. Isso aumenta a barra de entrada para qualquer atacante em potencial, já que eles precisariam comprometer uma conta de usuário comum que era membro do grupo "wheel" e, idealmente, apenas autorizada por chaves públicas SSH e, em seguida, a própria conta raiz. / p>     

por 16.07.2009 / 22:46
27

Você deve desativar o acesso root do remoto para que um invasor não comprometa o root sem primeiro comprometer um usuário e, em seguida, escalar para root. Ativamos o acesso root somente no console.

Além disso, cria responsabilidade. :)

    
por 16.07.2009 / 22:47
15

O principal motivo é criar uma trilha de auditoria. Se você precisa entrar em um sistema como um usuário regular e, em seguida, su, é possível rastrear quem é responsável por determinadas ações.

    
por 16.07.2009 / 22:48
10
O

sudo também registra automaticamente todos os comandos no syslog e você pode definir os comandos que cada usuário pode usar.

    
por 16.07.2009 / 22:48
9

Outra boa razão: Ao elevar para root via sudo, um usuário se autentica com suas próprias credenciais, o que significa que elas não necessariamente precisam receber a senha de root, facilitando o bloqueio de itens quando alguém sai da organização. / p>     

por 16.07.2009 / 23:15
4

Se você quiser criar uma trilha de auditoria e não quiser ser vítima dos problemas "sudo su -" ou "sudo vim foo.txt" mencionados aqui, você pode usar "sudosh". Distribua o acesso root via sudo, mas faça o único comando permitido para executar o "sudosh".

sudosh é um shell de registro, e você pode repetir a sessão de terminal inteira em uma data posterior, mostrando exatamente o que o usuário viu em seu terminal.

    
por 16.07.2009 / 23:50
1

Você deve praticar a segurança em profundidade.

Não permitir o acesso remoto à raiz (ou pelo menos o acesso root via senhas). (se você permitir o acesso root através de chaves, controle cuidadosamente essas chaves ou, melhor ainda, use algo como o kerberos que permita a revogação centralizada das chaves).

Eu desativaria o su e usaria o sudo. Dessa forma, os usuários usam chaves (de preferência criptografadas) para acessar o sistema, então eles usam a senha deles apenas para escalonamento de privilégios. Você pode restringir os programas que as pessoas acessam com o sudo, mas principalmente você restringe o acesso a quem sabe a senha do root.

Em um mundo ideal, você deveria poder publicar suas senhas root na internet e isso não importaria, mesmo se você desse acesso às pessoas em sua máquina (mas não as colocasse no arquivo / etc / sudoers ). É claro que você não deve publicar a senha de root, mas a idéia é que você proteja seus sistemas com camadas concêntricas de proteção.

    
por 17.07.2009 / 04:20
0

A ideia é desabilitar o login root e, portanto, não tem uma conta de administrador padrão. Dessa forma, o invasor precisa adivinhar o nome de usuário e a senha (e não apenas a senha).

    
por 16.07.2009 / 23:05
0

Se você estiver usando o root regularmente suas permissões podem estar erradas ou você pode precisar conceder direitos sudo ou um novo grupo para r / w / x os arquivos ou diretórios. / p>

Os bons esquemas de permissões são algo que até mesmo os usuários de Linux de longa data erram ou não percebem o escopo que eles têm.

Nem me fale sobre o que o Ubuntu fez!

    
por 16.07.2009 / 23:24
-2

Evita que você execute rm -r -f / Eu apenas corri isso dois dias atrás (como um usuário sem privilégios, eu queria rodar rm -r -f *)

    
por 31.12.2010 / 22:29