Add center no nat

This commit is contained in:
2025-05-22 13:53:08 +02:00
parent 61e1204536
commit 250886a0ae
3 changed files with 55 additions and 10 deletions

View File

@@ -1,17 +1,18 @@
#!/bin/bash
WG_NUM=$1
. ./env_center.sh
WG_CONF="/etc/wireguard"
PRIV_KEY_FILE="wg${WG_NUM}_privatekey"
PUB_KEY_FILE="wg${WG_NUM}_publickey"
CONF_FILE="wg${WG_NUM}.conf"
if [ -z "$1" ]; then
if [ -z "$WG_NUM" ]; then
echo "Wireguard interface number not provided."
exit 1
fi
if ! [[ "$1" =~ ^-?[0-9]+([.][0-9]+)?$ ]]; then
if ! [[ "$WG_NUM" =~ ^-?[0-9]+([.][0-9]+)?$ ]]; then
echo "Wireguard interface number has to be a number."
exit 2
fi
@@ -24,16 +25,10 @@ sudo mkdir -p $WG_CONF
sudo mv ./$PRIV_KEY_FILE $WG_CONF
sudo mv ./$PUB_KEY_FILE $WG_CONF
read -p "Enter IP (as server) (e.g. 192.168.${WG_NUM}.1/24): " ADDRESS
read -p "Enter wireguard subnet, should be the subnet of server IP: " WG_SUBNET
read -p "Enter physical interface for nat out: " PHY
read -p "Enter port to listern (e.g. 51820): " LISTEN_PORT
CONF_CONTENT="[Interface]
PrivateKey = $PRIVATE_KEY
SaveConfig = false
Address = $ADDRESS
Address = $WG_IP
ListenPort = $LISTEN_PORT
PostUp = iptables -A FORWARD -i wg$WG_NUM -j ACCEPT; iptables -t nat -A POSTROUTING -s $WG_SUBNET -o $PHY -j MASQUERADE
PostDown = iptables -D FORWARD -i wg$WG_NUM -j ACCEPT; iptables -t nat -D POSTROUTING -s $WG_SUBNET -o $PHY -j MASQUERADE