pergunta sobre firewall linux

pergunta sobre firewall linux

Tenho algumas perguntas genéricas sobre firewalls e pensei que a comunidade aqui poderia me ajudar.

1) Instalei recentemente os barebones do servidor Ubuntu. Verifiquei se há portas abertas, nenhuma estava aberta, o que foi ótimo. Isso é porque havia um firewall instalado ou porque não havia aplicativos instalados?

2) Instalei alguns aplicativos (Apache, postgres, ssh, Java app e alguns). Entre essas, acabei abrindo algumas portas (~10). Agora tenho uma lista de todas as portas que preciso abrir. Então, como faço para protegê-los? [Esta é a pergunta certa a se fazer? o processo é assim, Instalar Firewall -> Permitir as portas necessárias -> negar descanso usando regras de IPtables]

Isso vai ser aberto para a internet. Hospedagem de sites de comércio eletrônico de baixo tráfego.

3) Qual você acha que é a maneira mais fácil de quase proteger o servidor, [baixa sobrecarga/simplicidade de manutenção. Algum "software" de código aberto que possa facilitar minha vida?]

4) Finalmente, das referidas portas abertas [2], tenho 2 portas que preciso fechar porque são portas telnet. Posso fechar essas portas sem instalar um "firewall"

Obrigado a todos pela ajuda e Feliz Natal!!!!!!!

Responder1

  1. Você não tinha portas de escuta porque não tinha processos de escuta. O Ubuntu faz um bom trabalho nesse aspecto em uma instalação padrão. Os processos que requerem uma porta de escuta geralmente usam localhost (127.0.0.1) por padrão. Isso impede o acesso direto de sistemas remotos.
  2. Espera-se que aplicativos como servidor Apache e SSH escutem conexões de servidores remotos. O Apache possui suas próprias listas de ACL para proteger o acesso. O servidor SSH pode ser protegido usando os arquivos hosts.allow e hosts.deny além de sua configuração. Aplicativos MySQL e PostressSQL devem escutar no host local por padrão. Se precisar de acesso de outro sistema, você precisará alterar a configuração do ouvinte. Geralmente terão um ou mais mecanismos para garantir o acesso.
  3. Use hosts.allow/hosts.deny para aplicativos que suportam esse mecanismo. Usando um construtor de firewall comoParede Costeiraconstruir um firewall seguro ajuda. Compreender os mecanismos de segurança próprios de cada aplicativo ajuda a aprofundar seus mecanismos. Uma ferramenta como o logcheck pode monitorar seus logs e notificá-lo sobre alguns eventos que você pode precisar verificar. Eu uso o Munin para monitorar meus sistemas e, em alguns casos, alertar-me sobre problemas. Isso está substituindo o uso anterior de Nagion e MRTG para monitorar e representar graficamente o uso do sistema.
  4. Se você tiver o telnet em execução, poderá fechar as portas interrompendo o serviço. A menos que você realmente precise dele, remova o pacote telnet e substitua-o pelo ssh-server. A maioria dos servidores telnet suporta o uso de hosts.allow/hosts.deny para restringir o acesso. Isto também se aplica a aplicativos executados em inetd ou xinetd. MySQL e PostgreSQL devem escutar apenas em 127.0.0.1, que é seguro contra acesso direto de fora do seu servidor.

Minha configuração usual do firewall Shorewall começa com o exemplo de configuração para o número de interfaces no servidor (ou zonas de acesso: NET, LAN, DMZ). Observe que se as zonas compartilharem interfaces e/ou roteadores, elas poderão ser menos seguras do que poderiam ser. Então eu ajusto as regras conforme necessário.

Costumo desabilitar quaisquer políticas de acesso de saída padrão. Estas são substituídas por regras que permitem acesso de saída nas portas necessárias (DNS, NTP, SMTP, etc.).

Responder2

1.) você sempre pode verificar isso comtabelas de ip -Lesta saída significa nenhum firewall:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

2.) sim, apenas permita as portas na cadeia de entrada em sua interface (ou seja, eth0) e descarte todo o resto.

você também deve fazer outras coisas como:

  • NULO
  • Natal (SYN+FIN+ACK)
  • SYN-FIN

e não se esqueça de definir as opções importantes do sysctl

3.) maneiras fáceis:

  • firewall:http://easyfwgen.morizot.net/gen/
  • ferramenta de análise de log, que informa sobre ameaças
  • outras ferramentas que fazem verificações proativas (ou seja, fail2ban)
  • ferramentas de monitoramento, que informam sobre o estado de suas máquinas (ou seja, zabbix, nagios)

4.) digite o seguinte comando

root@host:~# netstat -npl | grep LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1417/telnet

o número interessante é o 1417 (número do processo) após o telnet. mate-o commatar -9 1417

mas tome cuidado com o que você mata!

se você não quiser eliminá-lo, basta usar o firewall para impedir que esta porta seja usada ...

Responder3

1) Você pode (verifique você mesmo) instalar o ssh e tentar ver se em outro computador com um nmap mostra a porta 22 como aberta. 2) Esta é uma grande resposta. Você tem que saber exatamente que tipo de proteção deseja dar aos seus serviços... 3) ? 4) feche o serviço inetd

informação relacionada