Просмотр исходного кода

Merge branch 'main' into fix/1767-web-alias-limit-broken

Jaap Marcus 4 лет назад
Родитель
Сommit
c53bf1a1e1

+ 1 - 1
bin/v-add-sys-rainloop

@@ -79,7 +79,7 @@ if [ "$UPDATE" == "no" ]; then
     mkdir $RL_CONFIG_DIR
     
     cd "$RL_INSTALL_DIR"
-    [ ! -f "${RC_INSTALL_DIR}/${RC_FILE}" ] && wget "$RL_URL" --quiet -O "${RL_INSTALL_DIR}/${RL_FILE}"
+    [ ! -f "${RC_INSTALL_DIR}/${RC_FILE}" ] && wget "$RL_URL" --retry-connrefused --quiet -O "${RL_INSTALL_DIR}/${RL_FILE}"
     
     key=$(openssl rand -hex 4);
     

+ 1 - 1
bin/v-add-sys-roundcube

@@ -86,7 +86,7 @@ if [ "$UPDATE" == "no" ]; then
     mkdir -p $RC_CONFIG_DIR/
     
     cd "$RC_INSTALL_DIR"
-    [ ! -f "${RC_INSTALL_DIR}/${RC_FILE}" ] && wget "$RC_URL" --quiet -O "${RC_INSTALL_DIR}/${RC_FILE}"
+    [ ! -f "${RC_INSTALL_DIR}/${RC_FILE}" ] && wget "$RC_URL" --retry-connrefused --quiet -O "${RC_INSTALL_DIR}/${RC_FILE}"
     
     tar xzf $RC_FILE
     cp -rf $RC_EXTRACT/* $RC_INSTALL_DIR

+ 1 - 4
bin/v-add-web-domain

@@ -52,10 +52,7 @@ check_args '2' "$#" 'USER DOMAIN [IP] [RESTART] [ALIASES] [PROXY_EXTENSIONS]'
 is_format_valid 'user' 'domain' 'aliases' 'ip' 'proxy_ext'
 is_object_valid 'user' 'USER' "$user"
 is_object_unsuspended 'user' 'USER' "$user"
-# Make the new aliases are also counted for when creating a new domain. 
-ALIAS=$aliases
-is_package_full 'WEB_DOMAINS'
-is_package_full 'WEB_ALIASES'
+is_package_full 'WEB_DOMAINS' 'WEB_ALIASES'
 
 if [ "$($BIN/v-list-web-domain $user $domain_utf plain |cut -f 1) " != "$domain" ]; then
     is_domain_new 'web' "$domain_utf,$aliases"

+ 0 - 3
bin/v-add-web-domain-alias

@@ -41,9 +41,6 @@ format_aliases
 #                    Verifications                         #
 #----------------------------------------------------------#
 
-# Parsing domain values as they are used to get the current alias usage
-
-
 if [ -z "$aliases" ]; then
     check_result $E_INVALID "invalid alias format: empty"
 fi

+ 3 - 1
bin/v-delete-mail-domain

@@ -75,7 +75,9 @@ fi
 
 # Delete webmail configuration if it exists
 if [ ! -z "$WEB_SYSTEM" ] || [ ! -z "$PROXY_SYSTEM" ]; then
-    $BIN/v-delete-mail-domain-webmail $user $domain 'yes'
+    if [ ! -z "$IMAP_SYSTEM" ]; then
+        $BIN/v-delete-mail-domain-webmail $user $domain 'yes'    
+    fi
 fi
 
 #----------------------------------------------------------#

+ 0 - 8
func/domain.sh

@@ -268,10 +268,6 @@ add_web_config() {
         rm -f /etc/$1/conf.d/domains/$domain.ssl.conf
         ln -s $conf /etc/$1/conf.d/domains/$domain.ssl.conf
 
-        # Clear old configurations
-        rm -f $HOMEDIR/$user/conf/web/$domain.*
-        rm -f $HOMEDIR/$user/conf/web/ssl.$domain.*
-
         # Rename/Move extra SSL config files
         for f in $(ls $HOMEDIR/$user/conf/web/*.$domain.conf* 2>/dev/null); do
             if [[ $f =~ .*/s(nginx|apache2)\.$domain\.conf(.*) ]]; then
@@ -287,10 +283,6 @@ add_web_config() {
     else
         rm -f /etc/$1/conf.d/domains/$domain.conf
         ln -s $conf /etc/$1/conf.d/domains/$domain.conf
-
-        # Clear old configurations
-        rm -f $HOMEDIR/$user/conf/web/$domain.*
-
         # Rename/Move extra config files
         for f in $(ls $HOMEDIR/$user/conf/web/*.$domain.conf* 2>/dev/null); do
             if [[ $f =~ .*/(nginx|apache2)\.$domain\.conf(.*) ]]; then

+ 1 - 1
func/main.sh

@@ -169,7 +169,7 @@ is_system_enabled() {
 is_package_full() {
     case "$1" in
         WEB_DOMAINS) used=$(wc -l $USER_DATA/web.conf);;
-        WEB_ALIASES) used=$(echo $ALIAS |tr ',' '\n' | wc -l );;
+        WEB_ALIASES) used=$(echo $aliases |tr ',' '\n' |wc -l);;
         DNS_DOMAINS) used=$(wc -l $USER_DATA/dns.conf);;
         DNS_RECORDS) used=$(wc -l $USER_DATA/dns/$domain.conf);;
         MAIL_DOMAINS) used=$(wc -l $USER_DATA/mail.conf);;

+ 27 - 27
install/hst-install-debian.sh

@@ -1201,6 +1201,31 @@ rm /tmp/hst.pem
 # Install dhparam.pem
 cp -f $HESTIA_INSTALL_DIR/ssl/dhparam.pem /etc/ssl
 
+# Deleting old admin user
+if [ ! -z "$(grep ^admin: /etc/passwd)" ] && [ "$force" = 'yes' ]; then
+    chattr -i /home/admin/conf > /dev/null 2>&1
+    userdel -f admin > /dev/null 2>&1
+    chattr -i /home/admin/conf > /dev/null 2>&1
+    mv -f /home/admin  $hst_backups/home/ > /dev/null 2>&1
+    rm -f /tmp/sess_* > /dev/null 2>&1
+fi
+if [ ! -z "$(grep ^admin: /etc/group)" ] && [ "$force" = 'yes' ]; then
+    groupdel admin > /dev/null 2>&1
+fi
+
+# Enable sftp jail
+echo "[ * ] Enable SFTP jail..."
+$HESTIA/bin/v-add-sys-sftp-jail > /dev/null 2>&1
+check_result $? "can't enable sftp jail"
+
+# Adding Hestia admin account
+$HESTIA/bin/v-add-user admin $vpass $email default "System Administrator"
+check_result $? "can't create admin user"
+$HESTIA/bin/v-change-user-shell admin nologin
+$HESTIA/bin/v-change-user-role admin admin
+$HESTIA/bin/v-change-user-language admin $lang
+$HESTIA/bin/v-change-sys-config-value 'POLICY_SYSTEM_PROTECTED_ADMIN' 'yes'
+
 #----------------------------------------------------------#
 #                     Configure Nginx                      #
 #----------------------------------------------------------#
@@ -1422,7 +1447,7 @@ if [ "$mysql" = 'yes' ]; then
     echo "[ * ] Installing phpMyAdmin version v$pma_v..."
 
     # Download latest phpmyadmin release
-    wget --quiet https://files.phpmyadmin.net/phpMyAdmin/$pma_v/phpMyAdmin-$pma_v-all-languages.tar.gz
+    wget --quiet --retry-connrefused https://files.phpmyadmin.net/phpMyAdmin/$pma_v/phpMyAdmin-$pma_v-all-languages.tar.gz
 
     # Unpack files
     tar xzf phpMyAdmin-$pma_v-all-languages.tar.gz
@@ -1695,34 +1720,9 @@ else
 fi
 
 #----------------------------------------------------------#
-#                   Configure Admin User                   #
+#                   Configure IP                           #
 #----------------------------------------------------------#
 
-# Deleting old admin user
-if [ ! -z "$(grep ^admin: /etc/passwd)" ] && [ "$force" = 'yes' ]; then
-    chattr -i /home/admin/conf > /dev/null 2>&1
-    userdel -f admin > /dev/null 2>&1
-    chattr -i /home/admin/conf > /dev/null 2>&1
-    mv -f /home/admin  $hst_backups/home/ > /dev/null 2>&1
-    rm -f /tmp/sess_* > /dev/null 2>&1
-fi
-if [ ! -z "$(grep ^admin: /etc/group)" ] && [ "$force" = 'yes' ]; then
-    groupdel admin > /dev/null 2>&1
-fi
-
-# Enable sftp jail
-echo "[ * ] Enable SFTP jail..."
-$HESTIA/bin/v-add-sys-sftp-jail > /dev/null 2>&1
-check_result $? "can't enable sftp jail"
-
-# Adding Hestia admin account
-$HESTIA/bin/v-add-user admin $vpass $email default "System Administrator"
-check_result $? "can't create admin user"
-$HESTIA/bin/v-change-user-shell admin nologin
-$HESTIA/bin/v-change-user-role admin admin
-$HESTIA/bin/v-change-user-language admin $lang
-$HESTIA/bin/v-change-sys-config-value 'POLICY_SYSTEM_PROTECTED_ADMIN' 'yes'
-
 # Roundcube permissions fix
 if [ "$exim" = 'yes' ] && [ "$mysql" = 'yes' ]; then
     if [ ! -d "/var/log/roundcube" ]; then

+ 28 - 28
install/hst-install-ubuntu.sh

@@ -1235,6 +1235,32 @@ fi
 # Install dhparam.pem
 cp -f $HESTIA_INSTALL_DIR/ssl/dhparam.pem /etc/ssl
 
+# Deleting old admin user
+if [ ! -z "$(grep ^admin: /etc/passwd)" ] && [ "$force" = 'yes' ]; then
+    chattr -i /home/admin/conf > /dev/null 2>&1
+    userdel -f admin > /dev/null 2>&1
+    chattr -i /home/admin/conf > /dev/null 2>&1
+    mv -f /home/admin  $hst_backups/home/ > /dev/null 2>&1
+    rm -f /tmp/sess_* > /dev/null 2>&1
+fi
+if [ ! -z "$(grep ^admin: /etc/group)" ] && [ "$force" = 'yes' ]; then
+    groupdel admin > /dev/null 2>&1
+fi
+
+# Enable sftp jail
+echo "[ * ] Enable SFTP jail..."
+$HESTIA/bin/v-add-sys-sftp-jail > /dev/null 2>&1
+check_result $? "can't enable sftp jail"
+
+# Adding Hestia admin account
+echo "[ * ] Create admin account..."
+$HESTIA/bin/v-add-user admin $vpass $email default "System Administrator"
+check_result $? "can't create admin user"
+$HESTIA/bin/v-change-user-shell admin nologin
+$HESTIA/bin/v-change-user-role admin admin
+$HESTIA/bin/v-change-user-language admin $lang
+$HESTIA/bin/v-change-sys-config-value 'POLICY_SYSTEM_PROTECTED_ADMIN' 'yes'
+
 
 #----------------------------------------------------------#
 #                     Configure Nginx                      #
@@ -1451,7 +1477,7 @@ if [ "$mysql" = 'yes' ]; then
     echo "[ * ] Installing phpMyAdmin version v$pma_v..."
 
     # Download latest phpmyadmin release
-    wget --quiet https://files.phpmyadmin.net/phpMyAdmin/$pma_v/phpMyAdmin-$pma_v-all-languages.tar.gz
+    wget --retry-connrefused --quiet https://files.phpmyadmin.net/phpMyAdmin/$pma_v/phpMyAdmin-$pma_v-all-languages.tar.gz
 
     # Unpack files
     tar xzf phpMyAdmin-$pma_v-all-languages.tar.gz
@@ -1716,35 +1742,9 @@ fi
 
 
 #----------------------------------------------------------#
-#                   Configure Admin User                   #
+#                   Configure IP                           #
 #----------------------------------------------------------#
 
-# Deleting old admin user
-if [ ! -z "$(grep ^admin: /etc/passwd)" ] && [ "$force" = 'yes' ]; then
-    chattr -i /home/admin/conf > /dev/null 2>&1
-    userdel -f admin > /dev/null 2>&1
-    chattr -i /home/admin/conf > /dev/null 2>&1
-    mv -f /home/admin  $hst_backups/home/ > /dev/null 2>&1
-    rm -f /tmp/sess_* > /dev/null 2>&1
-fi
-if [ ! -z "$(grep ^admin: /etc/group)" ] && [ "$force" = 'yes' ]; then
-    groupdel admin > /dev/null 2>&1
-fi
-
-# Enable sftp jail
-echo "[ * ] Enable SFTP jail..."
-$HESTIA/bin/v-add-sys-sftp-jail > /dev/null 2>&1
-check_result $? "can't enable sftp jail"
-
-# Adding Hestia admin account
-echo "[ * ] Create admin account..."
-$HESTIA/bin/v-add-user admin $vpass $email default "System Administrator"
-check_result $? "can't create admin user"
-$HESTIA/bin/v-change-user-shell admin nologin
-$HESTIA/bin/v-change-user-role admin admin
-$HESTIA/bin/v-change-user-language admin $lang
-$HESTIA/bin/v-change-sys-config-value 'POLICY_SYSTEM_PROTECTED_ADMIN' 'yes'
-
 # Configuring system IPs
 $HESTIA/bin/v-update-sys-ip > /dev/null 2>&1
 

+ 2 - 2
install/upgrade/versions/1.4.0.sh

@@ -12,8 +12,7 @@ if [ -e "/etc/nginx/nginx.conf" ]; then
     if [ -z "$check" ]; then 
         echo "[ * ] Enabling nginx FastCGI cache support..."
         sed  -i 's/# Cache bypass/# FastCGI cache\n    fastcgi_cache_path \/var\/cache\/nginx\/micro levels=1:2 keys_zone=microcache:10m max_size=1024m inactive=30m;\n    fastcgi_cache_key \"$scheme$request_method$host$request_uri\";\n    fastcgi_cache_methods GET HEAD;\n    fastcgi_cache_use_stale updating error timeout invalid_header http_500 http_503;\n    fastcgi_ignore_headers Cache-Control Expires Set-Cookie;\n    add_header X-FastCGI-Cache \$upstream_cache_status;\n\n    # Cache bypass/g' /etc/nginx/nginx.conf
-sed  -i 's/    fastcgi_cache_lock_timeout      5s;/    fastcgi_cache_lock_timeout      5s;\n    fastcgi_cache_background_update on;\n    fastcgi_cache_revalidate        on;/g' /root/nginx.conf
-
+        sed  -i 's/    fastcgi_cache_lock_timeout      5s;/    fastcgi_cache_lock_timeout      5s;\n    fastcgi_cache_background_update on;\n    fastcgi_cache_revalidate        on;/g' /etc/nginx/nginx.conf
     fi
 fi
 
@@ -167,6 +166,7 @@ if [ -d "$HESTIA/web/images/webapps/" ]; then
     rm -rf $HESTIA/web/src/app/WebApp/Installers/PrestashopSetup.php
     rm -rf $HESTIA/web/src/app/WebApp/Installers/SymfonySetup.php
     rm -rf $HESTIA/web/src/app/WebApp/Installers/WordpressSetup.php
+    rm -rf $HESTIA/web/src/app/WebApp/Installers/Joomla
 fi
 
 

+ 7 - 5
web/add/mail/index.php

@@ -95,11 +95,13 @@ if (!empty($_POST['ok'])) {
         }
     }
     
-    if (empty($_POST['v_webmail'])) {
-        if (empty($_SESSION['error_msg'])) {
-        exec (HESTIA_CMD."v-delete-mail-domain-webmail ".$user." ".$v_domain." yes", $output, $return_var);
-        check_return_code($return_var,$output);
-        unset($output);
+    if (!empty($_SESSION['IMAP_SYSTEM']) && !empty($_SESSION['WEBMAIL_SYSTEM'])) {
+        if (empty($_POST['v_webmail'])) {
+            if (empty($_SESSION['error_msg'])) {
+            exec (HESTIA_CMD."v-delete-mail-domain-webmail ".$user." ".$v_domain." yes", $output, $return_var);
+            check_return_code($return_var,$output);
+            unset($output);
+            }
         }
     }
     

+ 2 - 2
web/delete/key/index.php

@@ -12,12 +12,12 @@ if ((!isset($_GET['token'])) || ($_SESSION['token'] != $_GET['token'])) {
 }
 
 if (($_SESSION['userContext'] === 'admin') && (!empty($_GET['user']))) {
-    $v_user = $_GET['user'];
+    $user = $_GET['user'];
 }
 
 if (!empty($_GET['key'])) {
     $v_key = escapeshellarg(trim($_GET['key']));
-    $v_user = escapeshellarg(trim($v_user));
+    $v_user = escapeshellarg(trim($user));
     exec (HESTIA_CMD."v-delete-user-ssh-key ".$v_user." ".$v_key);
     check_return_code($return_var,$output);
 }

+ 8 - 6
web/edit/mail/index.php

@@ -236,12 +236,14 @@ if ((!empty($_POST['save'])) && (!empty($_GET['domain'])) && (empty($_GET['accou
         }
     }
     
-    if (empty($_POST['v_webmail'])) {
-        if (empty($_SESSION['error_msg'])) {
-        exec (HESTIA_CMD."v-delete-mail-domain-webmail ".$user." ".$v_domain." yes", $output, $return_var);
-        check_return_code($return_var,$output);
-        $v_webmail = "";
-        unset($output);
+    if (!empty($_SESSION['IMAP_SYSTEM']) && !empty($_SESSION['WEBMAIL_SYSTEM'])) {
+        if (empty($_POST['v_webmail'])) {
+            if (empty($_SESSION['error_msg'])) {
+            exec (HESTIA_CMD."v-delete-mail-domain-webmail ".$user." ".$v_domain." yes", $output, $return_var);
+            check_return_code($return_var,$output);
+            $v_webmail = "";
+            unset($output);
+            }
         }
     }
     

Разница между файлами не показана из-за своего большого размера
+ 0 - 0
web/locale/languages.json


+ 0 - 32
web/src/app/WebApp/Installers/Joomla/JoomlaSetup.php

@@ -1,32 +0,0 @@
-<?php
-
-namespace Hestia\WebApp\Installers\Joomla;
-
-use \Hestia\WebApp\Installers\BaseSetup as BaseSetup;
-
-class JoomlaSetup extends BaseSetup {
-
-    protected $appname = 'joomla';
-    
-    protected $appInfo = [ 
-        'name' => 'Joomla',
-        'group' => 'cms',
-        'enabled' => false,
-        'version' => 'latest',
-        'thumbnail' => 'joomla-thumb.png'
-    ];
-    
-    protected $config = [
-        'form' => [
-        ],
-        'database' => true,
-        'resources' => [
-        
-        ],
-    ];
-
-    public function install(array $options=null) : bool
-    {
-        exit( "Installer missing" );
-    }
-}

BIN
web/src/app/WebApp/Installers/Joomla/joomla-thumb.png


Некоторые файлы не были показаны из-за большого количества измененных файлов