#!/bin/bash set -e RULESET="table ip x { set s { type ipv4_addr flags dynamic } chain filter_in_tcp { } chain filter_in_udp { } chain y { update @s { ip saddr limit rate 12/minute burst 30 packets } accept tcp dport vmap { 80 : accept, 81 : accept, 443 : accept, } tcp dport vmap { 8000-8100 : accept, 24000-25000 : accept, } meta l4proto tcp goto filter_in_tcp meta l4proto udp goto filter_in_udp log } }" $NFT -o -f - <<< $RULESET