it-swarm-pt.tech

Protegendo um novo servidor Ubuntu

Digamos que eu tenha uma instalação nova do Ubuntu, que etapas devo tomar para protegê-lo para uso como um servidor de aplicativos Rails?

37
Codebeef

Não consigo pensar em nenhum ajuste específico do Ubuntu, mas aqui estão alguns que se aplicam a todas as distribuições:

  1. Desinstale todos os pacotes desnecessários
  2. Usar autenticação apenas de chave pública no SSH
  3. Desativar logins raiz via SSH (não se aplica ao Ubuntu)
  4. Use as configurações de produção para PHP (recomendado php.ini))
  5. Configure o MySQL para usar apenas soquetes

É claro que esta lista não está completa e você nunca estará completamente seguro, mas abrange todas as explorações I que já vi na vida real.

Além disso, as explorações que eu vi quase sempre foram relacionadas ao código do usuário não seguro, e não à configuração não segura. As configurações padrão em distribuições mínimas de servidores tendem a ser bastante seguras.

25
Can Berk Güder

Uma coisa rápida que eu faço desde o início é instalar DenyHosts . Ele examinará regularmente o/var/log/secure, procurando logins com falha e, após algumas falhas, bloqueie o IP. Defino-o para bloquear após o primeiro não usuário, na segunda tentativa de root e após algumas tentativas para usuários reais (no caso de você errar, mas você deve usar uma chave pública SSH para fazer login).

17
Alister Bulman

O Ubuntu é baseado no Debian e eu achei o Protegendo o Debian Manual muito útil nas distribuições baseadas no Debian para guiá-lo completamente pelo seu sistema e verificar todas as partes. É basicamente uma resposta muito, muito abrangente para sua pergunta.

10
Mike McQuaid

Normalmente, instalo o RKHunter, que verifica rootkits e faz verificações de integridade de vários binários importantes do sistema. Está no repositório padrão e será executado diariamente a partir do cron. Não é perfeito, por segurança, mas é um item de baixo esforço a ser adicionado e fornece uma certa proteção.

5
Tim Howland

Instale a verificação de log, mas ajuste para que você nunca receba mensagens de eventos regulares, caso contrário, você terá o hábito de ignorar os e-mails.

Verifique quais processos estão escutando usando o netstat e verifique se não está executando nada que não precise ser executado. Muitos daemons podem ser configurados apenas para escutar no IP interno (ou localhost) em vez de em todas as interfaces.

4
Mikeage

Faça o que pode sugerir ...

Mapeie o host e desative todos os serviços não essenciais. Use iptables, se necessário.

3
Jauder Ho

Use partições separadas para vários diretórios como /tmp ou /var e monte-os com nosuid, nodev e noexec, se possível.

3
Cristian Ciupitu

Se você estiver perto da Internet com o servidor, instale um sistema de detecção de intrusões como o snort.

3
Timo Geusch

Algumas sugestões de firewall.

Aprenda a usar um firewall e os conceitos de travar corretamente uma caixa. Alterar portas padrão é em grande parte uma coisa inútil; aplicação adequada e configuração de firewall são muito mais importantes.

Ambos estão nos repositórios do Ubuntu:

FireHOL

possui uma documentação fantástica e uma sintaxe muito fácil de aprender. Consegui configurar um gateway/firewall em vinte minutos. A única razão pela qual me afastei disso é que ele não parece ser mantido (última versão há 2 anos). Não significa que não funciona, mas ...

Ferm

é outro. Sintaxe mais semelhante a iptables, mas mesmo conceito. Mais comunidade mantida que o FireHOL, mas demora mais para ser atendida.

Shorewall

é o que eu uso atualmente. Sua documentação é extensa e seu formato de configuração é tabular. Levei cerca de uma hora e meia para entender todos os arquivos necessários (6) para obter uma configuração de firewall/gateway funcionando. É bem poderoso. DICA: As páginas de manual para os diferentes arquivos de configuração são REALMENTE úteis!

Todos esses carregam configurações de firewall de um arquivo de configuração. Muito eficaz, mais fácil de usar do que o iptables, e (na minha opinião) mais fácil de usar e gerenciar do que o ufw.

De outros:

  • Eu recomendo as recomendações para o uso da chave SSH.

  • Configure um IDS.

  • Aprenda sobre o AppArmor. Ele restringe o acesso a arquivos executáveis ​​apenas a diretórios e arquivos especificados. Semelhante ao SELinux no mundo do RHEL. Está instalado e ativado com 'perfis' pré-configurados para muitos programas bem utilizados.

3
Luke has no name

Além de outras sugestões, mencionarei três que são óbvias, mas que talvez valham a pena mencionar por serem completas:

  1. Se você acha que não precisa de um firewall, pense novamente. O ufw é simples, mas projetado para o Ubuntu e baseado em iptables
  2. Atualize os pacotes: no mínimo, aplique todos os patches de segurança
  3. Documente o que você fez para proteger o servidor e por quê. Inclua a configuração de processos (automatizados) para monitorar logs, testar a configuração e relatar atualizações de segurança necessárias.
2
mas