#!/bin/sh SR_Title="RestartFirewall by SR-Software.at"; SR_Version="2026-01-28"; . /opt/SR-Software.at/lib/Default; SR_PrintAnsi "${ColorInfo}Saving dynamic NFT-BlockList\n"; for table in ip ip6; do if ! [ -d "/mnt/DataDrive/Config/firewall/${table}" ]; then mkdir -m 0555 "/mnt/DataDrive/Config/firewall/${table}"; fi; SR_PrintAnsi "${ColorInfo}[${table}]\n"; for i in $(nft list sets table "${table}" "_${table}_" | grep set | cut -d " " -f 2;); do SR_PrintAnsi "${ColorReset} ${i} to ${ColorFileName} /mnt/DataDrive/Config/firewall/${table}/${i}.dynamiclist\n"; nft list set "${table}" "_${table}_" "${i}" > "/mnt/DataDrive/Config/firewall/${table}/${i}.dynamiclist"; chmod 0444 "/mnt/DataDrive/Config/firewall/"*"/"*; done; done; #if [ -d "/mnt/DataDrive/Config/firewall/ipv6" ]; then # SR_PrintAnsi "${ColorInfo}[IPv6]\n"; # for i in $(nft list sets table ip6 IPv6 | grep set | cut -d " " -f 2;); do # SR_PrintAnsi "${ColorReset} ${i} to ${ColorFileName} /mnt/DataDrive/Config/firewall/ipv6/${i}.dynamiclist\n"; # nft list set ip6 IPv6 ${i} > "/mnt/DataDrive/Config/firewall/ipv6/${i}.dynamiclist"; # chmod 0444 "/mnt/DataDrive/Config/firewall/ipv6/"*; # done; #fi; SR_PrintAnsi "${ColorInfo}Reload Firewall\n"; if nft -c -f "/etc/Firewall.rules"; then nft flush ruleset; nft -f "/etc/Firewall.rules"; fi;