From 886e9a8c493d5d086fcd9664a4b9a4d0af87b3f3 Mon Sep 17 00:00:00 2001
From: Bob Mottram <bob@freedombone.net>
Date: Wed, 27 Sep 2017 15:31:50 +0100
Subject: [PATCH] Backup and restore stunnel

---
 src/freedombone-app-vpn | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/src/freedombone-app-vpn b/src/freedombone-app-vpn
index 7b394bd43..b32e4c36b 100755
--- a/src/freedombone-app-vpn
+++ b/src/freedombone-app-vpn
@@ -213,6 +213,7 @@ function backup_local_vpn {
 
     function_check backup_directory_to_usb
     backup_directory_to_usb /etc/openvpn/easy-rsa/keys vpn
+    backup_directory_to_usb /etc/stunnel vpnstunnel
 }
 
 function restore_local_vpn {
@@ -232,6 +233,23 @@ function restore_local_vpn {
             fi
         done
     fi
+    temp_restore_dir=/root/tempvpnstunnel
+    restore_directory_from_usb $temp_restore_dir vpnstunnel
+    if [ -d ${temp_restore_dir} ]; then
+        cp -r ${temp_restore_dir}/* /etc/stunnel
+        rm -rf ${temp_restore_dir}
+        for d in /home/*/ ; do
+            USERNAME=$(echo "$d" | awk -F '/' '{print $3}')
+            if [ -f /home/$USERNAME/stunnel.pem ]; then
+                cp /etc/stunnel/stunnel.pem /home/$USERNAME/stunnel.pem
+                chown $USERNAME:$USERNAME /home/$USERNAME/stunnel.pem
+            fi
+            if [ -f /home/$USERNAME/stunnel.p12 ]; then
+                cp /etc/stunnel/stunnel.p12 /home/$USERNAME/stunnel.p12
+                chown $USERNAME:$USERNAME /home/$USERNAME/stunnel.p12
+            fi
+        done
+    fi
 }
 
 function backup_remote_vpn {
@@ -244,6 +262,7 @@ function backup_remote_vpn {
 
     function_check backup_directory_to_friend
     backup_directory_to_friend /etc/openvpn/easy-rsa/keys vpn
+    backup_directory_to_friend /etc/stunnel vpnstunnel
 }
 
 function restore_remote_vpn {
@@ -263,6 +282,23 @@ function restore_remote_vpn {
             fi
         done
     fi
+    temp_restore_dir=/root/tempvpnstunnel
+    restore_directory_from_friend $temp_restore_dir vpnstunnel
+    if [ -d ${temp_restore_dir} ]; then
+        cp -r ${temp_restore_dir}/* /etc/stunnel
+        rm -rf ${temp_restore_dir}
+        for d in /home/*/ ; do
+            USERNAME=$(echo "$d" | awk -F '/' '{print $3}')
+            if [ -f /home/$USERNAME/stunnel.pem ]; then
+                cp /etc/stunnel/stunnel.pem /home/$USERNAME/stunnel.pem
+                chown $USERNAME:$USERNAME /home/$USERNAME/stunnel.pem
+            fi
+            if [ -f /home/$USERNAME/stunnel.p12 ]; then
+                cp /etc/stunnel/stunnel.p12 /home/$USERNAME/stunnel.p12
+                chown $USERNAME:$USERNAME /home/$USERNAME/stunnel.p12
+            fi
+        done
+    fi
 }
 
 function remove_vpn {
-- 
GitLab