Ir para o conteúdo principal

Hardening Red Hat/CentOS 7 - Parte 01 (Controlando o acesso de root)

·623 palavras·3 minutos
Rodrigo Lira
Autor
Rodrigo Lira
Linux/BSD SysAdmin

Salve Salve Pessoal!

Antes de começar essa serie de posts, vamos começar entendendo um pouco o que é o hardening?

Segundo a Wikipédia: Hardening é um processo de mapeamento das ameaças, mitigação dos riscos e execução das atividades corretivas, com foco na infraestrutura e objetivo principal de torná-la preparada para enfrentar tentativas de ataque.

https://pt.wikipedia.org/wiki/Hardening

Não vou me aprofundar explicando o que é um hardening, aconselho que vocês pesquisem mais sobre o assunto para entenderem um pouco melhor, o google está cheio de conteúdo explicando ;)

Vamos começar essa serie falando sobre o controle de acesso do usuário root, muitos ainda insistem em deixar o mesmo ativo e até mesmo não sabem como desativa-ló no sistema, ou não sabem onde deixar o login de root habilitado ou desabilitado.

1 - Muitas pessoas não sabem, mas não é necessário a criação de uma senha para usuário root durante a instalação, basta marcar o usuário como administrador, dessa forma o usuário poderá usar o comando sudo para executar as tarefas administrativas.

2 - Mudando o shell do root para /sbin/nologin no arquivo /etc/passwd, nós impedimos ou permitimos o login de root das seguintes formas:

Bloqueia o LoginPermite o Login
console (shell)sudo (permite a execução de comandos que apenas o root poeria executar)
gdm (ambiente gráfico)Clientes FTP
kdm (ambiente gráfico)Clientes de E-mail
xdm (ambiente gráfico)
su (através do comando su e sudo su)
ssh (mesmo que a configuração do ssh permita)
scp (mesmo que a configuração do ssh permita)
sftp (mesmo que a configuração do ssh permita)

OBS: Tenha certeza que o usuário faz parte do grupo wheel, para poder usar o comando sudo e executar as tarefas administrativas.

3 - Também podemos desativar o login de root editando o arquivo /etc/securetty. Este arquivo lista todos os dispositivos aos quais o usuário root pode fazer login. Se o arquivo estiver em branco, o usuário root não poderá fazer login através dos dispositivos de comunicação que estavam listados nesse arquivo.

Bloqueia o LoginPermite o Login
console (shell)sudo (permite a execução de comandos que apenas o root poeria executar)
gdm (ambiente gráfico)su (através do comando su e sudo su)
kdm (ambiente gráfico)ssh (observa se a configuração do ssh permite)
xdm (ambiente gráfico)scp (observa se a configuração do ssh permite)
Qualquer outro serviço que utilize esses dispositivossftp (observa se a configuração do ssh permite)

4 - Podemos desabilitar ou habilitar o acesso do usuário root apenas no serviço do ssh, ou até mesmo permitir o login apenas através de chaves, por padrão o login de root no Red Hat 7 vem desabilitado, desde de que seja criado um usuário no sistema na hora da instalação, caso você não tenha criado nenhum usuário na hora da instalação, deixando apenas o root, o login via ssh do mesmo será permitido.

Para habilitar ou desabilitar o login através do ssh precisamos editar o arquivo de configuração /etc/ssh/sshd_config e editar a seguinte linha:

#PermitRootLogin yes

As opções possíveis de uso são:

PermitRootLogin yes (sem comentário com yes no final, permitimos o login de root)

PermitRootLogin no (sem comentário com no no final, proibimos o login de root)

PermitRootLogin prohibit-password ou without-password (permite o login de root apenas com chave)

Bloqueia o LoginPermite o Login
sshQualquer outro programa que não faça uso do ssh
scp
sftp

Entraremos em mais detalhes sobre o ssh em outro post, dedicado apenas para ele.

5 - Podemos fazer esse bloqueio utilizando o PAM, porém o PAM é bem complexo e vamos deixar para falar dele em posts dedicados a ele, em um outro momento.

Por enquanto é isso ai, espero que tenham gostado do post e dessa nova serie que estamos começando.

Até a próxima :D