Browse Source

Backup and restore vpn keys

Bob Mottram 7 years ago
parent
commit
01c182b668
1 changed files with 46 additions and 4 deletions
  1. 46
    4
      src/freedombone-app-vpn

+ 46
- 4
src/freedombone-app-vpn View File

64
 }
64
 }
65
 
65
 
66
 function backup_local_vpn {
66
 function backup_local_vpn {
67
-    echo -n ''
67
+    for d in /home/*/ ; do
68
+        USERNAME=$(echo "$d" | awk -F '/' '{print $3}')
69
+        if [ -f /home/$USERNAME/$OPENVPN_KEY_FILENAME ]; then
70
+            cp /home/$USERNAME/$OPENVPN_KEY_FILENAME /etc/openvpn/easy-rsa/keys/${USERNAME}_${OPENVPN_KEY_FILENAME}
71
+        fi
72
+    done
73
+
74
+    function_check backup_directory_to_usb
75
+    backup_directory_to_usb /etc/openvpn/easy-rsa/keys vpn
68
 }
76
 }
69
 
77
 
70
 function restore_local_vpn {
78
 function restore_local_vpn {
71
-    echo -n ''
79
+    temp_restore_dir=/root/tempvpn
80
+    restore_directory_from_usb $temp_restore_dir vpn
81
+    if [ -d ${temp_restore_dir} ]; then
82
+        cp -r ${temp_restore_dir}/* /etc/openvpn/easy-rsa/keys
83
+        rm -rf ${temp_restore_dir}
84
+
85
+        for d in /home/*/ ; do
86
+            USERNAME=$(echo "$d" | awk -F '/' '{print $3}')
87
+            if [ -f /etc/openvpn/easy-rsa/keys/${USERNAME}_${OPENVPN_KEY_FILENAME} ]; then
88
+                cp /etc/openvpn/easy-rsa/keys/${USERNAME}_${OPENVPN_KEY_FILENAME} /home/$USERNAME/$OPENVPN_KEY_FILENAME
89
+                chown $USERNAME:$USERNAME /home/$USERNAME/$OPENVPN_KEY_FILENAME
90
+            fi
91
+        done
92
+    fi
72
 }
93
 }
73
 
94
 
74
 function backup_remote_vpn {
95
 function backup_remote_vpn {
75
-    echo -n ''
96
+    for d in /home/*/ ; do
97
+        USERNAME=$(echo "$d" | awk -F '/' '{print $3}')
98
+        if [ -f /home/$USERNAME/$OPENVPN_KEY_FILENAME ]; then
99
+            cp /home/$USERNAME/$OPENVPN_KEY_FILENAME /etc/openvpn/easy-rsa/keys/${USERNAME}_${OPENVPN_KEY_FILENAME}
100
+        fi
101
+    done
102
+
103
+    function_check backup_directory_to_friend
104
+    backup_directory_to_friend /etc/openvpn/easy-rsa/keys vpn
76
 }
105
 }
77
 
106
 
78
 function restore_remote_vpn {
107
 function restore_remote_vpn {
79
-    echo -n ''
108
+    temp_restore_dir=/root/tempvpn
109
+    restore_directory_from_friend $temp_restore_dir vpn
110
+    if [ -d ${temp_restore_dir} ]; then
111
+        cp -r ${temp_restore_dir}/* /etc/openvpn/easy-rsa/keys
112
+        rm -rf ${temp_restore_dir}
113
+
114
+        for d in /home/*/ ; do
115
+            USERNAME=$(echo "$d" | awk -F '/' '{print $3}')
116
+            if [ -f /etc/openvpn/easy-rsa/keys/${USERNAME}_${OPENVPN_KEY_FILENAME} ]; then
117
+                cp /etc/openvpn/easy-rsa/keys/${USERNAME}_${OPENVPN_KEY_FILENAME} /home/$USERNAME/$OPENVPN_KEY_FILENAME
118
+                chown $USERNAME:$USERNAME /home/$USERNAME/$OPENVPN_KEY_FILENAME
119
+            fi
120
+        done
121
+    fi
80
 }
122
 }
81
 
123
 
82
 function remove_vpn {
124
 function remove_vpn {