Vou compartilhar aki com vcs um tutuzin sobre esse firewall.
==========
O Firewall
O firewall tem a função de bloquear pacotes ou acessos mal-intencionados ou não requisitados em um sistema. Esses pacotes chegam até o sistema através protocolos UDP/TCP, o firewall é uma simples barreira entre o sistema e a rede.
Um pacote é composto por duas partes:
Header (cabeçalho): nesta área o firewall irá atuar, pois ai contem informações importantes e necessárias para a filtragem, como origem e destino dos pacotes.
Body (corpo): estrutura do pacote.
Com um Firewall você poderá evitar diversos tipos de ataques. Veja abaixo uma lista de ataques que podem ser evitados:
- Ataques DoS
- Bloquear serviços
- Bloquear acessos não-autorizados
- Controlar o acesso em sua rede
- Bloquear qualquer e todo tipo de conexão SYN
->Oque é preciso saber?
Na configuração do firewall com o iptables, é preciso saber quais são as regras a serem utilizadas para rodar o Firewall:
Regras do firewall
-INPUT: É utilizada quando o destino final é a própria máquina firewall.
-OUTPUT: Qualquer pacote gerado pela máquina firewall e que deva sair para a rede será tratado pela regra OUTPUT.
-FORWARD: Qualquer pacote que atravessa o firewall, oriundo de uma máquina e direcionado à outra, será tratado pelo chain Forward.
->Configurando as regras do Firewall
As regras do firewall são compostas da seguinte maneira:
#iptables [-t tabela] [opção] [chain] [dados] -j [ação]
Principais operações de manipulação de chains:
-N Cria uma nova chain
-X Deleta uma chain [vazia]
-P Muda as regras para uma chain padrão
-L Lista as regras de uma chain
-F "Flush" as regras fora da chain
-Z Zera os pacotes e 'byte couters' de todas as regras de uma chain
Existem muitos meios de manipular regras dentro de uma chain:
-A Acrescenta uma nova regra a uma chain
-I Insere uma nova regra em alguma posição em uma chain
-R Substitui uma regra em alguma posição em uma chain
-D Apaga uma regra em alguma posição em uma chain
-D Apaga a primeira regra que comparar em uma chain
->Exemplos de configuração do Firewall
#iptables -A INPUT -P icmp -j DROP
Acima, um exemplo que cria uma regra que nega todos os pacotes ICMP vindos do servidor, em que se encontra o firewall.
#iptables -D INPUT -p icmp -j DROP
Isso apaga a regra setada acima
#iptables -A INPUT -s 200.204.120.0/24 -j DROP
A regra citada faz com que todos os pacotes vindos de qualquer endereço da clase de ip 200.204.120.0
#iptables -A OUTPUT -p icmp -d ! 200.201.120.0/24 -j ACCEPT
Esta regra só permitirá pacotes icmp para máquinas que estejam em qualquer endereço ip, menos no citado acima.
->Configurando o firewall contra ataques
Abaixo, um exemplo de configuração de um firewall contra os ataques mais constantes realizados pelos hackers em servidores da Web. Setando essas configurações, o servidor configurado dificilmente será atacado, veja:
Proteção contra Syn-floods:
Ataques do tipo DoS - um usuário envia um grande núero de pacotes SYN ao servidor, que não suportará a grande carga de pacotes enviados e cairá. Setando a configuração abaixo, isso poderá ser evitado:
#iptables -A FORWARD -p tcp -syn -m limit -limit 1/s -j ACCEPT
Port scanners ocultos
Os famosos port scanners estão à solta. A configuração abaixo impede conexões executadas pelos port scanners:
#iptables -A FORWARD -p tcp -tcp-flags SYN,ACK,FIN,RST RST -m zlimit -limit 1/s -j ACCEPT
Pings
Evita alguns tipos maliciosos de pacotes que podem ser enviados ao seu servidor:
iptables -A FORWARD -p icmp -icmp -icmp-type echo-request -m limit -limit 1/s -j ACCEPT
O iptables gera logs de suas ações e ocorrências de segurança.
Tudo o que ocorre no iptables pode gerar um log, como toda boa configuração em gestão de segurança exige auditoria de logs. Não ficando para trás, segue uma ferramente:
-Entradas de dados podem ser analisadas gramaticalmente combinadas com arquivos de registro. Os analisadores gramaticais, para serem utilizados, podm ser selecionados.
-Gravar dados e informações de tentativas de look-ups em seu servidor.
Onde pegar? http://cert.uni-stut...cts/fwlogwatch/
Opções utilizadas:
#fwlogwatch -f meufwlog -d -N -w|mail admin@seudominio.com.br
-f meufwlog -> Especifica qual o arquivo de log a ser utilizado
-d -> Acrescenta a coluna Destination Port
-N -> Resolve o nome do serviço, de acordo com o arquivo /etc/services
-w -> Gera o relatório em formato HTML e envia para o administrador
-> Utilizando os serviços do Linux
Nesta seção iremos tratar e utilizar os serviços disponiveis no Linux para o monitoramento do sistema. Mas antes iremos declarar como funciona o monitoramento por parte destes serviços.
Logs
-Toda ação efetuada no Linux gera um log. Desde apagar arquivos até executar comandos, tudo é gravado. Por estes logs que o administrador gerenciará o sistema. Se algo estiver errado, com certeza haverá alguma pista nos logs.
SysLog
-Tudo o que ocorre no sistema passa pelo SysLog, pois todo programa pode gerar um log deste tipo. Para configurar o Syslog, de modo que ele grave todas as ocorrências do sistema no disco, basta editar o arquivo /etc/syslog.conf com o seu editor de testos e configurar como descrito abaixo:
*.* /var/log/syslog
Salve o arquivo /etc/syslog.conf e dê um boot no sistema.
Tcpdump
-Tcpdump é uma ferramenta de captura e monitoramento de pacotes, que estando ativo no sistema, irá interceptar e avaliar os pacotes recebidos. Essa é uma ferramenta obrigatória em qualquer sistema além do Firewall. O comando abaixo executa a ferramenta em uma operação de inteceptação sem filtragem, sendo exibido o resultado no terminal:
[root@localhost /]#tcpdump
tcpdump: listening on etch0
Mais informações sobre tcpdump??? http://www.first.org
Revista Geek - Especial Elite
==========
[]´z espero que tenhaum gostado!