blob: d2316e5fdf2976c434585e780dc2f8886c9f3bb4 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#
# Setup Firewall
#
# Load utility functions
. ./functions.sh
if [ "$ENABLE_IPTABLES" = true ] ; then
# Create iptables configuration directory
mkdir -p "$R/etc/iptables"
# Install iptables systemd service
install_readonly files/iptables/iptables.service $R/etc/systemd/system/iptables.service
# Install flush-table script called by iptables service
install_exec files/iptables/flush-iptables.sh $R/etc/iptables/flush-iptables.sh
# Install iptables rule file
install_readonly files/iptables/iptables.rules $R/etc/iptables/iptables.rules
# Reload systemd configuration and enable iptables service
chroot_exec systemctl daemon-reload
chroot_exec systemctl enable iptables.service
if [ "$ENABLE_IPV6" = true ] ; then
# Install ip6tables systemd service
install_readonly files/iptables/ip6tables.service $R/etc/systemd/system/ip6tables.service
# Install ip6tables file
install_exec files/iptables/flush-ip6tables.sh $R/etc/iptables/flush-ip6tables.sh
install_readonly files/iptables/ip6tables.rules $R/etc/iptables/ip6tables.rules
# Reload systemd configuration and enable iptables service
chroot_exec systemctl daemon-reload
chroot_exec systemctl enable ip6tables.service
fi
fi
if [ "$ENABLE_SSHD" = false ] ; then
# Remove SSHD related iptables rules
sed -i "/^#/! {/SSH/ s/^/# /}" $R/etc/iptables/iptables.rules 2> /dev/null
sed -i "/^#/! {/SSH/ s/^/# /}" $R/etc/iptables/ip6tables.rules 2> /dev/null
fi
|