LibrePortal/scripts/wireguard/uninstall_standalone.sh
librelad 875a60f90f LibrePortal v0.1.0 — initial release
A free, open, self-hosted app platform (GNU AGPLv3): one-click app deploys,
Traefik reverse proxy with automatic SSL, rootless Docker support, gluetun
VPN routing, and a web dashboard to manage it all.

Free & open forever to self-host; optional paid hosted services fund it.
See PROMISE.md.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

Signed-off-by: librelad <librelad@digitalangels.vip>
2026-05-21 20:37:54 +01:00

53 lines
2.0 KiB
Bash
Executable File

#!/bin/bash
wireguardUninstall()
{
isHeader "Wireguard Uninstaller"
isNotice "***WARNING*** This will uninstall WireGuard and remove all the configuration files!"
isNotice "Please backup the /etc/wireguard directory if you want to keep your configuration files."
echo ""
isQuestion "Do you really want to remove WireGuard? (y/n): "
read -p "" WIREGUARD_REMOVE
if [[ $WIREGUARD_REMOVE == [yY] ]]; then
if [[ "$OS_TYPE" == "Ubuntu" || "$OS_TYPE" == "Debian" ]]; then
result=$(sudo systemctl stop "wg-quick@${CFG_WG_SERVER_NIC}")
checkSuccess "Stopped wg-quick@${CFG_WG_SERVER_NIC} service."
result=$(sudo systemctl disable "wg-quick@${CFG_WG_SERVER_NIC}")
checkSuccess "Disabled wg-quick@${CFG_WG_SERVER_NIC} service."
if [[ "$OS_TYPE" == "Ubuntu" || "$OS_TYPE" == "Debian" ]]; then
result=$(sudo apt-get remove -y wireguard wireguard-tools qrencode)
checkSuccess "Removed wireguard wireguard-tools qrencode"
fi
result=$(sudo rm -rf /etc/wireguard)
checkSuccess "Deleted /etc/wireguard folder."
result=$(sudo rm -f /etc/sysctl.d/wg.conf)
checkSuccess "Delete /etc/sysctl.d/wg.conf file."
result=$(sudo sysctl --system)
checkSuccess "Reloaded sysctl"
portUnuse wireguardstandalone $CFG_WG_SERVER_PORT install;
portClose wireguardstandalone $CFG_WG_SERVER_PORT/udp install;
# Check if WireGuard is running
systemctl is-active --quiet "wg-quick@${CFG_WG_SERVER_NIC}"
WIREGUARD_RUNNING=$?
if [[ ${WIREGUARD_RUNNING} -eq 0 ]]; then
isError "WireGuard failed to uninstall properly."
wireguardManageMenu;
else
isSuccessful "WireGuard uninstalled successfully."
wireguardManageMenu;
fi
fi
else
echo ""
isNotice "Removal aborted!"
fi
}