mirror of
https://github.com/pivpn/pivpn.git
synced 2024-12-23 05:10:21 +00:00
remove refs to /etc/pivpn/setupVars in selfcheck and debug scripts
tidy indenting on install, check if symlink already exists before making one to avoid error uninstall indicates which vpns are available for uninstall selfcheck checks both protocols if both present install - additional text in reconfigure saying 2nd protocol can be added change to use pivpn ovpn instaed of pivpn opv when dual protocols exist
This commit is contained in:
parent
e3363a7d98
commit
b90077bd78
5 changed files with 86 additions and 37 deletions
scripts
|
@ -16,7 +16,7 @@ echo -e "::::\t\t\e[4mLatest commit\e[0m\t\t ::::"
|
|||
git --git-dir /etc/.pivpn/.git log -n 1
|
||||
printf "=============================================\n"
|
||||
echo -e "::::\t \e[4mInstallation settings\e[0m \t ::::"
|
||||
sed "s/$pivpnHOST/REDACTED/" < /etc/pivpn/setupVars.conf
|
||||
sed "s/$pivpnHOST/REDACTED/" < ${setupVars}
|
||||
printf "=============================================\n"
|
||||
echo -e ":::: \e[4mServer configuration shown below\e[0m ::::"
|
||||
cat /etc/openvpn/server.conf
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
# Must be root to use this tool
|
||||
if [ $EUID -ne 0 ];then
|
||||
if dpkg-query -s sudo &> /dev/null; then
|
||||
export SUDO="sudo"
|
||||
export SUDO="sudo"
|
||||
else
|
||||
echo "::: Please install sudo or run this as root."
|
||||
exit 1
|
||||
fi
|
||||
echo "::: Please install sudo or run this as root."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
scriptDir="/opt/pivpn"
|
||||
|
@ -17,7 +17,7 @@ showHelp(){
|
|||
echo "::: To pass off to the pivpn command for each protocol"
|
||||
echo ":::"
|
||||
echo "::: Usage: pivpn wg <command> [option]"
|
||||
echo "::: Usage: pivpn opv <command> [option]"
|
||||
echo "::: Usage: pivpn ovpn <command> [option]"
|
||||
echo ":::"
|
||||
echo "::: -h, help Show this help dialog"
|
||||
exit 0
|
||||
|
@ -30,7 +30,7 @@ fi
|
|||
# Handle redirecting to specific functions based on arguments
|
||||
case "$1" in
|
||||
wg ) "${scriptDir}/wireguard/pivpn.sh" "${@:2}";;
|
||||
opv ) "${scriptDir}/openvpn/pivpn.sh" "${@:2}";;
|
||||
ovpn ) "${scriptDir}/openvpn/pivpn.sh" "${@:2}";;
|
||||
"-h" | "help" ) showHelp;;
|
||||
* ) showHelp;;
|
||||
esac
|
||||
|
|
|
@ -1,13 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
setupVars="/etc/pivpn/setupVars.conf"
|
||||
ERR=0
|
||||
|
||||
if [ ! -f "${setupVars}" ]; then
|
||||
echo "::: Missing setup vars file!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
runselfcheck()
|
||||
{
|
||||
source "${setupVars}"
|
||||
|
||||
if [ "$VPN" = "wireguard" ]; then
|
||||
|
@ -162,3 +156,40 @@ fi
|
|||
if [ "$ERR" -eq 1 ]; then
|
||||
echo -e "[INFO] Run \e[1mpivpn -d\e[0m again to see if we detect issues"
|
||||
fi
|
||||
|
||||
} # end function
|
||||
|
||||
# now there are two places setupVars.conf can be, so check each one
|
||||
|
||||
dualprot='no'
|
||||
setupVars="/etc/pivpn/wireguard/setupVars.conf"
|
||||
ERR=0
|
||||
|
||||
if [ ! -f "${setupVars}" ]; then
|
||||
echo "::: Missing ${setupVars}i, wireguard not installed"
|
||||
else
|
||||
echo "::: Selfcheck for wireguard, config from ${setupVars}"
|
||||
runselfcheck
|
||||
dualprot='yes'
|
||||
fi
|
||||
|
||||
setupVars="/etc/pivpn/openvpn/setupVars.conf"
|
||||
ERR=0
|
||||
|
||||
if [ ! -f "${setupVars}" ]; then
|
||||
echo "::: Missing ${setupVars}, openvpn not installed"
|
||||
else
|
||||
echo "::: Selfcheck for openvpn, config from ${setupVars}"
|
||||
runselfcheck
|
||||
dualprot='yes'
|
||||
fi
|
||||
|
||||
# add check for a mixed up installation
|
||||
setupVars="/etc/pivpn/setupVars.conf"
|
||||
|
||||
if [ ${dualprot} == 'yes' && -f "${setupVars}" ]; then
|
||||
echo "::: Older ${setupVars} exists, should not be there,
|
||||
echo "::: two versions have been installed which are not compatible"
|
||||
fi
|
||||
|
||||
|
||||
|
|
|
@ -4,6 +4,24 @@
|
|||
### FIXME: global: config storage, refactor all scripts to adhere to the storage
|
||||
### FIXME: use variables where appropriate, reduce magic numbers by 99.9%, at least.
|
||||
|
||||
# what is already installed?
|
||||
setupVars="/etc/pivpn/openvpn/setupVars.conf"
|
||||
foundins=''
|
||||
if [ -f "${setupVars}" ]; then
|
||||
foundins="openvpn"
|
||||
fi
|
||||
|
||||
setupVars="/etc/pivpn/wireguard/setupVars.conf"
|
||||
if [ -f "${setupVars}" ]; then
|
||||
foundins="${foundins} wireguard"
|
||||
fi
|
||||
|
||||
if [ -z ${foundins} ]; then
|
||||
foundins="nothing found"
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# Find the rows and columns. Will default to 80x24 if it can not be detected.
|
||||
screen_size=$(stty size 2>/dev/null || echo 24 80)
|
||||
rows=$(echo "$screen_size" | awk '{print $1}')
|
||||
|
@ -16,7 +34,7 @@ c=$(( columns / 2 ))
|
|||
r=$(( r < 20 ? 20 : r ))
|
||||
c=$(( c < 70 ? 70 : c ))
|
||||
|
||||
chooseVPNCmd=(whiptail --backtitle "Setup PiVPN" --title "Installation mode" --separate-output --radiolist "WireGuard is a new kind of VPN that provides near-instantaneous connection speed, high performance, and modern cryptography.\\n\\nIt's the recommended choice especially if you use mobile devices where WireGuard is easier on battery than OpenVPN.\\n\\nOpenVPN is still available if you need the traditional, flexible, trusted VPN protocol or if you need features like TCP and custom search domain.\\n\\nChoose a VPN to uninstall (press space to select):" "${r}" "${c}" 2)
|
||||
chooseVPNCmd=(whiptail --backtitle "Setup PiVPN" --title "Installation mode" --separate-output --radiolist "WireGuard is a new kind of VPN that provides near-instantaneous connection speed, high performance, and modern cryptography.\\n\\nIt's the recommended choice especially if you use mobile devices where WireGuard is easier on battery than OpenVPN.\\n\\nOpenVPN is still available if you need the traditional, flexible, trusted VPN protocol or if you need features like TCP and custom search domain.\\n\\nChoose a VPN (${foundins}) to uninstall (press space to select):" "${r}" "${c}" 2)
|
||||
VPNChooseOptions=(WireGuard "" on
|
||||
OpenVPN "" off)
|
||||
|
||||
|
@ -108,21 +126,21 @@ removeAll(){
|
|||
vpnStillExists='no'
|
||||
|
||||
if [ -r "${setupConfigDir}/${othervpn}/${setupVarsFile}" ]; then
|
||||
vpnStillExists='yes'
|
||||
$SUDO rm -f /usr/local/bin/pivpn
|
||||
$SUDO ln -s -T /opt/pivpn/${othervpn}/pivpn.sh /usr/local/bin/pivpn
|
||||
echo ":::"
|
||||
echo "::: Two VPN protocols exist, you should remove ${othervpn} too"
|
||||
echo ":::"
|
||||
vpnStillExists='yes'
|
||||
$SUDO rm -f /usr/local/bin/pivpn
|
||||
$SUDO ln -s -T /opt/pivpn/${othervpn}/pivpn.sh /usr/local/bin/pivpn
|
||||
echo ":::"
|
||||
echo "::: Two VPN protocols exist, you should remove ${othervpn} too"
|
||||
echo ":::"
|
||||
|
||||
else
|
||||
rm -f /etc/bash_completion.d/pivpn
|
||||
rm -f /etc/bash_completion.d/pivpn
|
||||
fi
|
||||
|
||||
# Disable IPv4 forwarding
|
||||
if [ ${vpnStillExists} == 'no' ]; then
|
||||
sed -i '/net.ipv4.ip_forward=1/c\#net.ipv4.ip_forward=1' /etc/sysctl.conf
|
||||
sysctl -p
|
||||
sed -i '/net.ipv4.ip_forward=1/c\#net.ipv4.ip_forward=1' /etc/sysctl.conf
|
||||
sysctl -p
|
||||
fi
|
||||
|
||||
# Purge dependencies
|
||||
|
@ -204,18 +222,18 @@ removeAll(){
|
|||
fi
|
||||
|
||||
if [ ${vpnStillExists} == 'no' ]; then
|
||||
echo ":::"
|
||||
echo "::: Removing pivpn system files..."
|
||||
rm -rf /etc/.pivpn
|
||||
rm -rf /etc/pivpn
|
||||
rm -f /var/log/*pivpn*
|
||||
rm -rf /opt/pivpn
|
||||
rm -f /usr/local/bin/pivpn
|
||||
echo ":::"
|
||||
echo "::: Removing pivpn system files..."
|
||||
rm -rf /etc/.pivpn
|
||||
rm -rf /etc/pivpn
|
||||
rm -f /var/log/*pivpn*
|
||||
rm -rf /opt/pivpn
|
||||
rm -f /usr/local/bin/pivpn
|
||||
else
|
||||
echo ":::"
|
||||
echo "::: Other protocol still present, so not"
|
||||
echo "::: removing pivpn system files"
|
||||
rm -f "${setupConfigDir}/${VPN}/${setupVarsFile}"
|
||||
echo ":::"
|
||||
echo "::: Other protocol still present, so not"
|
||||
echo "::: removing pivpn system files"
|
||||
rm -f "${setupConfigDir}/${VPN}/${setupVarsFile}"
|
||||
fi
|
||||
|
||||
echo ":::"
|
||||
|
|
|
@ -16,7 +16,7 @@ echo -e "::::\t\t\e[4mLatest commit\e[0m\t\t ::::"
|
|||
git --git-dir /etc/.pivpn/.git log -n 1
|
||||
printf "=============================================\n"
|
||||
echo -e "::::\t \e[4mInstallation settings\e[0m \t ::::"
|
||||
sed "s/$pivpnHOST/REDACTED/" < /etc/pivpn/setupVars.conf
|
||||
sed "s/$pivpnHOST/REDACTED/" < ${setupVars}
|
||||
printf "=============================================\n"
|
||||
echo -e ":::: \e[4mServer configuration shown below\e[0m ::::"
|
||||
cd /etc/wireguard/keys
|
||||
|
|
Loading…
Reference in a new issue