No voy a describir las ventajas de utilizar una tecnología como PF sobre IPF (aunque pueden ver este post), sino que solo voy a comentarles como darle soporte a las queues dentro del kernel de FreeBSD, el cual no se encuentra soportado por default dentro del kernel instalado con el sistema operativo, sino que debemos activarlo modificando el archivo de configuración del kernel.
Al intentar levantar las reglas de PF si no hay soporte a ALTQ en el kernel se puede encontrar el siguiente mensaje de error:
No ALTQ support in kernel
ALTQ related functions disabled
Como primer punto, debemos tener las fuentes del kernel instaladas en el equipo, para ello pueden utilizar sysinstall (como describo en la primera parte de este post), y así tenerlas instaladas bajo /usr/src.Una vez instaladas procedemos a modificar el archivo de configuración del kernel, que debería encontrarse en /usr/src/sys/$(uname -m)/conf/GENERIC. Lo que debemos hacer es copiar dicho archivo con un nuevo nombre, por ejemplo FIREWALL:
# cp /usr/src/$(uname -m)/conf/GENERIC /usr/src/$(uname -m)/conf/FIREWALL
Y procedemos a parchear el archivo de configuración FILE, modificando la línea ident y añadiendo las siguientes líneas del tipo options, para dar soporte a los queues y sus diferentes tipos:------ BEGIN ALTQ.patch ------
24c24
< ident GENERIC
---
> ident FIREWALL 78a79,87
> # Altq Support - added by FMDLC
> options ALTQ
> options ALTQ_CBQ
> options ALTQ_RED
> options ALTQ_RIO
> options ALTQ_HFSC
> options ALTQ_CDNR
> options ALTQ_PRIQ
>
------ EOF ALTQ.patch ------
# patch -p0 /usr/src/$(uname -m)/conf/FIREWALL < /tmp/ALTQ.patch
# cd /usr/src
# make buildkernel KERNCONF=FIREWALL
# make installkernel KERNCONF=FIREWALL && reboot
# kldload pf && pfctl -e -Fa -f /etc/pf.conf
rules cleared
nat cleared
2 tables deleted
altq cleared
0 states cleared
source tracking entries cleared
pf: statistics cleared
pf: interface flags reset
pfctl: pf already enabled
No hay comentarios:
Publicar un comentario