Conjuntos o sets en nftables
Los Conjuntos o sets permiten predefinir determinados valores en nftables. Esto nos permite definir grupos a efectos de simplificar estos valores.
Tipos soportados
Las especificaciones de los conjuntos son:
type o typeof, es obligatorio y determina el tipo de datos de los elementos del conjunto.
Los tipos de datos admitidos si se utiliza la palabra clave type son:
ipv4_addr: dirección IPv4
ipv6_addr: dirección IPv6.
ether_addr: dirección Ethernet.
inet_proto: tipo de protocolo Inet.
inet_service: servicio de Internet (el puerto tcp, por ejemplo)
mark: tipo de marca de un paquete previamente marcado.
ifname: nombre de la interfaz de red (eth0, eth1...)
Por ejemplo, un serie de IP (por ejemplo nuestras IP de gestión)
set management_ips_ipv4 {
type ipv4_addr
flags interval
elements = {A.B.C.D/26,
F.G.H.I/23,
J.K.L.M/24,
N.O.P.R}
}
En este caso, vemos una etiqueta denominada management_ips_ipv4 que puede ser referenciada en nuestras reglas con un @management_ips_ipv4
Se pueden crear conjuntos con diferentes parámetros, por ejemplo puertos, Vlan id, etc.
set conjunto2 {
type vlan id
elements = { 205, 206, 207, 250 }
}