Add support for WireGuard VPN Service.

This commit is contained in:
2022-08-11 10:43:04 +02:00
parent 2d07d39a55
commit 0831f26891
8 changed files with 200 additions and 2 deletions

View File

@ -1184,6 +1184,21 @@ done
echo_done
# ---
# - Permit all traffic through WireGuard lines
# ---
echononl "\tPermit all traffic through WireGuard lines.."
for _wg_if in ${wg_if_arr[@]} ; do
$ipt -A INPUT -i $_wg_if -m conntrack --ctstate NEW -j ACCEPT
if $kernel_activate_forwarding ; then
for _local_dev in ${local_if_arr[@]} ; do
$ipt -A FORWARD -i $_wg_if -o $_local_dev -m conntrack --ctstate NEW -j ACCEPT
done
fi
done
echo_done
# ---
# - Don't allow traffic into private networks
# ---
@ -1547,6 +1562,48 @@ else
fi
# ---
# - Wireguard
# ---
echononl "\t\tWireGuard Service only out"
if [[ ${#wireguard_out_port_port_arr[@]} -gt 0 ]] ; then
for _dev in ${ext_if_arr[@]} ; do
for _port in ${wireguard_out_port_port_arr[@]} ; do
$ipt -A OUTPUT -o $_dev -p udp --dport $_port -m state --state NEW -j ACCEPT
done
done
echo_done
else
echo_skipped
fi
echononl "\t\tWireGuard Services.."
if [[ ${#wireguard_server_ip_arr[@]} -gt 0 ]] || [[ ${forward_wireguard_server_ip_arr[@]} -gt 0 ]] ; then
if [[ ${#wireguard_server_ip_arr[@]} -gt 0 ]] ; then
for _ip in ${wireguard_server_ip_arr[@]} ; do
for _port in ${wireguard_server_ports[@]} ; do
$ipt -A INPUT -p udp -d $_ip --dport $_port -m state --state NEW -j ACCEPT
done
done
fi
if [[ ${forward_wireguard_server_ip_arr[@]} -gt 0 ]] && $kernel_activate_forwarding ; then
for _ip in ${forward_wireguard_server_ip_arr[@]} ; do
for _port in ${wireguard_server_ports[@]} ; do
$ipt -A FORWARD -p udp -d $_ip --dport $_port -m state --state NEW -j ACCEPT
done
done
fi
echo_done
else
echo_skipped
fi
# ---
# - Rsync Out
# ---