35 lines
1.5 KiB
Bash
Executable File
35 lines
1.5 KiB
Bash
Executable File
#!/bin/sh
|
|
set -e
|
|
|
|
case "$1" in
|
|
remove|deconfigure)
|
|
# Stop offering the tunnels, but leave strongSwan itself enabled: it is
|
|
# a shared service and may be in use by something other than this
|
|
# package. The connection files are removed on purge.
|
|
# The site-to-site connections are the names of site_to_site in vpn-router.json.
|
|
if [ -d /run/systemd/system ]; then
|
|
connections="$(python3 -c 'import json, sys; print(" ".join(json.load(open(sys.argv[1])).get("site_to_site", {})))' \
|
|
/etc/vpn-router/vpn-router.json 2>/dev/null || true)"
|
|
for connection in $connections; do
|
|
swanctl --terminate --ike "$connection" >/dev/null 2>&1 || true
|
|
done
|
|
swanctl --terminate --ike road-warrior >/dev/null 2>&1 || true
|
|
fi
|
|
|
|
# vpn-router-setup enabled wg-quick@wg0, openvpn-server@vpn-router,
|
|
# caddy and vpn-router-metrics, so the package takes them down again.
|
|
# Use the debhelper wrappers rather than systemctl, so the script
|
|
# behaves on a machine without systemd.
|
|
for unit in wg-quick@wg0.service openvpn-server@vpn-router.service caddy.service vpn-router-metrics.service; do
|
|
if command -v deb-systemd-invoke >/dev/null 2>&1; then
|
|
deb-systemd-invoke stop "$unit" >/dev/null 2>&1 || true
|
|
fi
|
|
if command -v deb-systemd-helper >/dev/null 2>&1; then
|
|
deb-systemd-helper disable "$unit" >/dev/null 2>&1 || true
|
|
fi
|
|
done
|
|
;;
|
|
esac
|
|
|
|
#DEBHELPER#
|