30 lines
890 B
Makefile
30 lines
890 B
Makefile
SRC = ./
|
|
NFT = nftables.conf
|
|
|
|
all:
|
|
$(info run make makeconf to unify .nft files into nftables.conf)
|
|
$(info run make install to install nftables.conf in /etc and set as current ruleset)
|
|
$(info run make uninstall to replace /etc/nftables.conf with backup and set as current ruleset)
|
|
|
|
makeconf:
|
|
$(info running makeconf.sh)
|
|
$(SRC)makeconf.sh
|
|
|
|
test: makeconf
|
|
$(info checking configuration for errors and possible optimizations)
|
|
nft -c -o -f $(SRC)$(NFT)
|
|
|
|
install: test
|
|
$(info backing up current nftables rules)
|
|
cp /etc/nftables.conf $(SRC)backup.conf || nft list ruleset > $(SRC)backup.conf
|
|
$(info installing new nftables rules)
|
|
cp $(SRC)$(NFT) /etc/nftables.conf
|
|
$(info reloading nftables rules)
|
|
nft -f /etc/nftables.conf
|
|
|
|
uninstall:
|
|
$(info replacing nftables.conf with backup)
|
|
cp $(SRC)backup.conf /etc/nftables.conf
|
|
$(info reloading nftables rules)
|
|
nft -f /etc/nftables.conf
|