bin/vpn: advanced handling
This commit is contained in:
parent
6533464fd2
commit
d8a667f9be
1 changed files with 10 additions and 5 deletions
|
@ -4,8 +4,11 @@ case "$1" in
|
|||
("") tmux new-session -s "vpn" "tmux ls; $SHELL";;
|
||||
(forti)
|
||||
if ip route | grep -q ppp0
|
||||
then echo "Device ppp0 already in use!"
|
||||
else sudo tmux new-session -s "$1" '
|
||||
then printf "Device ppp0 already in use - press Enter to kill"
|
||||
read -r _
|
||||
sudo killall openfortivpn
|
||||
fi
|
||||
sudo tmux new-session -s "$1" '
|
||||
set -x
|
||||
route="$(ip route | grep default | sort | head -1)"
|
||||
# Start openfortivpn in the background
|
||||
|
@ -13,7 +16,7 @@ case "$1" in
|
|||
VPN_PID=$!
|
||||
# Wait a little for the VPN to establish the connection
|
||||
sleep 5
|
||||
# TODO Loop
|
||||
# TODO Loop
|
||||
# Delete the default route set by openfortivpn (ppp0)
|
||||
ip route del default dev ppp0
|
||||
# Add the default route via the local network
|
||||
|
@ -22,8 +25,10 @@ case "$1" in
|
|||
ip route
|
||||
wait $VPN_PID
|
||||
echo "VPN has disconnected."
|
||||
ip dev del ppp0;
|
||||
'
|
||||
fi
|
||||
;;
|
||||
(*) tmux new-session -s "$@" "sudo openvpn $@ || read";;
|
||||
(*) test -f "$1" || file=$(find $1* -name '*.ovpn')
|
||||
cd "$(dirname "$file")" && file="$(basename "$file")"
|
||||
tmux new-session -s "$@" "sudo openvpn ${file:-$@} || read"
|
||||
esac
|
||||
|
|
Loading…
Add table
Reference in a new issue