Qual é o benefício real que o Ubuntu (ou derivados do Debian) obtém ao desativar o usuário root?
Em todos os lugares que leio, ele diz para evitar danos não intencionais para usuários inexperientes. Eu quero saber exatamente o que, pois sudo
pode executar todos os comandos (que eu conheço / uso).
Então, em que caso a raiz pode causar danos, enquanto sudo
não pode?
PS: Eu sei como sudo
funciona.
Respostas:
Como você normalmente deve invocar
sudo
cada vez que quiser fazer algo que exija privilégios, o raciocínio é que você "pensará antes de saltar", ou seja, não apenas colocará o sudo na frente de algo sem pensar por um segundo qual é o comando que você está executando vai fazer.Por
su
outro lado, quando você entra, entra. Você tem carta branca (uma licença aberta) para fazer tudo e qualquer coisa, e o raciocínio é que você pode esquecer por um momento que possui esses privilégios e se tiver azar, execute algo que afetará / danificará seriamente seu sistema - se você não tivesse seus privilégios, o comando não faria nada sério.fonte
sudo
, então não o uso. Quando eu uso, me dá um momento de pausa. Sim, estou falando como programador, não como um usuário comum, mas, novamente, os usuários comuns não usam a linha de comando.sudo
maissu
. Com muita frequência, as pessoas dizem "use sudo porque é mais seguro que su" - o que é ingênuo pensar, pois não é nada mais seguro. Esquecer que você usousu
não é desculpa, isso é apenas incompetência abaixo da direita se você executar um comando como root acidentalmente.su
, mas pessoalmente prefiro não montar bombas do que assumir que vou me lembrar de desarmá-las.Na IMO, as principais vantagens do sudo sobre o su são que o sudo possui um registro superior de quais comandos foram executados e o sudo oferece um controle mais preciso sobre o que os usuários podem fazer.
su é all ou none, mas o sudo pode ser configurado para permitir o acesso a alguns, mas não a todos os comandos.
Veja https://help.ubuntu.com/community/RootSudo para uma discussão mais completa, incluindo vantagens e desvantagens.
fonte
su -
Quando logado como root , qualquer tarefa iniciada, ação iniciada ou evento aleatório causado pela visita a um determinado site, etc. será executado como superusuário .
sudo
Quando você chama o sudo , ao executar um comando, apenas esse comando será executado como superusuário .
Você será solicitado a fornecer sua senha antes que o comando seja executado. Portanto, a interação do usuário por você também é necessária .
Tentativas de invocar o sudo também podem ser registradas .
fonte
sudo su
. enquanto o hífen-
é uma bandeira aceito porsu
e trata sua concha como se você estiver conectado como o usuário (é executado um conjunto diferente de arquivos de ambiente ie .bashrc / .profile)Trata-se de gerenciamento de usuário / senha para administradores de sistemas.
Se você tiver vários usuários, todos deverão ter contas separadas e poderão ser rastreados usando essas contas. Isso significa que as pessoas não podem esconder sua identidade. Além disso, se você precisar revogar permissões específicas de um usuário, também não precisará redefinir a senha root. Para dar a todas as pessoas em um ambiente com mais de 2 administradores, a senha root cria um pesadelo quando uma pessoa sai. Você deve não apenas alterá-lo, mas comunicá-lo, etc. Todas essas coisas também precisam acontecer quando um deles tem um laptop roubado ou coisas assim. Uma conta com uma senha por pessoa simplifica a administração. É semelhante à filosofia por trás de por que cada serviço deve ter sua própria conta. Se uma conta estiver comprometida, você não precisará reconfigurar outra dúzia de serviços (como tarefas de backup) para usar uma conta diferente.
Também acho pessoalmente conveniente não ter outra senha para acompanhar, perder e comprometer. No RHEL, desabilito especificamente a conta root depois de configurar o sudo, para que não seja necessário rastreá-la. De vez em quando, um usuário executa o arquivo sudo, mas isso pode ser corrigido no modo de usuário único. (Naturalmente, geralmente é uma máquina de produção.)
NOTA: 'sudo bash' permitirá que você pule a digitação do sudo para cada comando ...
fonte
sudo mc
: DAcho que primeiro, precisamos analisar o que su e sudo realmente são
su - significa Substituto usuário. Você usa isso para alternar para um shell como outro usuário usando a senha do usuário. Comumente usado com raiz. Não requer uma senha quando executada como root.
sudo - permite que um usuário permitido execute um comando especificado como outro usuário. Também comumente usado com raiz. No entanto, isso permite que você gerencie especificamente quais comandos podem ser executados como outro uso. (Por exemplo, você pode dar ao usuário a capacidade de executar um script init.d, mas nada mais.)
Observe que você sempre pode executar
sudo su
ousudo -i
e isso fornecerá um shell raiz. No entanto, nenhuma senha root significa que não é necessário fazer login diretamente como root ... o que significa que ninguém pode invadir esse usuário.EDIT: talvez a resposta que você esteja procurando seja: não ter uma senha root o força a usar
sudo
, o que, por sua vez, o alinha naturalmente àsudo
filosofia que sugere que você imponha maior controle sobre as ações executadas como root.fonte
Além disso, há considerações de log a serem consideradas entre sudo e su. Ser su simplesmente faz tudo como root, sem nenhuma entrada além de uma linha no log de autenticação, dizendo que você se tornou root.
Sudo, por outro lado - sempre é registrado como seu ID de usuário com privilégios escalonados.
fonte
Geralmente, o login como su é mais fácil ao executar tarefas administrativas. No entanto, há pelo menos uma exceção: quando a propriedade do arquivo é importante. Se você precisar que um usuário seja o proprietário de um arquivo, efetue login como esse usuário e use sudo para descarregar ou copiar arquivos. Exemplos simples são arquivos de favoritos e papéis de parede. Se um usuário não possuir o arquivo, os favoritos "Restaurar" do Firefox "Do arquivo" falharão. Quando você define um papel de parede da área de trabalho, ele pode não funcionar, a menos que você seja o proprietário do arquivo. Às vezes, você pode apenas definir privilégios ou ativar como um arquivo executável, mas algumas configurações ou programas falham se você não for o proprietário de um arquivo.
fonte