Packet Filter en FreeBSD
14.dic 2006
Envía un trackback
Desde hace algún tiempo (Julio del 2003) el software de filtrado de paquetes más eficiente de todos los que conozco (olé la imparcialidad) ha sido portado a FreeBSD. Activarlo, dependiendo de la versión instalada, puede resultar no tan obvio como se desea.
Configurando kernel
En FreeBSD 6.2 es necesaria una recompilación de kernel para activar pf, con lo que debemos configurarlo primero. Copiamos el kernel activo (podemos mirar cual es con un uname -a) en el nuevo:# cd /usr/src/sys/i368/conf/ # cp GENERIC MYKERNELY editamos MYKERNEL con nuestro editor favorito, agregando las siguientes opciones:
# PF
device pf
device pflog
device pfsync
# ALTQ
options ALTQ
options ALTQ_CBQ # Class Bases Queuing (CBQ)
options ALTQ_RED # Random Early Detection (RED)
options ALTQ_RIO # RED In/Out
options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC)
options ALTQ_PRIQ # Priority Queuing (PRIQ)
options ALTQ_NOPCC # Required for SMP build
Aprovechamos para habilitar también ALTQ (gestor de colas) por si algún día hiciera falta.
Compilando kernel
Una vez configurado toca compilar, dependiendo del procesador utilizado los tiempos cambiarán notablemente. Si tienes una máquina antigua no te desesperes:# config MYKERNEL # cd ../compile/MYKERNEL # time make depend real 0m39.811s user 0m27.356s sys 0m6.668s # time make real 11m45.862s user 10m26.758s sys 0m43.905s # time make install real 0m29.533s user 0m5.498s sys 0m1.832s
Activando pf
El siguiente paso antes de reiniciar la máquina con el nuevo kernel es la activación de pf al inicio, para ello como siempre, tocamos rc.conf:
pf_enable="YES" # Enable PF (load module if required)
pf_rules="/etc/pf.conf" # rules definition file for pf
pf_flags="" # additional flags for pfctl startup
pflog_enable="YES" # start pflogd(8)
pflog_logfile="/var/log/pflog" # where pflogd should store the logfile
pflog_flags="" # additional flags for pflogd startup
gateway_enable="YES" # if NAT or forwarding is active
Una vez reiniciado el equipo tendremos funcionando el sistema de filtrado de paquetes, solo queda configurar las reglas en pf.conf(5)y familiarizarse con pfctl(8).
Escribe tu comentario
Intenta que tu comentario sea interesante y con información relevante al tema de la entrada. BBCodes disponibles:
[url=http://direccion]texto[/url], negrita: [b]texto[/b],
itálica: [i]texto[/i], subrayada: [u]texto[/u].
Para mencionar o citar a alguien (quote): [cita]texto[/cita]


