Capítulo 21. Controlando Acesso aos Serviços

Manter a segurança em seu sistema é extremamente importante. Uma forma de lidar com a segurança de seu sistema é gerenciar cuidadosamente o acesso aos serviços do sistema. Seu sistema pode precisar de acesso aberto a determinados serviços (por exemplo: httpd se você estiver rodando um servidor Web). No entanto, se você não precisa oferecer um serviço, deve desligá-lo para minimizar sua exposição a possíveis exploits.

Há diversos métodos diferentes para gerenciar o acesso aos serviços do sistema. Decida qual método utilizar baseado no serviço, na configuração de seu sistema e no seu nível de conhecimento do Linux.

A maneira mais fácil de proibir acesso a um serviço é desligá-lo. Tanto os serviços gerenciados pelo xinetd (abordados posteriormente nesta seção) quanto os serviços da hierarquia /etc/rc.d/init.d (também conhecidos como serviços SysV) podem ser configurados para iniciar e parar usando três aplicações diferentes:

Talvez você ache que estas ferramentas sejam mais fácies de usar do que as alternativas — editar manualmente as numerosas ligações simbólicas localizadas nos diretórios abaixo de /etc/rc.d ou editar os arquivos de configuração xinetd em /etc/xinetd.d.

Outra maneira de gerenciar o acesso aos serviços do sistema é usar o iptables para configurar um firewall IP. Se você for um novo usuário do Linunx, por favor note que o iptables talvez não seja a melhor solução para você. Configurar o iptables pode ser complicado e é melhor resolvido por administradores de sistemas Linux experientes.

Por outro lado, o benefício de utilizar o iptables é sua flexibilidade. Por exemplo: se você precisa de uma solução personalizada com a possibilidade de determinadas máquinas acessarem determinados serviços, o iptables pode oferecer isso. Consulte o Guia de Referência do Red Hat Enterprise Linux e o Guia de Segurança do Red Hat Enterprise Linux para mais informações sobre o iptables.

Alternativamente, se você procura uma ferramenta para definir regras gerais de acesso para seu computador pessoal e/ou se você for um novo usuário do Linux, experimente a Ferramenta de Configuração do Nível de Segurança (redhat-config-securitylevel). Ela permite selecionar o nível de segurança de seu sistema, similar à tela da Configuração do Firewall no programa de instalação.

Consulte o Capítulo 20 para mais informações. Se você precisar de regras de firewall mais específicas, consulte o capítulo iptables no Guia de Referência do Red Hat Enterprise Linux.

21.1. Níveis de Execução (Runlevels)

Antes de você configurar o acesso aos serviços, deve entender os níveis de execução do Linux. Um nível de execução é um estado ou um modo, que é definido pelos serviços listados no diretório /etc/rc.d/rc<x>.d, onde <x> é o número do nível de execução.

Os níveis de execução são os seguintes:

Se você usar uma tela texto de login, está operando no nível de execução 3. Se você usar uma tela gráfica de login, está operando no nível de execução 5.

O nível de execução default pode ser alterado modificando o arquivo /etc/inittab, que contém uma linha próxima ao topo parecida com a seguinte:

id:5:initdefault:

Altere o número nesta linha para o nível de execução desejado. A alteração não terá efeito até que você reinicialize o sistema.

Para alterar o nível de execução imediatamente, use o comando telinit seguido do número do nível de execução. Você deve estar como root para usar este comando. O comando telinit não altera o arquivo /etc/inittab, somente o nível de execução rodando no momento. Quando o sistema for reinicializado, o nível de execução será aquele especificado em /etc/inittab.