diff --git a/scripts/start_wg.sh b/scripts/start_wg.sh index 679498c..7349f0c 100644 --- a/scripts/start_wg.sh +++ b/scripts/start_wg.sh @@ -3,16 +3,31 @@ ssh-keygen -A exec /usr/sbin/sshd -D -e "$@" & INTERFACE=$(route | grep '^default' | grep -o '[^ ]*$') -if [ $(cat /etc/wireguard/wg0.conf | wc -c) -eq 0 ] +if [ "$HOSTNAME" = "wireguard1" ] then - PRIVATEKEY=$(wg genkey | tee /etc/wireguard/privatekey) - echo "[Interface]" > /etc/wireguard/wg0.conf - echo "PrivateKey = $PRIVATEKEY" >> /etc/wireguard/wg0.conf - echo "Address = $ADDRESS" >> /etc/wireguard/wg0.conf - echo "ListenPort = $WGPORT" >> /etc/wireguard/wg0.conf + if [ $(cat /etc/wireguard/wg0.conf | wc -c) -eq 0 ] + then + PRIVATEKEY=$(wg genkey | tee /etc/wireguard/privatekey) + echo "[Interface]" > /etc/wireguard/wg0.conf + echo "PrivateKey = $PRIVATEKEY" >> /etc/wireguard/wg0.conf + echo "Address = $ADDRESS" >> /etc/wireguard/wg0.conf + echo "ListenPort = $WG1PORT" >> /etc/wireguard/wg0.conf + else + sed "s/ListenPort = [0-9]\+/ListenPort = $WG1PORT/" /etc/wireguard/wg0.conf > change_port + cat change_port > /etc/wireguard/wg0.conf + fi else - sed "s/ListenPort = [0-9]\+/ListenPort = $WGPORT/" /etc/wireguard/wg0.conf > change_port - cat change_port > /etc/wireguard/wg0.conf + if [ $(cat /etc/wireguard/wg0.conf | wc -c) -eq 0 ] + then + PRIVATEKEY=$(wg genkey | tee /etc/wireguard/privatekey) + echo "[Interface]" > /etc/wireguard/wg0.conf + echo "PrivateKey = $PRIVATEKEY" >> /etc/wireguard/wg0.conf + echo "Address = $ADDRESS" >> /etc/wireguard/wg0.conf + echo "ListenPort = $WGPORT" >> /etc/wireguard/wg0.conf + else + sed "s/ListenPort = [0-9]\+/ListenPort = $WGPORT/" /etc/wireguard/wg0.conf > change_port + cat change_port > /etc/wireguard/wg0.conf + fi fi iptables -t nat -A POSTROUTING --destination 10.10.0.5 -j ACCEPT iptables -t nat -A POSTROUTING -o $INTERFACE -j MASQUERADE