Daniel Goncalves de Souza (linuxadm@terra.com.br)
Nota do editor: este tutorial é sobre a versão 1.0 do Bastille. Na data da publicação já há versões mais recentes disponíveis, mas muito do conteúdo permanece aplicável.
O Bastille é um pacote de scripts que aumenta ainda mais a segurança do Linux. É solução ideal para servidores, já que trata-se de um software gratuito e muito fácil de ser instalado
Atualizações constantes do sistema operacional, políticas de segurança e criptografia de dados. Estes são, sem dúvida, itens essenciais para manter um servidor seguro. Porém, nem sempre isto é o bastante.
Uma pesquisa realizada recentemente demonstrou que mais de 80% das invasões são originárias de dentro da própria rede. As violações externas, geralmente provocadas por ex-funcionários magoados ou empresas concorrentes, não representam o maior risco. Sendo assim, é altamente recomendável que você dê uma atenção toda especial à segurança antes que algum acidente aconteça.
É aí que entra o Bastille Linux, um conjunto de scripts que funciona como um verdadeiro "cão de guarda" no Linux. Ele está disponível sem limitações no site oficial ou na SANS (www.sans.org), na VA Linux Systems (www.valinux.com) e na University of Maryland Baltimore County (www.umbc.edu), este pacote (versão 1.0) é otimizado para o Linux Red Hat 6.0 e seus derivados, incluindo o Conectiva Linux 4.2 Edição Servidor que também está disponível sites acima citados.
O processo de instalação é simples e não leva mais do que 30 minutos. O programa trabalha através de perguntas ao administrador, de forma que tudo o que você tem a fazer é responder se quer ou não ativar um determinado serviço de segurança. Para rodá-lo é necessário possuir o pacote Perl - Pratical Extraction and Report Language - instalado no Linux. Geralmente ele já vem com o SO, porém, se você não possui-lo, pode baixá-lo do endereço: www.perl.com
Para iniciar a instalação do Bastille é preciso fazer o Download do mesmo Após fazer o download, copie o arquivo bastille-1.0.0.tar no diretório home do root (geralmente /root). É imprescindível que o arquivo seja descompactado neste diretório para que instalação prossiga corretamente. Se você não souber qual é o diretório home do superusuário, utilize o comando cat /etc/passwd | grep root. Aparecerá uma linha mais ou menos como esta:
root:x:0:0:root:/root:/bin/bash
O diretório home fica no sexto campo, considerando o ":" como caracter separador. Após copiar o arquivo para o diretório home do root, descompacte-o com o comando tar -xvf bastille-1.0.0.tar. O diretório run-Bastille será criado. Entre nele e verifique se os arquivos estão OK. Agora você já pode passar para a próxima fase da instalação. Reinicie o computador no modo single user. Para quem não conhece, existem diversas formas de inicializações do Linux, conhecidas por runlevels. Geralmente o sistema operacional é inicializado no modo multi-usuário (runlevel 3). Para iniciar a máquina em single user, utilize o comando init 1 no lilo. O sistema operacional sincronizará os arquivos e reiniciará a máquina em modo monousuário. Quando o prompt aparecer, entre no diretório do Bastille digitando: cd /root/run-Bastille. Para iniciar a execução do script principal digite ./Bastille1.pl. O Bastille Linux é dividido em diversas seções. Cada uma delas é bastante explicativa e não depende das demais para funcionar corretamente.
Veja agora as principais características do Bastille.
Ao iniciar o script aparecerá uma tela sobre o IPCHAINS, que é o firewall do Linux 2.2, substituto do antigo IPFWADM. O IPCHAINS permite que você faça uma filtragem de pacotes através de regras que podem ser alteradas sempre que necessário. Neste momento você pode escolher se deseja utilizar o IPCHAINS ou não. Se desejar instalar o IPCHAINS, outras telas serão apresentadas para a configuração das regras de acesso e seleção das interfaces que estarão sob o IPCHAINS.
Neste módulo você pode atualizar os RPMs de seu sistema. A razão para esta atualização é a segurança, pois programas com versões desatualizadas podem tornar seu Linux um alvo fácil para intrusos. Se você utiliza acesso discado não escolha esta opção devido ao grande tráfego que ela causa.
O Red Hat já aplica permissões de acesso a usuários no momento da instalação. Porém estas regras permitem que os usuários normais possam utilizar ferramentas do administrador. Este módulo revê todas as permissões aos diretórios e arquivos e torna o sistema bem mais seguro. Além disso, você pode desabilitar os comandos mount, umount, ping, dump e dosemu, além dos módulos de impressão.
As ferramentas rlogin, rsh e rcp são inseguras por não necessitarem de autenticação de máquinas da mesma rede. O Bastille também oferece um script para resolver este problema. Sendo assim, é altamente recomendável que você desabilite todas as BSD R-TOOLS.
Em um sistema Linux normal, as senhas são armazenadas no arquivo /etc/passwd. Com o shadow habilitado, as senhas são gravadas no arquivo /etc/shadow. Para máquinas com FTPs, a implementação do shadow é altamente recomendada.
Por questões de segurança, alguns administradores preferem não utilizar a conta do root. Em vez disso, eles dão todas as permissões a um outro usuário com nome comum. Para criar uma conta alternativa do superusuário no Bastille, selecione Y e digite o nome. Uma boa dica é usar um nome bastante comum e uma senha alfanumérica de 6 a 8 caracteres.
Esta opção impede que os usuários alterem o arquivo .rhosts. Este arquivo permite conexões do superusuário aos endereços de IPs declarados. É recomendável selecioná-la, portanto escolha "Y".
Senhas fáceis são o sonho de qualquer hacker que esteja tentando invadir seu sistema. Com esta opção habilitada, o Bastille expira logins que possuem senhas muito fáceis e não permite que novos usuários sejam cadastrados com passwords óbvios. Bastante útil. Selecione "Y".
Neste módulo você cria um usuário normal para que possa utilizar o root apenas quando necessário. Existem diversas situações onde o root pode danificar o filesystem e um usuário normal não. Por este motivo é bom usar um usuário comum e só entrar como root quando se fizer necessário.
O cron é um caminho utilizado pelos hackers para obter acesso ao sistema através de uma conta shell. Sendo assim, desabilite todos os crons e deixe apenas o cron do root. Se necessário, futuramente você pode habilitar o cron de determinado usuário.
Se alguém invadir sua sala na sua ausência e tentar acessar o servidor, você não pode fazer muita coisa. Por isso, esta opção permite que você configure uma senha para o LILO quando usar algum argumento (como por exemplo, single). Pense bem antes de habilitá-la, pois ela pode ser prejudicial se você tiver outro sistema operacional no mesmo computador.
Você pode facilmente reiniciar seu Linux se digitar CTRL+ALT+DEL. Para inibir este tipo de ação, basta desabilitar esta seqüência usando o Bastille Linux.
Ao iniciar o computador no modo single user, o sistema não solicita uma senha. Com esta opção você pode implementar senha no boot em single user, restringindo ainda mais o acesso ao seu servidor.
Esta opção altera os arquivos /etc/inetd.conf e /etc/hosts.allow para a utilização de wrappers, ou seja, faz com que todas as atividades sejam registradas nos arquivos de log do sistema. Além disso, você também pode monitorar seu Linux direto do console e ainda alterar sua tela de login.
Caso você não utilize o Linux para compilar programas, habilite esta opção. Ela fará com que o invasor não seja capaz de criar arquivos de execução, aumentando ainda mais a segurança do sistema operacional. Se você for um programador, esqueça o Compilers.
Alguns ataques conhecidos por DoS (Denial of Service) podem ser evitados selecionando "Y" nesta opção. O Pam Configuration altera o arquivo /etc/security/limits.conf. Apesar de não ser completamente eficaz, esta opção é bastante interessante.
Escolhendo esta opção seu sistema logará todas as atividades nas portas em listen. Em outras palavras, você saberá exatamente o IP de onde está vindo um ataque ou uma tentativa de invasão. É uma boa idéia manter o Loggin habilitado.
O APMD é utilizado para monitorar baterias de computador portáteis. Sendo assim, esqueça esta opção se você estiver usando um desktop.
O Samba e NFS tem sérios problemas de segurança. Se seu servidor não estiver protegido por um firewall, desabilite ambas as opções para evitar surpresas no futuro.
Assim como o APMD, Esta é uma opção exclusiva para portáteis. Desabilite-o.
O serviço DHCP tem o papel de distribuir os endereços de IP automaticamente para qualquer computador que esteja conectado à sua rede. Se você não tem um serviço deste tipo no servidor, desabilite o DHCP para aumentar a segurança.
Por incrível que pareça, um simples servidor de notícias pode ser uma brecha para hackers invadirem seu sistema. Siga o exemplo anterior e desative-o se um news server não estiver funcionando na sua rede.
O SSH é um protocolo semelhante ao Telnet. A principal diferença é que no SSH todos os dados são encriptados. Este pacote do Bastille já oferece um software de acesso SSH. Além destas opções, você pode desabilitar o servidor WEB, SSI, FTP anônimo e outros serviços relacionados com segurança.
Após a instalação, reinicie o Linux, que entrará no RunLevel3. Agora o Bastille já está funcionando e sua máquina está bem mais segura do que antes. Ainda assim, fique sempre atento para encontrar novos recursos que deixem seu Linux ainda mais seguro. Para isso, visite sempre o site da NIC, no endereço http://www.nic.br. Existem também diversas listas de discussão em que você pode relatar e discutir ataques à rede. Entre elas, há a CERT-BR (cert-br@pangeia.com.br) e a Lista de Segurança da Pangéia (seguranca@pangeia.com.br). Porém, lembre-se sempre que não existe sistema 100% seguro. Desta forma, qualquer ação com o intuito de proteger seu servidor é válida, principalmente se sua rede estiver conectada à Internet.
Daniel Goncalves de Souza E-mail daniel@dicaslinux.com.br Number Linux 174753 Linux Counter ICQ 59932868[ << Amavis + Postfix ] [ Freesco >> ]
O Arquivo Histórico do BR-Linux.org mantém no ar (sem alteração, exceto quanto à formatação) notícias, artigos e outros textos publicados originalmente no site na segunda metade da década de 1990 e na primeira década do século XXI, que contam parte considerável a história do Linux e do Open Source no Brasil. Exceto quando indicado em contrário, a autoria dos textos é de Augusto Campos, e os termos de uso podem ser consultados na capa do BR-Linux.org. Considerando seu caráter histórico, é provável que boa parte dos links estejam quebrados, e que as informações deste texto estejam desatualizadas.