Ninguém. Faça com que usem sudo
para que todos os comandos de nível de raiz sejam registrados e atribuíveis a uma pessoa específica.
Estou trabalhando em um aplicativo da web que manipula alguns dados confidenciais. Estamos ficando bastante rígidos em termos de segurança e estabelecendo políticas para bloquear o acesso a máquinas e registrar tudo para fins de auditoria técnica.
A pergunta que continuamos voltando é a seguinte: quem fica enraizado?
Nossas instâncias de servidor terão um usuário root. Esse usuário root terá uma senha. Quem deve ter acesso a isso? É possível / desejável ter uma máquina onde noone possa ter acesso root?
Eu apreciaria quaisquer pensamentos que você tenha sobre o assunto.
Ninguém. Faça com que usem sudo
para que todos os comandos de nível de raiz sejam registrados e atribuíveis a uma pessoa específica.
Ninguém exceto talvez um administrador de hardware receba uma senha de root! A senha do root deve ser usada apenas no console, não via SSH ou outros serviços.
Use grupos para definir o acesso a diferentes conjuntos de programas com intensaledges escalados usando sudo
. Por exemplo, o grupo wheel é tipicamente para pessoas que recebem root privs, mas tudo é registrado como seu usuário. Se as pessoas não precisarem de privs root completos, mas apenas alguns comandos como outro usuário, faça outro grupo.
Se você usar e implantar o selinux, é possível remover a típica conta "tudo que vê e sabe tudo" que é a configuração raiz normal e convertê-la em uma conta com maior segurança.
Minha opinião é que as pessoas não devem executar comandos que exijam permissões de root, exceto, é claro, quando estiverem logados como root.
Eu recomendaria o uso de su (alterna para usuário root) em vez de sudo (temporariamente gera permissões para o nível raiz de um comando) por esse motivo. Se eles precisarem de permissão de root, faça-os mudar para o usuário root.
Minha pergunta é: o que seus usuários estão fazendo que acham que precisam de root?