Usando o PF - Packet Filter

Neste artigo venho mostrar como é fácil usar o firewall PF, do OpenBSD, que também pode ser usado no FreeBSD (no pfsense, por exemplo) e no NetBSD. O packet filter é considerado por muitos o firewall mais seguro. Veremos o por quê.

[ Hits: 53.576 ]

Por: C00L3R_ em 20/08/2008 | Blog: https://github.com/CoolerVoid


Exemplo 3: configuração usada no meu servidor



# By C00L3R , Tony Baiacú
# Usava esta config no meu servidor
# Macro da interface de rede usada pelo Packet Filter
# ifconfig para ver a interface a ser usada pelo PF

placa = "bge0"
remote = "192.168.0.117"
remote2 = "192.168.0.154"

set optimization normal
set require-order yes
# Engana ataques fingerprint. Muito bom
# Mande um scan com nmap para ver
# nmap -O ip_do_server
set fingerprints "/etc/pf.os"
# Analise o arquivo "pf.os" para entender
set skip on lo0

# Quebra pacotes mal formados
scrub all reassemble tcp
scrub out all no-df max-mss 1492 random-id
antispoof for $placa inet

# block scans com nmap
block in quick proto tcp flags FUP/WEUAPRSF
block in quick proto tcp flags WEUAPRSF/WEUAPRSF
block in quick proto tcp flags SRAFU/WEUAPRSF
block in quick proto tcp flags /WEUAPRSF
block in quick proto tcp flags SR/SR
block in quick proto tcp flags SF/SF
block drop in quick on $placa from any os { NMAP }

# Bloqueia tudo
block all
# Libera porta SSH só para uma máquina da rede e a porta do MySQL
pass in log quick on $placa inet proto tcp from $remote to any port 22 flags S/SA
pass in log quick on $placa inet proto tcp from $remote to any port 60477 flags S/SA
pass in log quick on $placa inet proto tcp from $remote to any port 3306 flags S/SA
pass in log quick on $placa inet proto tcp from $remote2 to any port 60477 flags S/SA
# Libera HTTP para IP de dentro e de fora da rede
pass in quick on $placa inet proto tcp to $placa port { http } flags S/SA keep state
pass in quick on $placa inet proto tcp to $placa port { domain } flags S/SA keep state

Página anterior     Próxima página

Páginas do artigo
   1. introdução ao PF
   2. Exemplo 1: VPN
   3. Exemplo 2: Gateway
   4. Logs do PF
   5. Exemplo 3: configuração usada no meu servidor
   6. Conclusão
Outros artigos deste autor

Bind: Explorando e evitando falhas

BSD Sockets em linguagem C

Apache + PHP + MySQL + ftpd no OpenBSD

Banco de dados orientados a documentos

Módulos de Web no Perl

Leitura recomendada

Script de firewall e análise de log

Hotspot - Atualização - CoovaChilli

Servidor de internet a rádio no Debian

Automatizando Firewall com IDS Snort e SnortSam

Controle de banda com Slackware 10 + CBQ + Iptables + DHCP

  
Comentários
[1] Comentário enviado por Thiago Madella em 20/08/2008 - 11:09h

Otimo artigo companheiro...parabéns.

[2] Comentário enviado por joaocdc em 20/08/2008 - 16:33h

Exelente artigo, Parabéns.

[3] Comentário enviado por drakula em 08/09/2008 - 22:12h

Parabens pelo artigo muito bom

[4] Comentário enviado por Junior Maia em 04/03/2009 - 10:03h

Amigo... li os seus artigos aqui VOL e achei "duca".... mas como sou iniciante nesse mundo BSD, tenho algumas dúvidas e gostaria q vc me ajudasse dentro do possivel!

1) O que são FLAGS? Sinceramente não entendi!
2) Scrub.. no manual diz que ele normaliza os pacotes mal formados, como assim?
3) Qual a "vantagem e desvantagem" dos pacotes passarem pelo loopback?

Aguardo anciosamente as suas respostas!

Atenciosamente... Júnior Maia!!!

[5] Comentário enviado por removido em 08/07/2009 - 08:31h

Bom dia.

Será que você poderia mandar documentações, tutoriais, enfim, toda documentação necessária para inicialização de trabalho com a ferramenta. Acabo de ser contratado por uma empresa que utiliza o PFSense e gostaria do máximo de informações possiveis.

Grande abraço.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts