Estamos seguros que la mayoría de vosotros conocéis iptables, el cortafuegos por excelencia en Linux y que incorpora una alta configurabilidad con unas cuantas líneas de código. Hoy os vamos a hablar de nftables, un proyecto que proporciona filtrado de paquetes y clasificación de paquetes en Linux. nftables pretende reemplazar a iptables, no extender su funcionamiento.
nftables agrega una simple máquina virtual al kernel de Linux, esta máquina virtual ejecutará código para tratar un determinado paquete de la red y tomará la decisión de cómo el paquete debe ser tratado. Las operaciones implementadas en esta máquina virtual han querido que sean muy básicas, para facilitar su uso y reducir lo máximo posible el código. nftables permite obtener datos del paquete, como por ejemplo los metadatos asociados (interfaz de entrada e interfaz de salida por ejemplo). nftables también permite manipular conjuntos de datos como por ejemplo direcciones IP y hacer múltiples operaciones de comparación. Podéis bloquear IP países con nftables fácilmente en Linux.
Las principales ventajas respecto iptables son las siguientes:
- Simplificación de la ABI (interfaz a bajo nivel entre el programa y el sistema operativo) del kernel de Linux.
- Reducción de código duplicado.
- Reporte de errores mejorado
- Más eficiente en la ejecución, almacenamiento y los cambios incrementales en las reglas de filtrado.
Actualmente se usan iptables (IPv4), ip6tables (IPv6), arptables (ARP), y ebtables (Ethernet Bridging), nftables pretende sustituir a todas ellas, unificando la implementación para no tener varias herramientas dependiendo de qué vayamos a filtrar.
Los autores del proyecto nftables son Patrick McHardy y Pablo Neira Ayuso, que actualmente están en el proyecto Netfilter/iptables también.
Tenéis más detalles sobre el proyecto nftables en la página web oficial. Os recomendamos leer nuestro tutorial sobre configuración NFtables en Debian para proteger tu equipo.