|
@@ -2606,6 +2606,12 @@ function create_backup_script {
|
2606
|
2606
|
echo '' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
2607
|
2607
|
fi
|
2608
|
2608
|
|
|
2609
|
+ echo 'if [ -d /etc/letsencrypt ]; then' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2610
|
+ echo ' echo "Backing up Lets Encrypt settings"' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2611
|
+ echo ' backup_directory_to_usb /etc/letsencrypt letsencrypt' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2612
|
+ echo 'fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2613
|
+ echo '' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2614
|
+
|
2609
|
2615
|
if grep -Fxq "install_gnu_social" $COMPLETION_FILE; then
|
2610
|
2616
|
BACKUP_INCLUDES_DATABASES="yes"
|
2611
|
2617
|
echo 'backup_database gnusocial' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
@@ -3211,6 +3217,16 @@ function create_restore_script {
|
3211
|
3217
|
|
3212
|
3218
|
RESTORE_SUBDIR='home/'
|
3213
|
3219
|
if [[ $BACKUP_TYPE != 'obnam' ]]; then
|
|
3220
|
+ RESTORE_SUBDIR='usb/backup/letsencrypt/'
|
|
3221
|
+ fi
|
|
3222
|
+ echo 'if [ -d $USB_MOUNT/backup/letsencrypt ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3223
|
+ echo ' echo "Restoring Lets Encrypt settings"' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3224
|
+ echo ' restore_directory_from_usb / letsencrypt' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3225
|
+ echo 'fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3226
|
+ echo '' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3227
|
+
|
|
3228
|
+ RESTORE_SUBDIR='home/'
|
|
3229
|
+ if [[ $BACKUP_TYPE != 'obnam' ]]; then
|
3214
|
3230
|
RESTORE_SUBDIR='usb/backup/mutt/'
|
3215
|
3231
|
fi
|
3216
|
3232
|
echo 'if [ -d $USB_MOUNT/backup/mutt ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
@@ -4090,6 +4106,12 @@ function backup_to_friends_servers {
|
4090
|
4106
|
backup_database_to_friend
|
4091
|
4107
|
echo '' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
4092
|
4108
|
|
|
4109
|
+ echo 'if [ -d /etc/letsencrypt ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4110
|
+ echo ' echo "Backing up Lets Encrypt settings"' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4111
|
+ echo ' backup_directory_to_friend /etc/letsencrypt letsencrypt' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4112
|
+ echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4113
|
+ echo '' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4114
|
+
|
4093
|
4115
|
if grep -Fxq "install_gnu_social" $COMPLETION_FILE; then
|
4094
|
4116
|
BACKUP_INCLUDES_DATABASES="yes"
|
4095
|
4117
|
echo 'backup_database_to_friend gnusocial' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
@@ -4770,6 +4792,16 @@ function restore_from_friend {
|
4770
|
4792
|
|
4771
|
4793
|
RESTORE_SUBDIR='home/'
|
4772
|
4794
|
if [[ $BACKUP_TYPE != 'obnam' ]]; then
|
|
4795
|
+ RESTORE_SUBDIR='remoterestore/backup/letsencrypt/'
|
|
4796
|
+ fi
|
|
4797
|
+ echo 'if [ -d $SERVER_DIRECTORY/backup/letsencrypt ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
4798
|
+ echo ' echo "Restoring Lets Encrypt settings"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
4799
|
+ echo ' restore_directory_from_friend / letsencrypt' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
4800
|
+ echo 'fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
4801
|
+ echo '' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
4802
|
+
|
|
4803
|
+ RESTORE_SUBDIR='home/'
|
|
4804
|
+ if [[ $BACKUP_TYPE != 'obnam' ]]; then
|
4773
|
4805
|
RESTORE_SUBDIR='remoterestore/backup/mutt/'
|
4774
|
4806
|
fi
|
4775
|
4807
|
echo 'for d in $SERVER_DIRECTORY/backup/mutt/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
@@ -7920,6 +7952,44 @@ function install_web_server {
|
7920
|
7952
|
echo 'install_web_server' >> $COMPLETION_FILE
|
7921
|
7953
|
}
|
7922
|
7954
|
|
|
7955
|
+function install_letsencrypt {
|
|
7956
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_MESH" ]]; then
|
|
7957
|
+ return
|
|
7958
|
+ fi
|
|
7959
|
+ if grep -Fxq "install_letsencrypt" $COMPLETION_FILE; then
|
|
7960
|
+ return
|
|
7961
|
+ fi
|
|
7962
|
+ #apt-get -y install python-pip git
|
|
7963
|
+ #pip install -U setuptools
|
|
7964
|
+ #pip install --upgrade cffi
|
|
7965
|
+ cd $INSTALL_DIR
|
|
7966
|
+
|
|
7967
|
+ # This is experimental developer preview and I hope at some stage
|
|
7968
|
+ # there will be a debian package for it.
|
|
7969
|
+
|
|
7970
|
+ # obtain the repo
|
|
7971
|
+ if [ ! -d $INSTALL_DIR/letsencrypt ]; then
|
|
7972
|
+ git clone https://github.com/letsencrypt/letsencrypt
|
|
7973
|
+ if [ ! -d $INSTALL_DIR/letsencrypt ]; then
|
|
7974
|
+ exit 76283
|
|
7975
|
+ fi
|
|
7976
|
+ else
|
|
7977
|
+ cd $INSTALL_DIR/letsencrypt
|
|
7978
|
+ git stash
|
|
7979
|
+ git pull
|
|
7980
|
+ fi
|
|
7981
|
+
|
|
7982
|
+ cd $INSTALL_DIR/letsencrypt
|
|
7983
|
+ # TODO this requires user interaction - is there a non-interactive mode?
|
|
7984
|
+ ./letsencrypt-auto --agree-dev-preview --server https://acme-v01.api.letsencrypt.org/directory certonly
|
|
7985
|
+ if [ ! "$?" = "0" ]; then
|
|
7986
|
+ echo 'Failed to install letsencrypt'
|
|
7987
|
+ exit 63216
|
|
7988
|
+ fi
|
|
7989
|
+
|
|
7990
|
+ echo 'install_letsencrypt' >> $COMPLETION_FILE
|
|
7991
|
+}
|
|
7992
|
+
|
7923
|
7993
|
function configure_php {
|
7924
|
7994
|
sed -i "s/memory_limit = 128M/memory_limit = ${MAX_PHP_MEMORY}M/g" /etc/php5/fpm/php.ini
|
7925
|
7995
|
sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/g' /etc/php5/fpm/php.ini
|
|
@@ -11116,6 +11186,7 @@ encrypt_all_email
|
11116
|
11186
|
import_email
|
11117
|
11187
|
script_for_attaching_usb_drive
|
11118
|
11188
|
install_web_server
|
|
11189
|
+#install_letsencrypt
|
11119
|
11190
|
configure_firewall_for_web_server
|
11120
|
11191
|
install_owncloud
|
11121
|
11192
|
install_owncloud_music_app
|