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 bd3d86bbf..c7a5bec3c 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 300180652..b0ff73b93 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 43e5cce31..2c0f78aef 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 bd3d86bbf..b1c0c65a0 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 a6a7272c9..705594f34 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 25ab20bf1..1e5e98cba 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 59d51c615..0e9438ed7 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 713cc52af..fc615e7be 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