quarta-feira, 24 de abril de 2013

Auditoria de segurança pós-instalação do Linux

A primeira coisa que devemos fazer após instalar o Linux em um servidor é uma auditoria de segurança. Desativar usuários desnecessários, verificar processos ativos, permissões em arquivos vitais, entre outros. Há vários roteiros a seguir, e muitas empresas criam seus próprios roteiros.

Recentente conheci uma script que server como um roteiro bem inteligente. O Tiger é um bash script que faz vários testes e gera um breve relatório com sugestões de segurança. Para instalar o Tiger, digite: 

# apt-get install tiger

Sua execução é simples. Para gera um relatório em formato html, digire:

# tiger -H

Depois é só abrir o arquivo gerado em um navegador. Dentre as configurações que o script encontrou em minha máquina, destaco:


  • WARN [pass015w]Login ID sync does not have a valid shell (/bin/sync). (O usuário sync não tem um shell válido). Verifique se todos os usuários de sistema possuem o login /bin/false, ou algo parecido, e se há usuários desnecessário.



  • WARN [acc006w]Login ID mail's home directory (/var/mail) has group `4096' write access. (O diretório home do usuário "mail" permite escrita pelo grupo "4096"). Há alguma permissão a mais em alguma pasta ou arquivo?



  • WARN [root001w]Remote root login allowed in /etc/ssh/sshd_config (É permitido ao root logar vi a ssh). Aconselha-se desabilitar o login do root. Use outro usuário e depois vire root com o comando "su".



  • Performing check of anonymous FTP... (É realmente necessário login anônimo no FTP?)
    
    
    
    # Checking aliases from /etc/aliases. (Esqueceu de criar o alias para que as mensagens de sistema enviadas ao root sejam enviadas para você?)
    
    
    
    # Checking services from /etc/services. (Há algum serviço desnecessário ativo?)
    
    
    
  • FAIL [logf005f]Log file /var/log/wtmp permission should be 644 (O arquivo de log "/var/log/wtmp" pode ser lido por todos). Há algum arquivo de log com mais permissão do que devia?
  • FAIL [misc022f]The umask setting in /etc/profile is insecure (O umask está inseguro). Ao invés de 022, use 026. Consulte "man umask" para entender.
  • # Checking sendmail... (É realmente necessário tem o Sendmail instalado?) Veja se o "nullmailer" pode ser usado no lugar do Sendmail.
    
    
  • FAIL [netw018f]Administrative user jabberd allowed access in /etc/ftpusers (Há algum usuário que não deveria ter permissão de usar o FTP? E as contas de sistema?)
  • Enfim, já deu para ter uma idéia das configurações que você pode mudar para almentar a segurança do servidor. Mas lembre-se que isso é apenas um roteiro inicial. Há muitas outras ferramentas que podem, e devem, ser usada com frequência na auditoria do sistema.