viernes, 21 de octubre de 2011

pf fácil (Guía adaptada a FreeBSD)

pf(4) es el cortafuegos que utiliza OpenBSD y fue portado a FreeBSD. He cogido el pequeño tutorial de OpenBSDeros y lo he adaptado para utilizarlo en FreeBSD.

Añadimos pf(4), pflog(4), pfsync(4) y las opciones altq(4) y compilamos un kernel
# mkdir /root/kernels 
# cd /usr/src/sys/amd64/conf 
# cp GENERIC /root/kernels/DISCOVERY 
# echo "options ALTQ_CBQ" >> /root/kernels/DISCOVERY 
# echo "options ALTQ_RED" >> /root/kernels/DISCOVERY 
# echo "options ALTQ_RIO" >> /root/kernels/DISCOVERY 
# echo "options ALTQ_HFSC" >> /root/kernels/DISCOVERY
# echo "options ALTQ_CDNR" >> /root/kernels/DISCOVERY 
# echo "options ALTQ_PRIQ" >> /root/kernels/DISCOVERY 
# echo "device pfsync" >> /root/kernels/DISCOVERY 
# ln -s /root/kernels/DISCOVERY 
# cd /usr/src 
# make buildkernel KERNCONF=DISCOVERY 
# make installkernel KERNCONF=DISCOVERY 
# reboot
Añadimos las siguientes líneas a /etc/rc.conf
pf_enable="YES"
pf_rules="/etc/pf.conf"
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
pfsync_enable="YES"
pfsync_syncdev="bfe0"
Nota:
  • "bfe0" es el dispositivo de red que nosotros queremos controlar. Pon ahí el dispositivo que tu tengas.
Definimos reglas
# echo "block all" > /etc/pf.conf
# echo "pass out on bfe0 proto { tcp, udp, icmp }" keep state >> /etc/pf.conf
# echo "pass on lo to lo" >> /etc/pf.conf
Arrancamos los demonios (daemons)
# /etc/rc.d/pf start
# /etc/rc.d/pflog start
# /etc/rc.d/pfsync start

No hay comentarios:

Publicar un comentario