88 lines
2.7 KiB
Bash
88 lines
2.7 KiB
Bash
#!/bin/bash
|
|
|
|
# VPN Client app for YunoHost
|
|
# Copyright (C) 2015 Julien Vaubourg <julien@vaubourg.com>
|
|
# Contribute at https://github.com/labriqueinternet/vpnclient_ynh
|
|
#
|
|
# This program is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU Affero General Public License as published by
|
|
# the Free Software Foundation, either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU Affero General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU Affero General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
#=================================================
|
|
# GENERIC STARTING
|
|
#=================================================
|
|
# IMPORT GENERIC HELPERS
|
|
#=================================================
|
|
|
|
source _common.sh
|
|
source /usr/share/yunohost/helpers
|
|
|
|
#=================================================
|
|
# LOAD SETTINGS
|
|
#=================================================
|
|
|
|
app=$YNH_APP_INSTANCE_NAME
|
|
domain=$(ynh_app_setting_get $app domain)
|
|
|
|
service_name="ynh-vpnclient"
|
|
service_checker_name=$service_name"-checker"
|
|
|
|
#=================================================
|
|
|
|
# Stop and remove yunohost services
|
|
|
|
yunohost service stop $service_checker_name
|
|
yunohost service disable $service_checker_name
|
|
yunohost service remove $service_checker_name
|
|
systemctl stop $service_checker_name.timer && sleep 1
|
|
systemctl disable $service_checker_name.timer
|
|
|
|
yunohost service stop $service_name
|
|
yunohost service disable $service_name
|
|
yunohost service remove $service_name
|
|
|
|
for FILE in $(ls /etc/systemd/system/$service_name* /usr/local/bin/ynh-vpnclient* /tmp/.ynh-vpnclient-*)
|
|
do
|
|
ynh_secure_remove "$FILE"
|
|
done
|
|
|
|
# Remove confs
|
|
ynh_secure_remove /etc/openvpn/client.conf
|
|
ynh_secure_remove /etc/openvpn/client.conf.tpl
|
|
ynh_secure_remove /etc/openvpn/client.conf.tpl.restore
|
|
ynh_secure_remove /etc/nginx/conf.d/${domain}.d/${app}.conf
|
|
ynh_secure_remove /etc/php5/fpm/pool.d/${app}.conf
|
|
ynh_secure_remove /etc/yunohost/hooks.d/90-vpnclient.tpl
|
|
ynh_secure_remove /etc/systemd/system/openvpn@.service
|
|
|
|
# Remove certificates
|
|
ynh_secure_remove /etc/openvpn/keys
|
|
|
|
# Remove packages
|
|
ynh_remove_app_dependencies
|
|
|
|
# Remove sources
|
|
ynh_secure_remove "/var/www/${app}"
|
|
|
|
# Reload systemd configuration
|
|
systemctl daemon-reload
|
|
|
|
# Restart services
|
|
# (this must happen before deleting the user, otherwise the user is
|
|
# being used by one of the php pool process)
|
|
systemctl restart php5-fpm
|
|
systemctl reload nginx
|
|
|
|
# Removed system user
|
|
ynh_system_user_delete ${app}
|
|
ynh_secure_remove "/etc/sudoers.d/${app}_ynh"
|