summaryrefslogtreecommitdiff
path: root/sh/vpn
diff options
context:
space:
mode:
Diffstat (limited to 'sh/vpn')
-rwxr-xr-xsh/vpn22
1 files changed, 6 insertions, 16 deletions
diff --git a/sh/vpn b/sh/vpn
index 4375873..718d504 100755
--- a/sh/vpn
+++ b/sh/vpn
@@ -1,25 +1,17 @@
#!/bin/sh
# toggle VPN
+
down_not_master () {
- git -C "$HOME/programs/config_local_arch" branch | awk '!/pp/{print ($1=="*")?$2:$1}' | while read -r v; do
+ git -C "$HOME/programs/config_local_arch" branch | awk '!/master/{print ($1=="*")?$2:$1}' | while read -r v; do
nmcli connection down "wg_$v"
done
}
-wg_aa_restore_default () {
- # case seems faster than pipe to grep maybe because case is shell built-in, so I use case
- # if nmcli -t --fields device,state device | grep -q '^wg_aa:connected$'; then ...; fi
- case "$(nmcli -t --fields device,state device)" in
- # stop aa wireguard+swgp server that listen from insp wiregurad+swgp client, start aa wg+swgp connect to ca
- # use /usr/bin/alacritty instead of /home/xyz/.local/bin/alacritty so script can wait until alacritty exit to run other codes following
- *wg_aa:connected*) /usr/bin/alacritty -T aa --hold -e sh -c 'echo "Wait for aa sudo prompt and enter password, then manually close this window:"; ssh -t aawg "sudo systemctl stop wg-quick@wg0 && sudo systemctl start wg-quick@wg_ib"';;
- esac
-}
-
# no toggle wg_master, I want wg_master to always on by default
if ! [ "$1" ] || [ "$1" = master ]; then
- wg_aa_restore_default
+ # kill monerod before wg_ba down
+ killall -w monerod
down_not_master
nmcli connection up wg_master
notify-send -u critical 'VPN disabled'
@@ -27,14 +19,12 @@ if ! [ "$1" ] || [ "$1" = master ]; then
fi
if nmcli -t --fields device,state device | grep -q "^wg_$1:connected$"; then
- wg_aa_restore_default
+ killall -w monerod
down_not_master
nmcli connection up wg_master
notify-send -u critical "$1 VPN disabled"
else
- if [ "$1" = aa ]; then
- /usr/bin/alacritty -T aa --hold -e sh -c 'echo "Wait for aa sudo prompt and enter password, then manually close this window"; ssh -t aawg "sudo systemctl stop wg-quick@wg_ib && sudo systemctl start wg-quick@wg0"'
- fi
+ [ "$1" != ba ] && killall -w monerod
down_not_master
nmcli connection down wg_master
nmcli connection up "wg_$1"