Files
nokia-auto-vpn/nix.sh
Zsolt Alföldi 0c5f368d33 updated secret
2025-11-25 19:41:38 +01:00

35 lines
1.2 KiB
Bash

#!/bin/env bash
set -e -u -o pipefail
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" > /dev/null && pwd)"
VPN=vpn0
: ${1:?Missing decrypt pass}
: ${2:?Missing topt but needed}
dot_env_secret=$(echo 'U2FsdGVkX19eQYx+TShrhfCxm+MxGCZjtv6PqltQuPsjeJWGZMu34C3zTGjjbq/+vF+/B5arScbw8tnZIqwQq7ISqGTHmDbPS9KqUokXFGEPYW43t9tC42XHMfPtWVrimHS1HENS6U9A0+NSYrS1TQ==' | \
openssl enc -aes-256-cbc -pbkdf2 -d -a -A -pass pass:$1)
export $( echo $dot_env_secret | grep "=" | grep -v "#" | xargs )
: ${VPN_PEM_PASS:?Missing but needed}
: ${VPN_USER:?Missing but needed}
: ${VPN_USER_PASS:?Missing but needed}
expect $DIR/vpn.exp $VPN_PEM_PASS $VPN_USER $VPN_USER_PASS $2
sudo ip route delete 10.0.0.0/8 dev $VPN metric 50 || true
sudo ip route delete 100.0.0.0/8 dev $VPN metric 50 || true
sudo ip route delete 135.0.0.0/8 dev $VPN metric 50 || true
EXISTING=$(nmcli -g ipv4.dns-search connection show "$VPN")
NEW="${EXISTING:+$EXISTING,}cci.nokia.net"
vpn_ip="$(ip a l $VPN | awk '/inet / {print $2}' | cut -d/ -f1 | cut -d. -f1-3)"
if [[ -z $vpn_ip ]] ; then
exit 1
fi
sudo ip route add 10.0.0.0/8 dev $VPN metric 50
sudo ip route add 100.0.0.0/8 dev $VPN metric 50
sudo ip route add 135.0.0.0/8 dev $VPN metric 50