From 9d2ca4b592eb309c93860f2fce5d1e14609a7938 Mon Sep 17 00:00:00 2001 From: David Olsen Date: Mon, 7 Oct 2019 10:40:56 +0200 Subject: [PATCH 1/8] Only exclude logs folder from root, not in webdata Restoring should not exclude logs in any folder down the tree. This causes errors when restoring wordpress with certain plugins that have folders named "logs". This change aligns the restore with the backup function https://github.com/serghey-rodin/vesta/blob/master/bin/v-backup-user#L226 You could also omit the exclusion entirely, as this folder you are excluding should never be in the backup. --- bin/v-restore-user | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/v-restore-user b/bin/v-restore-user index bd3d86bb..c7a5bec3 100755 --- a/bin/v-restore-user +++ b/bin/v-restore-user @@ -409,7 +409,7 @@ if [ "$web" != 'no' ] && [ ! -z "$WEB_SYSTEM" ]; then chown $user $tmpdir chmod u+w $HOMEDIR/$user/web/$domain sudo -u $user tar -xzpf $tmpdir/web/$domain/domain_data.tar.gz \ - -C $HOMEDIR/$user/web/$domain/ --exclude=logs/* \ + -C $HOMEDIR/$user/web/$domain/ --exclude=./logs/* \ 2> $HOMEDIR/$user/web/$domain/restore_errors.log if [ -e "$HOMEDIR/$user/web/$domain/restore_errors.log" ]; then chown $user:$user $HOMEDIR/$user/web/$domain/restore_errors.log From 99abd5ed05547a306670bdb332918ab199ced53a Mon Sep 17 00:00:00 2001 From: Josh Marshall Date: Thu, 9 Jan 2020 00:52:10 +1000 Subject: [PATCH 2/8] Bugfix deleting a PostgreSQL database Was just a typo --- func/db.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/func/db.sh b/func/db.sh index 30018065..b0ff73b9 100644 --- a/func/db.sh +++ b/func/db.sh @@ -322,7 +322,7 @@ delete_pgsql_database() { psql_connect $HOST query="REVOKE ALL PRIVILEGES ON DATABASE $database FROM $DBUSER" - psql_qyery "$query" > /dev/null + psql_query "$query" > /dev/null query="DROP DATABASE $database" psql_query "$query" > /dev/null From a9e46047e91a1683b61be7cb833584dff7da1d34 Mon Sep 17 00:00:00 2001 From: dpeca Date: Tue, 23 Jun 2020 20:04:30 +0200 Subject: [PATCH 3/8] Reset UPDATE_SSL_SCRIPT --- bin/v-add-web-domain-ssl | 2 ++ 1 file changed, 2 insertions(+) diff --git a/bin/v-add-web-domain-ssl b/bin/v-add-web-domain-ssl index 43e5cce3..2c0f78ae 100755 --- a/bin/v-add-web-domain-ssl +++ b/bin/v-add-web-domain-ssl @@ -143,6 +143,8 @@ if [ ! -z "$UPDATE_HOSTNAME_SSL" ] && [ "$UPDATE_HOSTNAME_SSL" = "yes" ]; then fi fi +UPDATE_SSL_SCRIPT='' +source $VESTA/conf/vesta.conf if [ ! -z "$UPDATE_SSL_SCRIPT" ]; then eval "$UPDATE_SSL_SCRIPT $user $domain" fi From 8d9e349b23fe85bf496a71b3d6e235b27854efbf Mon Sep 17 00:00:00 2001 From: dpeca Date: Tue, 23 Jun 2020 20:08:59 +0200 Subject: [PATCH 4/8] Dont match subdomains while restoring domain --- bin/v-restore-user | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/v-restore-user b/bin/v-restore-user index bd3d86bb..b1c0c65a 100755 --- a/bin/v-restore-user +++ b/bin/v-restore-user @@ -289,7 +289,7 @@ if [ "$web" != 'no' ] && [ ! -z "$WEB_SYSTEM" ]; then if [ -z "$web" ] || [ "$web" = '*' ]; then domains="$backup_domains" else - echo "$web" |tr ',' '\n' > $tmpdir/selected.txt + echo "$web" | tr ',' '\n' | sed -e "s/^/^/" > $tmpdir/selected.txt domains=$(echo "$backup_domains" |egrep -f $tmpdir/selected.txt) fi From d9e9c643699309594e8769a44ea8dd6e1e22e245 Mon Sep 17 00:00:00 2001 From: dpeca Date: Tue, 23 Jun 2020 20:10:54 +0200 Subject: [PATCH 5/8] Fixing NS parameters in v-add-dns-on-web-alias --- bin/v-add-dns-on-web-alias | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/v-add-dns-on-web-alias b/bin/v-add-dns-on-web-alias index a6a7272c..705594f3 100755 --- a/bin/v-add-dns-on-web-alias +++ b/bin/v-add-dns-on-web-alias @@ -55,7 +55,7 @@ if [ "$domain_lvl" -eq 1 ] || [ "${#top_domain}" -le '6' ]; then fi # Adding top-level domain and then its sub -$BIN/v-add-dns-domain $user $top_domain $ip '' '' '' '' '' $restart >> /dev/null +$BIN/v-add-dns-domain $user $top_domain $ip '' '' '' '' '' '' '' '' $restart >> /dev/null # Checking top-level domain if [ ! -e "$USER_DATA/dns/$top_domain.conf" ]; then From 83d0b9ed90d41a173f9c5b0c34cf5303a118b81e Mon Sep 17 00:00:00 2001 From: dpeca Date: Tue, 23 Jun 2020 20:14:55 +0200 Subject: [PATCH 6/8] Allow quick restarting of nginx It can occur if domain has many aliases, and acme-challenge should be added many times This fix will prevent this error: ``` May 14 21:39:08 server systemd[1]: nginx.service: Start request repeated too quickly. May 14 21:39:08 server systemd[1]: nginx.service: Failed with result 'start-limit-hit'. ``` --- bin/v-restart-proxy | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bin/v-restart-proxy b/bin/v-restart-proxy index 25ab20bf..1e5e98cb 100755 --- a/bin/v-restart-proxy +++ b/bin/v-restart-proxy @@ -50,7 +50,9 @@ if [ -z "$PROXY_SYSTEM" ] || [ "$PROXY_SYSTEM" = 'remote' ]; then fi # Restart system -service $PROXY_SYSTEM restart >/dev/null 2>&1 +# service $PROXY_SYSTEM restart >/dev/null 2>&1 +systemctl reset-failed $PROXY_SYSTEM +systemctl restart $PROXY_SYSTEM > /dev/null 2>&1 if [ $? -ne 0 ]; then send_email_report check_result $E_RESTART "$PROXY_SYSTEM restart failed" From e0ebf729f337805bb0834621476ca14d70e77c50 Mon Sep 17 00:00:00 2001 From: dpeca Date: Tue, 23 Jun 2020 20:20:11 +0200 Subject: [PATCH 7/8] Avoid Let's Encrypt domain validation timeout --- bin/v-add-letsencrypt-domain | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/v-add-letsencrypt-domain b/bin/v-add-letsencrypt-domain index 59d51c61..0e9438ed 100755 --- a/bin/v-add-letsencrypt-domain +++ b/bin/v-add-letsencrypt-domain @@ -208,7 +208,7 @@ for auth in $authz; do if [ "$i" -gt 10 ]; then check_result $E_CONNECT "Let's Encrypt domain validation timeout" fi - sleep 1 + sleep $((i*2)) done if [ "$validation" = 'invalid' ]; then check_result $E_CONNECT "Let's Encrypt domain verification failed" From f74301b19f3f06edb80553574fbb29df489c2ee3 Mon Sep 17 00:00:00 2001 From: dpeca Date: Wed, 19 Aug 2020 12:44:46 +0200 Subject: [PATCH 8/8] Split long TXT entries into 255 chunks --- func/domain.sh | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/func/domain.sh b/func/domain.sh index 713cc52a..fc615e7b 100644 --- a/func/domain.sh +++ b/func/domain.sh @@ -412,6 +412,20 @@ update_domain_zone() { VALUE=$(idn --quiet -a -t "$VALUE") fi + # Split long TXT entries into 255 chunks + if [ "$TYPE" = 'TXT' ]; then + txtlength=${#VALUE} + if [ $txtlength -gt 255 ]; then + if [[ ${VALUE:0:1} = '"' ]]; then + txtlength=$(( $txtlength - 2 )) + VALUE=${VALUE:1:txtlength} + fi + VALUE=$(echo $VALUE | fold -w 255 | xargs -I '$' echo -n ' "$"') + VALUE=${VALUE:1} + VALUE="($VALUE)" + fi + fi + if [ "$SUSPENDED" != 'yes' ]; then eval echo -e "\"$fields\""|sed "s/%quote%/'/g" >> $zn_conf fi