Security - Runing Daemon, programa como root ou usuário vs sudo su

1

Eu tenho algumas dúvidas sobre a segurança do Linux:

  • Executar um processo como root é um grande erro (o root tem muita energia + um programa obtém permissões demais no sistema). Eu sempre executei processos como um usuário (eu usei apenas chmod , chown para ter acesso a arquivos especiais e poder executá-los). Isso é melhor do que executar um processo / daemon / programa como root?

  • E se eu usar sudo su e, em seguida, iniciar um processo, é igual à segurança do processo em execução como usuário? Ou, em vez disso, é o mesmo que executar um processo como root?

  • Devo instalar software como root? Ou talvez como um usuário comum?
  • E quanto à edição de arquivos de configuração, devo fazer isso como root ou talvez, como fiz antes, com sudo su da minha conta de usuário comum sem privilégios?
por Doniu54 15.10.2015 / 21:26

1 resposta

0

A idéia geral é que um processo peça (e tenha) a menor quantidade de privilégio de que ele precisa para realizar seu trabalho. Exemplos disso são servidores da Web que se ligam à porta 80 (que pode precisar de root), mas depois mudam para um usuário do sistema não privilegiado posteriormente.

Você deve ter notado que "pode precisar de root" e não "must have root". Tradicionalmente, os processos teriam que iniciar como root para se ligarem a uma porta menor que 1024 e, em seguida, mudariam posteriormente. Agora, com recursos, se configurado corretamente, você não precisa fazer isso. CAP_NET_BIND_SERVICE permite ligar a uma porta inferior a 1024 não como raiz.

Esta é outra iteração de "fazer o mesmo com menos". Por que executar como root com ALL o acesso que dá quando você precisa apenas de um aspecto que é o binding ports. Os recursos fornecem essa granularidade.

A diferença entre iniciar o daemon como root ou como um usuário diferente e sudo como root é menor e geralmente dará os mesmos resultados.

Para edição, trabalho administrativo, etc. a maioria das pessoas prefere ser um usuário "padrão" e sudo para essas tarefas. Tornar impossível o login como root fecha uma possível porta insegura.

O software geralmente é instalado como root. Por quê? Porque se o seu servidor web pode modificar seus binários ou arquivos de configuração (por que sim o apache, eu acho que seu diretório publicamente acessível deve ser / etc) é uma má idéia.

    
por 26.12.2015 / 11:29