Skip to content

Commit 75de7e4

Browse files
authored
Improve generate and loading firewall rules
1 parent f5799c8 commit 75de7e4

File tree

1 file changed

+20
-25
lines changed

1 file changed

+20
-25
lines changed

bin/v-stop-firewall

Lines changed: 20 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -76,33 +76,28 @@ if [ -d "/etc/sysconfig" ]; then
7676
fi
7777
else
7878
/sbin/iptables-save > /etc/iptables.rules
79+
routable="/usr/lib/networkd-dispatcher/routable.d/10-hestia-iptables"
80+
preup="/etc/network/if-pre-up.d/hestia-iptables"
81+
# Recreate the Hestia iptables rules loading script
82+
rm -f $routable $preup
7983
if dpkg-query -W -f'${Status}' "netplan*" 2>/dev/null | grep -q "ok installed" && [ -d /etc/netplan ] && [ -n "$(ls -A /etc/netplan 2>/dev/null)" ]; then
80-
preup="/usr/lib/networkd-dispatcher/routable.d/10-hestia-iptables"
81-
if [ ! -e "$preup" ]; then
82-
IFS='%'
83-
echo '#!/bin/sh' > $preup
84-
echo '' >> $preup
85-
echo 'if [ "$IFACE" = "'$(ip route list | awk '/default .+/ {print $5}' | uniq)'" ]; then' >> $preup
86-
[ -x "$(which ipset)" ] && echo " ${HESTIA}/bin/v-update-firewall-ipset" >> $preup
87-
echo ' sleep 3' >> $preup
88-
echo ' /sbin/iptables-restore < /etc/iptables.rules' >> $preup
89-
echo 'fi' >> $preup
90-
echo "exit 0" >> $preup
91-
chmod +x $preup
92-
fi
84+
echo '#!/bin/sh' > $routable
85+
echo '' >> $routable
86+
echo 'if [ "$IFACE" = "'$(ip route list | awk '/default .+/ {print $5}' | uniq)'" ]; then' >> $routable
87+
echo ' /sbin/iptables-restore < /etc/iptables.rules' >> $routable
88+
echo 'fi' >> $routable
89+
echo '' >> $routable
90+
echo "exit 0" >> $routable
91+
chmod +x $routable
9392
else
94-
preup="/etc/network/if-pre-up.d/hestia-iptables"
95-
if [ ! -e "$preup" ]; then
96-
IFS='%'
97-
echo '#!/bin/sh' > $preup
98-
echo '' >> $preup
99-
echo 'if [ "$IFACE" = "'$(ip route list | awk '/default .+/ {print $5}' | uniq)'" ]; then' >> $preup
100-
[ -x "$(which ipset)" ] && echo " ${HESTIA}/bin/v-update-firewall-ipset" >> $preup
101-
echo ' /sbin/iptables-restore < /etc/iptables.rules' >> $preup
102-
echo 'fi' >> $preup
103-
echo "exit 0" >> $preup
104-
chmod +x $preup
105-
fi
93+
echo '#!/bin/sh' > $preup
94+
echo '' >> $preup
95+
echo 'if [ "$IFACE" = "'$(ip route list | awk '/default .+/ {print $5}' | uniq)'" ]; then' >> $preup
96+
echo ' /sbin/iptables-restore < /etc/iptables.rules' >> $preup
97+
echo 'fi' >> $preup
98+
echo '' >> $preup
99+
echo "exit 0" >> $preup
100+
chmod +x $preup
106101
fi
107102
fi
108103

0 commit comments

Comments
 (0)