Falando sobre o Ubuntu 10.04, server edition, que ferramentas / práticas você recomendaria para proteger o servidor?
Isso é um pouco inespecífico, mas em geral você precisará
Execute um firewall como iptables ou ufw para gerenciar a conexão para abrir portas.
Instale apenas o software necessário.
Execute apenas serviços essenciais para a execução do servidor.
Mantenha esse software atualizado com todos os patches de segurança.
Configure novos usuários com o mínimo de privilégios necessários para desempenhar suas funções.
Execute denyhosts ou fail2ban para verificar ataques de força bruta.
Execute o logwatch para enviar a você qualquer anomalia nos arquivos de log.
Verifique seus logs frequentemente para atividades suspeitas.
Use o sudo sempre e use senhas fortes.
Desative as cifras de força fraca e média no SSL para apache, exim, proftpd, dovecot etc.
Defina os serviços para apenas ouvir localhost (quando apropriado).
Execute o chkrootkit diariamente.
Execute o clamscan quantas vezes for necessário para verificar se há vírus no Windows (se apropriado).
Seja vigilante, conheça seu servidor, saiba o que ele deveria estar fazendo e o que ele não deveria estar fazendo.
Você só manterá as coisas seguras, verificando e protegendo constantemente. Se você não sabe o que algo faz ou como ou por quê, ou algo parece suspeito, peça conselhos a outras pessoas.
Resposta incrível de Richard Holloway. Se você estiver procurando por um guia passo a passo específico, confira o seguinte guia de 2 partes da biblioteca Slicehost.
Eu o uso em quase todos os lugares quando preciso configurar uma instância do Ubuntu Server. Tenho certeza que você adoraria.
Outra grande fonte é a Biblioteca Linode em http://library.linode.com/
Verifique os artigos nos dois lugares. Cargas de informações estão disponíveis lá e você estará munido de conhecimentos suficientes para lidar bem com o servidor.
PS: De nenhuma maneira, uma biblioteca pode substituir os recursos de intuição, insight e tomada de decisão de um ótimo administrador de sistemas.
Algo que não vejo mencionado é "use 64bit". Isso garante que você tenha proteções de memória NX, entre outras coisas.
fonte
Três coisas que costumo recomendar são:
Monte todas as áreas graváveis globalmente (/ tmp, / var / tmp) como 'noexec': Isso geralmente é seguro sem peculiaridades, exceto (por escrito), a menos que você opte por atualizar seu sistema. Veja o bug # 572723 no Launchpad para mais detalhes.
Não instale nenhum compilador ou montador, a menos que seja absolutamente necessário: acho isso auto-explicativo.
Introdução ao AppArmor: O AppArmor pode ser visto como uma alternativa ao SELinux, e é um ótimo recurso do Ubuntu para colocar aplicativos em execução em sandbox para garantir que eles não tenham mais acesso do que o necessário. Eu recomendo revisar o guia nos fóruns, se você estiver interessado. http://ubuntuforums.org/showthread.php?t=1008906
fonte
fonte
Se eu fosse você, examinaria o iptables (firewall padrão do Linux) e veria quais serviços estão sendo executados. Basicamente, você deseja executar apenas os serviços de que precisa, ou seja, não executa um servidor da Web quando deseja apenas configurar um servidor de email e ter apenas as portas abertas necessárias. Tudo o resto deve ser trancado!
Guia para iptables: https://help.ubuntu.com/community/IptablesHowTo
Espero que isto ajude!
ps Se você precisar de mais ajuda, entre no irc e acesse o canal # ubuntu-server no freenode
fonte
Para firewalls, você pode dar uma olhada no Firestarter ou no ufw com gufw .
fonte