Melhorando a segurança de servidores GNU/Linux (Parte 1)
Você acredita que para que possamos configurar um servidor, precisamos somente configurar os serviços e o sistema e já colocar o "menino para pular"? Se você pensa assim, está muito enganado! Servidores que vão para produção precisam passar por um processo de mapeamento das falhas e melhoria da segurança. Este procedimento chama-se Hardening.
Introdução e configurações do sistema
Neste primeiro artigo, iremos abordar a melhoria da segurança do servidor limitando acesso ao usuário root, melhorando a inicialização, corrigindo algumas configurações do servidor e configurando uma mensagem personalizada para os usuários. Vamos lá!
O sistema utilizado para a elaboração deste artigo foi o CentOS 6.3, acredito que todos os procedimentos contidos neste artigo podem ser aplicados a sistemas como Debian, Ubuntu e outros.
Mas, caso você tenha instalado um ambiente gráfico, a melhor coisa a fazer é com que o sistema não inicie o modo gráfico na inicialização, ou seja, vamos trocar o runlevel que o sistema irá iniciar.
Para isso, altere a seguinte linha:
Para:
Por padrão, este modo single pode ser acessado sem a senha de root, o que é um risco, pois o usuário teria acesso completo a todos os arquivos de configuração do sistema.
Para fazer com que o sistema passe a pedir senha no modo single, você deve editar o arquivo de configuração localizado em /etc/sysconfig/init:
# vi /etc/sysconfig/init
Altere a linha:
Para:
Feita esta configuração, sempre que o servidor iniciar em modo single, será solicitado a senha de usuário root, caso contrário, você deverá pressionar CTRL+D para sair do modo single.
Para evitar que isso aconteça, podemos alterar o arquivo /etc/init/control-alt-delete.conf:
# vi /etc/init/control-alt-delete.conf
Comente a linha:
Deixe-a assim:
Com esta linha comentada, seu sistema ignora a sequência de teclas e passará a não reinicializar o sistema.
O sistema utilizado para a elaboração deste artigo foi o CentOS 6.3, acredito que todos os procedimentos contidos neste artigo podem ser aplicados a sistemas como Debian, Ubuntu e outros.
Melhorando nosso inittab
Vamos começar pelo ambiente gráfico, o mesmo não poderia sequer ser instalado pelo fato de elevar muito a exposição do servidor a novas ameaças. Vale lembrar que a configuração de um servidor seguro começa pela sua instalação, escolhendo bem todos os pacotes que serão instalados.Mas, caso você tenha instalado um ambiente gráfico, a melhor coisa a fazer é com que o sistema não inicie o modo gráfico na inicialização, ou seja, vamos trocar o runlevel que o sistema irá iniciar.
Para isso, altere a seguinte linha:
id:5:initdefault:
Para:
id:3:initdefault:
Habilitando a senha no Modo Single
Modo Single é o modo de manutenção do sistema GNU/Linux, ele é o runlevel de numero 1. No modo single, o sistema carrega somente os processos que são essenciais para ele, ou seja, nada além irá funcionar.Por padrão, este modo single pode ser acessado sem a senha de root, o que é um risco, pois o usuário teria acesso completo a todos os arquivos de configuração do sistema.
Para fazer com que o sistema passe a pedir senha no modo single, você deve editar o arquivo de configuração localizado em /etc/sysconfig/init:
# vi /etc/sysconfig/init
Altere a linha:
SINGLE=/sbin/sushell
Para:
SINGLE=/sbin/sulogin
Feita esta configuração, sempre que o servidor iniciar em modo single, será solicitado a senha de usuário root, caso contrário, você deverá pressionar CTRL+D para sair do modo single.
Desabilitando o desligamento por CTRL+ALT+DEL
Por padrão, o sistema GNU/Linux pode ser desligado apertando a sequência de teclas CTRL+ALT+DEL, e isso é um grande problema, pois qualquer pessoa com acesso físico ao servidor poderia desligar o sistema.Para evitar que isso aconteça, podemos alterar o arquivo /etc/init/control-alt-delete.conf:
# vi /etc/init/control-alt-delete.conf
Comente a linha:
exec /sbin/shutdown -r now "Control-Alt-Delete pressed"
Deixe-a assim:
# exec /sbin/shutdown -r now "Control-Alt-Delete pressed"
Com esta linha comentada, seu sistema ignora a sequência de teclas e passará a não reinicializar o sistema.
São configurações que administradores de nível intermediário e avançado sabem, mas que muitos ignoram.
bom trabalho.