Preocupação sobre o login como root superestimado?

16

Para linux pessoal em meus cadernos pessoais, normalmente eu configurei meu ambiente para autologin como root mesmo sob níveis de execução X ou mais baixos. Descobri que o meu fluxo de trabalho é muito agradável e rápido, sem necessidade de digitar su ou sudo ou de ser solicitado pelo keyring ou auth ou algo assim.

Até agora eu nunca tive nenhum problema com isso, então por que a maioria das pessoas está pirando sobre isso? A preocupação é superestimada? É claro que isso pressupõe que o usuário saiba o que está fazendo e não se preocupa com problemas de segurança e confiabilidade do sistema.

    
por uray 23.08.2010 / 13:36

10 respostas

33

Pelas mesmas razões pelas quais cada daemon deve ter direitos mínimos. O Apache pode ser executado como root. Ele é projetado para executar uma tarefa e, certamente, nada de ruim pode acontecer?

Mas assuma que o apache não está livre de bugs. Bugs são descobertos de tempos em tempos. Às vezes, pode até ser uma execução arbitrária de código ou similar. Agora, com o apache sendo executado como root, ele pode acessar qualquer coisa - por exemplo, pode carregar um rootkit no kernel e se esconder.

Por outro lado, escrever um rootkit no nível do usuário é muito difícil. Ele precisa sobrescrever diferentes programas (como ps ) dentro de /home , o que pode levantar suspeitas devido ao espaço extra em disco usado. Pode não saber a configuração exata e esquecer de incluir, por exemplo, gnome-system-monitor , portanto, se expondo. Ele tem que cobrir bash , tcsh e qualquer shell que você use (para começar). Ele teria que trabalhar com configurações diferentes, em vez de simplesmente substituir um monte de retornos de chamada.

Considere que não há muito tempo houve execução de código arbitrário descoberto no ... Adobe Reader.

Outro motivo é erros do usuário. É melhor ser avisado antes de apagar o disco inteiro por um comando.

Terceira razão é diferente de shells. O shell raiz deve ser instalado em / , caso o resgate do sistema precise ser executado. Os shells dos usuários podem ser instalados em /usr (por exemplo, o usuário pode usar zsh).

O motivo é que programas diferentes não funcionam como root. Eles sabem especificamente que eles não devem, então você precisa corrigir o sistema.

A quinta razão é que /root não deve estar em uma partição separada, enquanto /home pode (e deveria). Ter /home separado ajuda por vários motivos.

TAMBÉM : PORQUE NÃO USAR COMO USUÁRIO NORMAL. Você com mais frequência não precisa ter direitos de root do que fazer. É um custo muito pequeno para segurança.

    
por 23.08.2010 / 15:05
29

Você também pode andar de moto nu e nada pode acontecer. Mas aposto que você se sentiria melhor se tivesse quando você bater a moto ...

    
por 24.08.2010 / 20:59
12

Além do ponto óbvio de segurança, é claro que você nunca lavou seu sistema por erro de digitação em um comando no shell ou em um lapsus. Se isso acontecer, você entenderá por que as pessoas se assustam com isso. E então você vai chorar de horror, e também perceber que foi uma experiência altamente educacional, mas você não está recebendo o seu sistema de volta de qualquer maneira.

Um pensamento: se você está pedindo a senha de root durante o uso normal do seu sistema (ou seja, não instalar pacotes ou alguma outra tarefa de administração do sistema), você está fazendo errado .

    
por 23.08.2010 / 14:35
4

Não, não é superestimado. Na prática, é mais subestimado. : -)

Minha pequena equipe no trabalho, por exemplo, está compartilhando uma máquina RHEL para desenvolvimento: construção de material, testes etc. Todos usam contas de usuário individuais, mas também compartilhamos a senha raiz, pois as pessoas precisam disso de tempos em tempos para uma rápida tarefas de sysadmin. Isso também nos levou a administrar o sistema operacional algumas vezes em sua curta vida útil. Alguém construindo uma certa versão da libc removeu a libc do sistema por uma invocação boba rm . Em outro incidente curioso, a tabela de partições estava faltando. (Ok, isso não tem nada a ver com privilégios.) Resto da equipe é bloqueado até que a quebra seja corrigida. Uma solução é ter alguém voluntário para assumir as tarefas do administrador de sistema. Até este ponto, não nos importamos muito, exceto para permitir que as pessoas aprendam suas lições: todos nós precisamos de algumas marcas de dentes em nossas extremidades traseiras, e estas são marcas de dentes relativamente baratas.

O realmente curioso pode querer seguir o princípio do menor privilégio , e ler o artigo de Ken Thompson, "Reflexões sobre confiança confiante. " (" A moral é óbvia. Você não pode confiar em código que você não criou totalmente sozinho. ")

    
por 25.08.2010 / 08:17
3

Pegando um comentário seu para outra resposta

but linux is about freedom, including freedom to destroy your own data, privacy and security

Mesmo forçando as pessoas a sudo , o Linux oferece essa liberdade. Todo o argumento de segurança que você quer evitar está lá para protegê-lo de coisas que não são (leia-se: programas maliciosos ou programas controlados por pessoas maliciosas).

Pense nisso como um cinto de segurança. Leva um segundo para usar. Poderia salvar sua vida de outros idiotas por aí (assim como você).

Se você não quiser digitar sua senha o tempo todo, sudoedit /etc/sudoers , mas se você continuar rodando como root, um dia você provavelmente vai executar algo que destrua seu sistema e todos os seus dados.

Se você está feliz sabendo que até mesmo algo tão ruim quanto o Flash pode reformatar seu computador, ninguém aqui se importa com o que você faz. Corra como root.

    
por 23.08.2010 / 16:10
2

Por que não rodar o Damn Vulnerable Linux como seu sistema principal. Se você vai ignorar a segurança do sistema, você pode ignorar tudo isso ...

    
por 23.08.2010 / 16:13
1

Você está falando sobre um sistema operacional que é o esforço colaborativo de inúmeras pessoas. Se você não executar nada além de um software estável, você PODE estar seguro por um tempo.

Como mencionado anteriormente, você ficaria surpreso com o quão pequena uma coisa pode destruir todo o seu HD. No meu primeiro ano, eu tentei rodar muito no root, porque, bem, nos dias do Fedora-core 3, não havia muitas maneiras sofisticadas de administrar seu sistema do usuário.

Na época, fiz uma pequena edição xorg sem fazer o backup, porque não achei que ia doer. Desktop ido. Então tentei corrigi-lo manualmente, mas não consegui descobrir o que fiz exatamente. Mais tarde, pensei que talvez pudesse reinstalar meus drivers e desktop, mas inadvertidamente desconectei minha ethernet, já que também era nvidia.

Ao executar o Arch pela primeira vez, ignorei os avisos para criar um usuário e executei como administrador por um tempo. Eu instalei um pacote do AUR que precisava e depois que eu reiniciei, toda a minha instalação foi interrompida.

Desde que eu estava na raiz, corrigir esses problemas se tornou muito pior do que o necessário.

Você pode concluir que eu era apenas incompetente. Mas como outros mencionaram ... digitar "sudo" é um pequeno preço a pagar por alguma paz de espírito.

EDIT: Ah ... e certos programas, como o WINE, não devem ser executados em um ambiente raiz. link

    
por 24.08.2010 / 22:24
1

Razões de segurança - um daemon ou script de vulnerabilidade direcionado ao Linux teria o poder Sysadmin sobre o sistema.

Executar como um usuário simples E usar o sudo é muito diferente em termos de segurança. Meu Firefox está sendo executado como meu usuário, portanto, qualquer vulnerabilidade do Firefox só atingirá minha conta. Nada mais.

    
por 24.08.2010 / 23:44
0

Concordo com Maciej pela preocupação com a segurança & ter controle sobre certos poderes. Além disso, como você é o proprietário do seu sistema, você pode desativar essa funcionalidade se quiser;) a escolha é sua.

    
por 23.08.2010 / 15:19
-4

Não consigo ver nenhum grande problema fazendo login como root em uma sessão normal, contanto que você não faça nada estúpido.

Eu não faço isso pessoalmente, porque, ocasionalmente, faço algo bobo. Eu nunca percebi que qualquer estupidez que eu tenha feito tem sido potencialmente um grande problema, mas eu não sou arrogante o suficiente para pensar que eu nunca nunca faço qualquer coisa realmente estúpida.

    
por 23.08.2010 / 17:12