From fea7e8471e6760568dbbc17bc7b06aff69e766bf Mon Sep 17 00:00:00 2001 From: Michal Slepko Date: Thu, 1 Dec 2016 22:25:12 +0000 Subject: [PATCH 01/45] Added missing Polish translations --- web/inc/i18n/pl.php | 59 +++++++++++++++++++++++---------------------- 1 file changed, 30 insertions(+), 29 deletions(-) diff --git a/web/inc/i18n/pl.php b/web/inc/i18n/pl.php index 77a1a835..9f82a63b 100644 --- a/web/inc/i18n/pl.php +++ b/web/inc/i18n/pl.php @@ -2,6 +2,7 @@ /** * Plik językowy panelu Vesta * Marek Pikuła + * Michal Slepko */ $LANG['pl'] = array( @@ -707,30 +708,30 @@ $LANG['pl'] = array( 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Przeglądaj, kopiuj, edytuj i zarządzaj wszystkimi plikami należącymi do twojej domeny przy użyciu kompletnego Menedżera Plików.', 'This is a commercial module, you would need to purchace license key to enable it.' => 'To jest moduł komercyjny. Żeby go aktywować trzeba zakupić klucz licencyjny.', - 'Minutes' => 'Minutes', - 'Hourly' => 'Hourly', - 'Run Command' => 'Run Command', - 'every month' => 'every month', - 'every odd month' => 'every odd month', - 'every even month' => 'every even month', - 'every day' => 'every day', - 'every odd day' => 'every odd day', - 'every even day' => 'every even day', - 'weekdays (5 days)' => 'weekdays (5 days)', - 'weekend (2 days)' => 'weekend (2 days)', - 'Monday' => 'Monday', - 'Tuesday' => 'Tuesday', - 'Wednesday' => 'Wednesday', - 'Thursday' => 'Thursday', - 'Friday' => 'Friday', - 'Saturday' => 'Saturday', - 'Sunday' => 'Sunday', - 'every hour' => 'every hour', - 'every two hours' => 'every two hours', - 'every minute' => 'every minute', - 'every two minutes' => 'every two minutes', - 'every' => 'every', - 'Generate' => 'Generate', + 'Minutes' => 'Minuty', + 'Hourly' => 'Godziny', + 'Run Command' => 'Komenda', + 'every month' => 'co miesiąc', + 'every odd month' => 'w nieparzyste miesiące', + 'every even month' => 'w parzyste miesiące', + 'every day' => 'codziennie', + 'every odd day' => 'w dni nieparzyste', + 'every even day' => 'w dni parzyste', + 'weekdays (5 days)' => 'dni robocze (5 dni)', + 'weekend (2 days)' => 'weekend (2 dni)', + 'Monday' => 'Poniedziałek', + 'Tuesday' => 'Wtorek', + 'Wednesday' => 'Środa', + 'Thursday' => 'Czwartek', + 'Friday' => 'Piątek', + 'Saturday' => 'Sobota', + 'Sunday' => 'Niedziela', + 'every hour' => 'co godzinę', + 'every two hours' => 'co 2 godziny', + 'every minute' => 'co minutę', + 'every two minutes' => 'co 2 minuty', + 'every' => 'każdy', + 'Generate' => 'Generuj', 'webalizer' => 'webalizer', 'awstats' => 'awstats', @@ -744,13 +745,13 @@ $LANG['pl'] = array( 'PUB_KEY' => 'PUB_KEY', 'ISSUER' => 'ISSUER', - 'Use server hostname' => 'Use server hostname', - 'Use domain hostname' => 'Use domain hostname', + 'Use server hostname' => 'Użyj hostname serwera', + 'Use domain hostname' => 'Użyj domeny serwera', 'Use STARTTLS' => 'Use STARTTLS', 'Use SSL' => 'Use SSL', - 'No encryption' => 'No encryption', - 'Do not use encryption' => 'Do not use encryption', + 'No encryption' => 'Brak szyfrowania', + 'Do not use encryption' => 'Nie korzystaj z szyfrowania', - 'maximum characters length, including prefix' => 'maximum %s characters length, including prefix', + 'maximum characters length, including prefix' => 'maksymalna %s ilość znaków, łącznie z prefiksem', ); From 3fa2133a46fd32a3c58d99aa920e29e8f91208cd Mon Sep 17 00:00:00 2001 From: Michal Slepko Date: Fri, 2 Dec 2016 21:06:08 +0000 Subject: [PATCH 02/45] Added additional domain parameter formatting when adding SSL for domain --- bin/v-add-web-domain-ssl | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/bin/v-add-web-domain-ssl b/bin/v-add-web-domain-ssl index fa8de5c6..6b66aeb5 100755 --- a/bin/v-add-web-domain-ssl +++ b/bin/v-add-web-domain-ssl @@ -16,12 +16,25 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 ssl_dir=$3 ssl_home=${4-same} restart="$5" +# Additional argument formatting +if [[ "$domain" =~ [[:upper:]] ]]; then + domain=$(echo "$domain" |tr '[:upper:]' '[:lower:]') +fi +if [[ "$domain" =~ ^www\..* ]]; then + domain=$(echo "$domain" |sed -e "s/^www.//") +fi +if [[ "$domain" =~ .*\.$ ]]; then + domain=$(echo "$domain" |sed -e "s/\.$//") +fi + +domain=$(idn -t --quiet -u "$domain" ) +domain_idn=$(idn -t --quiet -a "$domain") + # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh From 70d0ca89d8038be6fe610ba1383bc4321ceff832 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Tue, 13 Dec 2016 12:37:41 +0200 Subject: [PATCH 03/45] added vim-common for LE account registration support --- install/vst-install-rhel.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/install/vst-install-rhel.sh b/install/vst-install-rhel.sh index 88bca352..7b8e4d85 100755 --- a/install/vst-install-rhel.sh +++ b/install/vst-install-rhel.sh @@ -27,7 +27,8 @@ if [ "$release" -eq 7 ]; then postgresql postgresql-server postgresql-contrib phpPgAdmin e2fsprogs openssh-clients ImageMagick curl mc screen ftp zip unzip flex sqlite pcre sudo bc jwhois mailx lsof tar telnet rrdtool net-tools ntp GeoIP freetype - fail2ban rsyslog iptables-services which vesta vesta-nginx vesta-php expect" + fail2ban rsyslog iptables-services which vesta vesta-nginx vesta-php + vim-common expect" else software="nginx httpd mod_ssl mod_ruid2 mod_fcgid mod_extract_forwarded php php-common php-cli php-bcmath php-gd php-imap php-mbstring php-mcrypt @@ -37,7 +38,7 @@ else postgresql-server postgresql-contrib phpPgAdmin e2fsprogs openssh-clients ImageMagick curl mc screen ftp zip unzip flex sqlite pcre sudo bc jwhois mailx lsof tar telnet rrdtool net-tools ntp GeoIP freetype fail2ban - which vesta vesta-nginx vesta-php expect" + which vesta vesta-nginx vesta-php vim-common expect" fi # Defining help function From fa4b66f8c73aa26475c491f2efbbf65ad335a8a3 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Tue, 13 Dec 2016 15:01:16 +0200 Subject: [PATCH 04/45] creating le pipe in order to avoid std out errors --- bin/v-add-letsencrypt-domain | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/bin/v-add-letsencrypt-domain b/bin/v-add-letsencrypt-domain index 9b900b71..602c3c24 100755 --- a/bin/v-add-letsencrypt-domain +++ b/bin/v-add-letsencrypt-domain @@ -51,6 +51,7 @@ get_domain_values 'web' # Registering LetsEncrypt user account $BIN/v-add-letsencrypt-user $user if [ "$?" -ne 0 ]; then + touch $VESTA/data/queue/letsencrypt.pipe sed -i "/ $domain /d" $VESTA/data/queue/letsencrypt.pipe send_notice "LETSENCRYPT" "Account registration failed" check_result $E_CONNECT "LE account registration" >/dev/null @@ -65,6 +66,7 @@ i=1 for alias in $(echo $domain,$aliases |tr ',' '\n' |sort -u); do $BIN/v-check-letsencrypt-domain $user $alias if [ "$?" -ne 0 ]; then + touch $VESTA/data/queue/letsencrypt.pipe sed -i "/ $domain /d" $VESTA/data/queue/letsencrypt.pipe send_notice "LETSENCRYPT" "$alias validation failed" check_result $E_INVALID "LE domain validation" >/dev/null @@ -72,6 +74,7 @@ for alias in $(echo $domain,$aliases |tr ',' '\n' |sort -u); do # Checking LE limits per account if [ "$i" -gt 100 ]; then + touch $VESTA/data/queue/letsencrypt.pipe sed -i "/ $domain /d" $VESTA/data/queue/letsencrypt.pipe send_notice 'LETSENCRYPT' 'Limit of domains per account is reached' check_result $E_LIMIT "LE can't sign more than 100 domains" @@ -86,6 +89,7 @@ ssl_dir=$($BIN/v-generate-ssl-cert "$domain" "$email" "US" "California" \ # Signing CSR crt=$($BIN/v-sign-letsencrypt-csr $user $domain $ssl_dir) if [ "$?" -ne 0 ]; then + touch $VESTA/data/queue/letsencrypt.pipe sed -i "/ $domain /d" $VESTA/data/queue/letsencrypt.pipe send_notice "LETSENCRYPT" "$alias validation failed" check_result "$E_INVALID" "LE $domain validation" @@ -107,6 +111,7 @@ fi $BIN/v-delete-web-domain-ssl $user $domain >/dev/null 2>&1 $BIN/v-add-web-domain-ssl $user $domain $ssl_dir if [ "$?" -ne '0' ]; then + touch $VESTA/data/queue/letsencrypt.pipe sed -i "/ $domain /d" $VESTA/data/queue/letsencrypt.pipe send_notice 'LETSENCRYPT' "$domain certificate installation failed" check_result $? "SSL install" >/dev/null @@ -141,6 +146,7 @@ fi send_notice 'LETSENCRYPT' "$domain SSL has been installed successfully" # Deleteing task from queue +touch $VESTA/data/queue/letsencrypt.pipe sed -i "/ $domain /d" $VESTA/data/queue/letsencrypt.pipe # Logging From 8969cad0c8d914448766fab0c2bb4afa4693b596 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Tue, 13 Dec 2016 15:53:57 +0200 Subject: [PATCH 05/45] Yakkety Yak configs --- install/ubuntu/16.10/apache2/apache2.conf | 86 ++ install/ubuntu/16.10/apache2/status.conf | 8 + install/ubuntu/16.10/bind/named.conf | 12 + install/ubuntu/16.10/clamav/clamd.conf | 61 ++ install/ubuntu/16.10/deb_signing.key | 30 + .../ubuntu/16.10/dovecot/conf.d/10-auth.conf | 4 + .../16.10/dovecot/conf.d/10-logging.conf | 1 + .../ubuntu/16.10/dovecot/conf.d/10-mail.conf | 4 + .../16.10/dovecot/conf.d/10-master.conf | 29 + .../ubuntu/16.10/dovecot/conf.d/10-ssl.conf | 5 + .../ubuntu/16.10/dovecot/conf.d/20-imap.conf | 58 ++ .../ubuntu/16.10/dovecot/conf.d/20-pop3.conf | 91 ++ .../dovecot/conf.d/auth-passwdfile.conf.ext | 9 + install/ubuntu/16.10/dovecot/dovecot.conf | 24 + install/ubuntu/16.10/exim/dnsbl.conf | 2 + install/ubuntu/16.10/exim/exim4.conf.template | 382 ++++++++ install/ubuntu/16.10/exim/spam-blocks.conf | 0 .../ubuntu/16.10/fail2ban/action.d/vesta.conf | 9 + .../ubuntu/16.10/fail2ban/filter.d/vesta.conf | 10 + install/ubuntu/16.10/fail2ban/jail.local | 39 + install/ubuntu/16.10/firewall/ports.conf | 17 + install/ubuntu/16.10/firewall/rules.conf | 11 + install/ubuntu/16.10/logrotate/apache2 | 19 + install/ubuntu/16.10/logrotate/dovecot | 12 + install/ubuntu/16.10/logrotate/nginx | 13 + install/ubuntu/16.10/logrotate/vesta | 7 + install/ubuntu/16.10/mysql/my-large.cnf | 41 + install/ubuntu/16.10/mysql/my-medium.cnf | 40 + install/ubuntu/16.10/mysql/my-small.cnf | 40 + install/ubuntu/16.10/nginx/nginx.conf | 134 +++ install/ubuntu/16.10/nginx/phpmyadmin.inc | 18 + install/ubuntu/16.10/nginx/phppgadmin.inc | 11 + install/ubuntu/16.10/nginx/status.conf | 9 + install/ubuntu/16.10/nginx/webmail.inc | 15 + install/ubuntu/16.10/packages/default.pkg | 18 + install/ubuntu/16.10/packages/gainsboro.pkg | 18 + install/ubuntu/16.10/packages/palegreen.pkg | 18 + install/ubuntu/16.10/packages/slategrey.pkg | 18 + install/ubuntu/16.10/pga/config.inc.php | 159 ++++ install/ubuntu/16.10/pga/phppgadmin.conf | 31 + install/ubuntu/16.10/php-fpm/www.conf | 10 + install/ubuntu/16.10/pma/apache.conf | 42 + install/ubuntu/16.10/pma/config.inc.php | 146 +++ install/ubuntu/16.10/postgresql/pg_hba.conf | 11 + install/ubuntu/16.10/proftpd/proftpd.conf | 32 + install/ubuntu/16.10/roundcube/apache.conf | 40 + install/ubuntu/16.10/roundcube/config.inc.php | 33 + install/ubuntu/16.10/roundcube/db.inc.php | 66 ++ install/ubuntu/16.10/roundcube/main.inc.php | 850 ++++++++++++++++++ install/ubuntu/16.10/roundcube/vesta.php | 62 ++ install/ubuntu/16.10/sudo/admin | 8 + .../ubuntu/16.10/templates/dns/child-ns.tpl | 12 + .../ubuntu/16.10/templates/dns/default.tpl | 16 + install/ubuntu/16.10/templates/dns/gmail.tpl | 14 + .../16.10/templates/web/apache2/basedir.stpl | 44 + .../16.10/templates/web/apache2/basedir.tpl | 38 + .../16.10/templates/web/apache2/default.stpl | 43 + .../16.10/templates/web/apache2/default.tpl | 37 + .../16.10/templates/web/apache2/hosting.stpl | 49 + .../16.10/templates/web/apache2/hosting.tpl | 43 + .../16.10/templates/web/apache2/phpcgi.sh | 16 + .../16.10/templates/web/apache2/phpcgi.stpl | 38 + .../16.10/templates/web/apache2/phpcgi.tpl | 31 + .../16.10/templates/web/apache2/phpfcgid.sh | 22 + .../16.10/templates/web/apache2/phpfcgid.stpl | 39 + .../16.10/templates/web/apache2/phpfcgid.tpl | 31 + .../16.10/templates/web/awstats/awstats.tpl | 133 +++ .../16.10/templates/web/awstats/index.tpl | 10 + .../16.10/templates/web/awstats/nav.tpl | 23 + .../16.10/templates/web/nginx/caching.sh | 12 + .../16.10/templates/web/nginx/caching.stpl | 44 + .../16.10/templates/web/nginx/caching.tpl | 41 + .../16.10/templates/web/nginx/default.stpl | 36 + .../16.10/templates/web/nginx/default.tpl | 33 + .../16.10/templates/web/nginx/hosting.sh | 11 + .../16.10/templates/web/nginx/hosting.stpl | 38 + .../16.10/templates/web/nginx/hosting.tpl | 35 + .../web/nginx/php-fpm/cms_made_simple.stpl | 56 ++ .../web/nginx/php-fpm/cms_made_simple.tpl | 52 ++ .../web/nginx/php-fpm/codeigniter2.stpl | 61 ++ .../web/nginx/php-fpm/codeigniter2.tpl | 57 ++ .../web/nginx/php-fpm/codeigniter3.stpl | 56 ++ .../web/nginx/php-fpm/codeigniter3.tpl | 52 ++ .../web/nginx/php-fpm/datalife_engine.stpl | 127 +++ .../web/nginx/php-fpm/datalife_engine.tpl | 123 +++ .../templates/web/nginx/php-fpm/default.stpl | 55 ++ .../templates/web/nginx/php-fpm/default.tpl | 51 ++ .../templates/web/nginx/php-fpm/dokuwiki.stpl | 72 ++ .../templates/web/nginx/php-fpm/dokuwiki.tpl | 67 ++ .../templates/web/nginx/php-fpm/drupal6.stpl | 101 +++ .../templates/web/nginx/php-fpm/drupal6.tpl | 98 ++ .../templates/web/nginx/php-fpm/drupal7.stpl | 101 +++ .../templates/web/nginx/php-fpm/drupal7.tpl | 98 ++ .../templates/web/nginx/php-fpm/drupal8.stpl | 102 +++ .../templates/web/nginx/php-fpm/drupal8.tpl | 99 ++ .../templates/web/nginx/php-fpm/joomla.stpl | 63 ++ .../templates/web/nginx/php-fpm/joomla.tpl | 59 ++ .../templates/web/nginx/php-fpm/modx.stpl | 69 ++ .../templates/web/nginx/php-fpm/modx.tpl | 65 ++ .../templates/web/nginx/php-fpm/moodle.stpl | 90 ++ .../templates/web/nginx/php-fpm/moodle.tpl | 87 ++ .../templates/web/nginx/php-fpm/no-php.stpl | 47 + .../templates/web/nginx/php-fpm/no-php.tpl | 43 + .../templates/web/nginx/php-fpm/owncloud.stpl | 85 ++ .../templates/web/nginx/php-fpm/owncloud.tpl | 86 ++ .../templates/web/nginx/php-fpm/piwik.stpl | 73 ++ .../templates/web/nginx/php-fpm/piwik.tpl | 69 ++ .../templates/web/nginx/php-fpm/pyrocms.stpl | 66 ++ .../templates/web/nginx/php-fpm/pyrocms.tpl | 62 ++ .../web/nginx/php-fpm/wordpress.stpl | 55 ++ .../templates/web/nginx/php-fpm/wordpress.tpl | 51 ++ .../web/nginx/php-fpm/wordpress2.stpl | 67 ++ .../web/nginx/php-fpm/wordpress2.tpl | 63 ++ .../16.10/templates/web/nginx/proxy_ip.tpl | 9 + .../16.10/templates/web/php-fpm/default.tpl | 18 + .../16.10/templates/web/php-fpm/no-php.tpl | 13 + .../16.10/templates/web/php-fpm/socket.tpl | 21 + .../web/skel/document_errors/403.html | 29 + .../web/skel/document_errors/404.html | 28 + .../web/skel/document_errors/50x.html | 29 + .../templates/web/skel/public_html/index.html | 26 + .../templates/web/skel/public_html/robots.txt | 3 + .../web/skel/public_shtml/index.html | 26 + .../web/skel/public_shtml/robots.txt | 3 + .../16.10/templates/web/suspend/.htaccess | 2 + .../16.10/templates/web/suspend/index.html | 25 + .../templates/web/webalizer/webalizer.tpl | 110 +++ install/ubuntu/16.10/vsftpd/vsftpd.conf | 27 + 128 files changed, 6699 insertions(+) create mode 100644 install/ubuntu/16.10/apache2/apache2.conf create mode 100644 install/ubuntu/16.10/apache2/status.conf create mode 100644 install/ubuntu/16.10/bind/named.conf create mode 100644 install/ubuntu/16.10/clamav/clamd.conf create mode 100644 install/ubuntu/16.10/deb_signing.key create mode 100644 install/ubuntu/16.10/dovecot/conf.d/10-auth.conf create mode 100644 install/ubuntu/16.10/dovecot/conf.d/10-logging.conf create mode 100644 install/ubuntu/16.10/dovecot/conf.d/10-mail.conf create mode 100644 install/ubuntu/16.10/dovecot/conf.d/10-master.conf create mode 100644 install/ubuntu/16.10/dovecot/conf.d/10-ssl.conf create mode 100644 install/ubuntu/16.10/dovecot/conf.d/20-imap.conf create mode 100644 install/ubuntu/16.10/dovecot/conf.d/20-pop3.conf create mode 100644 install/ubuntu/16.10/dovecot/conf.d/auth-passwdfile.conf.ext create mode 100644 install/ubuntu/16.10/dovecot/dovecot.conf create mode 100644 install/ubuntu/16.10/exim/dnsbl.conf create mode 100644 install/ubuntu/16.10/exim/exim4.conf.template create mode 100644 install/ubuntu/16.10/exim/spam-blocks.conf create mode 100644 install/ubuntu/16.10/fail2ban/action.d/vesta.conf create mode 100644 install/ubuntu/16.10/fail2ban/filter.d/vesta.conf create mode 100644 install/ubuntu/16.10/fail2ban/jail.local create mode 100644 install/ubuntu/16.10/firewall/ports.conf create mode 100644 install/ubuntu/16.10/firewall/rules.conf create mode 100644 install/ubuntu/16.10/logrotate/apache2 create mode 100644 install/ubuntu/16.10/logrotate/dovecot create mode 100644 install/ubuntu/16.10/logrotate/nginx create mode 100644 install/ubuntu/16.10/logrotate/vesta create mode 100644 install/ubuntu/16.10/mysql/my-large.cnf create mode 100644 install/ubuntu/16.10/mysql/my-medium.cnf create mode 100644 install/ubuntu/16.10/mysql/my-small.cnf create mode 100644 install/ubuntu/16.10/nginx/nginx.conf create mode 100644 install/ubuntu/16.10/nginx/phpmyadmin.inc create mode 100644 install/ubuntu/16.10/nginx/phppgadmin.inc create mode 100644 install/ubuntu/16.10/nginx/status.conf create mode 100644 install/ubuntu/16.10/nginx/webmail.inc create mode 100644 install/ubuntu/16.10/packages/default.pkg create mode 100644 install/ubuntu/16.10/packages/gainsboro.pkg create mode 100644 install/ubuntu/16.10/packages/palegreen.pkg create mode 100644 install/ubuntu/16.10/packages/slategrey.pkg create mode 100644 install/ubuntu/16.10/pga/config.inc.php create mode 100644 install/ubuntu/16.10/pga/phppgadmin.conf create mode 100644 install/ubuntu/16.10/php-fpm/www.conf create mode 100644 install/ubuntu/16.10/pma/apache.conf create mode 100644 install/ubuntu/16.10/pma/config.inc.php create mode 100644 install/ubuntu/16.10/postgresql/pg_hba.conf create mode 100644 install/ubuntu/16.10/proftpd/proftpd.conf create mode 100644 install/ubuntu/16.10/roundcube/apache.conf create mode 100644 install/ubuntu/16.10/roundcube/config.inc.php create mode 100644 install/ubuntu/16.10/roundcube/db.inc.php create mode 100644 install/ubuntu/16.10/roundcube/main.inc.php create mode 100644 install/ubuntu/16.10/roundcube/vesta.php create mode 100644 install/ubuntu/16.10/sudo/admin create mode 100755 install/ubuntu/16.10/templates/dns/child-ns.tpl create mode 100755 install/ubuntu/16.10/templates/dns/default.tpl create mode 100755 install/ubuntu/16.10/templates/dns/gmail.tpl create mode 100644 install/ubuntu/16.10/templates/web/apache2/basedir.stpl create mode 100644 install/ubuntu/16.10/templates/web/apache2/basedir.tpl create mode 100644 install/ubuntu/16.10/templates/web/apache2/default.stpl create mode 100644 install/ubuntu/16.10/templates/web/apache2/default.tpl create mode 100644 install/ubuntu/16.10/templates/web/apache2/hosting.stpl create mode 100644 install/ubuntu/16.10/templates/web/apache2/hosting.tpl create mode 100755 install/ubuntu/16.10/templates/web/apache2/phpcgi.sh create mode 100644 install/ubuntu/16.10/templates/web/apache2/phpcgi.stpl create mode 100644 install/ubuntu/16.10/templates/web/apache2/phpcgi.tpl create mode 100755 install/ubuntu/16.10/templates/web/apache2/phpfcgid.sh create mode 100644 install/ubuntu/16.10/templates/web/apache2/phpfcgid.stpl create mode 100644 install/ubuntu/16.10/templates/web/apache2/phpfcgid.tpl create mode 100755 install/ubuntu/16.10/templates/web/awstats/awstats.tpl create mode 100755 install/ubuntu/16.10/templates/web/awstats/index.tpl create mode 100755 install/ubuntu/16.10/templates/web/awstats/nav.tpl create mode 100755 install/ubuntu/16.10/templates/web/nginx/caching.sh create mode 100755 install/ubuntu/16.10/templates/web/nginx/caching.stpl create mode 100755 install/ubuntu/16.10/templates/web/nginx/caching.tpl create mode 100755 install/ubuntu/16.10/templates/web/nginx/default.stpl create mode 100755 install/ubuntu/16.10/templates/web/nginx/default.tpl create mode 100755 install/ubuntu/16.10/templates/web/nginx/hosting.sh create mode 100755 install/ubuntu/16.10/templates/web/nginx/hosting.stpl create mode 100755 install/ubuntu/16.10/templates/web/nginx/hosting.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/cms_made_simple.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/cms_made_simple.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter2.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter2.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter3.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter3.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/datalife_engine.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/datalife_engine.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/default.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/default.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/dokuwiki.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/dokuwiki.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal6.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal6.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal7.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal7.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal8.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal8.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/joomla.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/joomla.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/modx.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/modx.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/moodle.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/moodle.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/no-php.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/no-php.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/owncloud.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/owncloud.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/piwik.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/piwik.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/pyrocms.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/pyrocms.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress.tpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress2.stpl create mode 100644 install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress2.tpl create mode 100755 install/ubuntu/16.10/templates/web/nginx/proxy_ip.tpl create mode 100644 install/ubuntu/16.10/templates/web/php-fpm/default.tpl create mode 100644 install/ubuntu/16.10/templates/web/php-fpm/no-php.tpl create mode 100644 install/ubuntu/16.10/templates/web/php-fpm/socket.tpl create mode 100755 install/ubuntu/16.10/templates/web/skel/document_errors/403.html create mode 100755 install/ubuntu/16.10/templates/web/skel/document_errors/404.html create mode 100755 install/ubuntu/16.10/templates/web/skel/document_errors/50x.html create mode 100755 install/ubuntu/16.10/templates/web/skel/public_html/index.html create mode 100755 install/ubuntu/16.10/templates/web/skel/public_html/robots.txt create mode 100755 install/ubuntu/16.10/templates/web/skel/public_shtml/index.html create mode 100755 install/ubuntu/16.10/templates/web/skel/public_shtml/robots.txt create mode 100755 install/ubuntu/16.10/templates/web/suspend/.htaccess create mode 100755 install/ubuntu/16.10/templates/web/suspend/index.html create mode 100755 install/ubuntu/16.10/templates/web/webalizer/webalizer.tpl create mode 100644 install/ubuntu/16.10/vsftpd/vsftpd.conf diff --git a/install/ubuntu/16.10/apache2/apache2.conf b/install/ubuntu/16.10/apache2/apache2.conf new file mode 100644 index 00000000..22178011 --- /dev/null +++ b/install/ubuntu/16.10/apache2/apache2.conf @@ -0,0 +1,86 @@ +# It is split into several files forming the configuration hierarchy outlined +# below, all located in the /etc/apache2/ directory: +# +# /etc/apache2/ +# |-- apache2.conf +# | `-- ports.conf +# |-- mods-enabled +# | |-- *.load +# | `-- *.conf +# |-- conf.d +# | `-- * + +# Global configuration +PidFile ${APACHE_PID_FILE} +Timeout 30 +KeepAlive Off +MaxKeepAliveRequests 100 +KeepAliveTimeout 10 + + + StartServers 8 + MinSpareServers 5 + MaxSpareServers 20 + ServerLimit 256 + MaxClients 200 + MaxRequestsPerChild 4000 + + + + StartServers 2 + MinSpareThreads 25 + MaxSpareThreads 75 + ThreadLimit 64 + ThreadsPerChild 25 + MaxClients 200 + MaxRequestsPerChild 4000 + + + + StartServers 2 + MinSpareThreads 25 + MaxSpareThreads 75 + ThreadLimit 64 + ThreadsPerChild 25 + MaxClients 200 + MaxRequestsPerChild 4000 + + +# These need to be set in /etc/apache2/envvars +User ${APACHE_RUN_USER} +Group ${APACHE_RUN_GROUP} +#User www-data +#Group www-data + +AccessFileName .htaccess + + + Order allow,deny + Deny from all + Satisfy all + + +DefaultType None +HostnameLookups Off + +ErrorLog ${APACHE_LOG_DIR}/error.log +LogLevel warn + +# Include module configuration: +Include mods-enabled/*.load +Include mods-enabled/*.conf + +# Include list of ports to listen on and which to use for name based vhosts +Include ports.conf + +LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined +LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined +LogFormat "%h %l %u %t \"%r\" %>s %O" common +LogFormat "%{Referer}i -> %U" referer +LogFormat "%{User-agent}i" agent +LogFormat "%b" bytes + +Include conf.d/ + +# Include the virtual host configurations: +#Include sites-enabled/ diff --git a/install/ubuntu/16.10/apache2/status.conf b/install/ubuntu/16.10/apache2/status.conf new file mode 100644 index 00000000..da9d9633 --- /dev/null +++ b/install/ubuntu/16.10/apache2/status.conf @@ -0,0 +1,8 @@ +Listen 127.0.0.1:8081 + + SetHandler server-status + Order deny,allow + Deny from all + Allow from 127.0.0.1 + Allow from all + diff --git a/install/ubuntu/16.10/bind/named.conf b/install/ubuntu/16.10/bind/named.conf new file mode 100644 index 00000000..ed6ece88 --- /dev/null +++ b/install/ubuntu/16.10/bind/named.conf @@ -0,0 +1,12 @@ +// This is the primary configuration file for the BIND DNS server named. +// +// Please read /usr/share/doc/bind9/README.Debian.gz for information on the +// structure of BIND configuration files in Debian, *BEFORE* you customize +// this configuration file. +// +// If you are just adding zones, please do that in /etc/bind/named.conf.local + +include "/etc/bind/named.conf.options"; +include "/etc/bind/named.conf.local"; +include "/etc/bind/named.conf.default-zones"; + diff --git a/install/ubuntu/16.10/clamav/clamd.conf b/install/ubuntu/16.10/clamav/clamd.conf new file mode 100644 index 00000000..ea982697 --- /dev/null +++ b/install/ubuntu/16.10/clamav/clamd.conf @@ -0,0 +1,61 @@ +#Automatically Generated by clamav-base postinst +#To reconfigure clamd run #dpkg-reconfigure clamav-base +#Please read /usr/share/doc/clamav-base/README.Debian.gz for details +LocalSocket /var/run/clamav/clamd.ctl +FixStaleSocket true +LocalSocketGroup clamav +LocalSocketMode 666 +# TemporaryDirectory is not set to its default /tmp here to make overriding +# the default with environment variables TMPDIR/TMP/TEMP possible +User clamav +AllowSupplementaryGroups true +ScanMail true +ScanArchive true +ArchiveBlockEncrypted false +MaxDirectoryRecursion 15 +FollowDirectorySymlinks false +FollowFileSymlinks false +ReadTimeout 180 +MaxThreads 12 +MaxConnectionQueueLength 15 +LogSyslog false +LogFacility LOG_LOCAL6 +LogClean false +LogVerbose true +PidFile /var/run/clamav/clamd.pid +DatabaseDirectory /var/lib/clamav +SelfCheck 3600 +Foreground false +Debug false +ScanPE true +ScanOLE2 true +ScanHTML true +DetectBrokenExecutables false +ExitOnOOM false +LeaveTemporaryFiles false +AlgorithmicDetection true +ScanELF true +IdleTimeout 30 +PhishingSignatures true +PhishingScanURLs true +PhishingAlwaysBlockSSLMismatch false +PhishingAlwaysBlockCloak false +DetectPUA false +ScanPartialMessages false +HeuristicScanPrecedence false +StructuredDataDetection false +CommandReadTimeout 5 +SendBufTimeout 200 +MaxQueue 100 +ExtendedDetectionInfo true +OLE2BlockMacros false +StreamMaxLength 25M +LogFile /var/log/clamav/clamav.log +LogTime true +LogFileUnlock false +LogFileMaxSize 0 +Bytecode true +BytecodeSecurity TrustSigned +BytecodeTimeout 60000 +OfficialDatabaseOnly false +CrossFilesystems true diff --git a/install/ubuntu/16.10/deb_signing.key b/install/ubuntu/16.10/deb_signing.key new file mode 100644 index 00000000..2ad2db8b --- /dev/null +++ b/install/ubuntu/16.10/deb_signing.key @@ -0,0 +1,30 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.12 (GNU/Linux) + +mQENBFJIGbEBCAC8SHOOFo7iDTbnC2GhNZ+uBGCh226Dn1QPoFZNFM/DNakHZ6rD +G3wzr8++eKz4fJual/VLllE2N9XDPuxbozb3LLkcyY1WzJqtIXbXhFGQ/SuIeT+x +QY90XU6t2Ckze2c+zUniAWmJ8GSyVmXOoc9JxAQ1u47wvGXLzrjWXc8u8PNRYXuf +fZplTL+dFu9P0d6lP8FGsV+r9wXvvazpRTz3+H8PKrGCYT55ZQIEdG9Jgamylto2 +oVPFXkwGML+TLw6oeCIBuz2y2vtivphW4MJ3ifQjDj7k3n+DTIxfDFs8lB6VRhhY +2nMHCrcZC6U2mhmXmr6O4s1fu6irBVx05ejPABEBAAG0IFNlcmdoZXkgUm9kaW4g +PHNraWRAdmVzdGFjcC5jb20+iQE4BBMBAgAiBQJSSBmxAhsDBgsJCAcDAgYVCAIJ +CgsEFgIDAQIeAQIXgAAKCRBCxbITCh93FPdqB/93GjV9g+wBfeZYLHQK9MDU2wBb +VloYOJJae6IvYKYQVAJayD3PbHdpxrF8s9e23vdnmb9jKu6jX6oV54EIyqP2HPiN +QYc8wcea+eSHerznBixCtoQh8mtdWGFeN71zU/ig7L5qlOVF/EmxDVZTFUeivFxh +IV6qyBnktQKktE45585yKZyyLtfGoXA54DGK69OtJFh+wdkKEMmUXocMl7wUrxW6 +Cx2CuKeEXEgvwu8mRHQi3S3T9XP456qWEn5dWyMVcP660IzEuZfSJApZusNK7zG3 +WMy0/EuX7xHNY3mcNxTOUN1LsO7iHnhHD9+iKWJo9parGkMZzc92MpjDK/g7uQEN +BFJIGbEBCAC7k5QEA9WQM7E3ceNaeLMrA9lXfuzaNCcySq7ONdVAa5PxzbSKdHvz +QFoL1VFqBTYQ038lbil1XqnoM0zvIfAI3LcpS8sq92El/vPxp6jZh2Ari9Uw7x95 +k2cZMgI67g+zQMGdjVRA155nFQRCgg000xU4F7JA6+WsuLlVUmccsDv7YWJExMtC +YPxiuz5DFu8RALnw4Ckts+dbwsrcvUHhkm9b6RAsdCKjjRpUZjLgdltjH83gUVvt +i1YmdjjsVpt95dtsaG+ad852g/Rk8EdxNMkjPF6HLA67CLADP9wYaj80yPcPtylS +ycvPtcclVeHkFBRVM8xZpQd4iD19MWI1ABEBAAGJAR8EGAECAAkFAlJIGbECGwwA +CgkQQsWyEwofdxQ7tQgAhB0FwTs7L8Qr63DHC2yAnXVxgtTAY1/36CccNXVculyR ++EkLcwahms9AKhz7eQb+Mud+5vH0GRohLp2npgO38CjVUfIP5d+Y6dsthmrkF6p8 +XdV1dVK9vWX+i/YZSw/Mded30Cq4P2Yhq9EaemMT0rtli8lz2NnkZ9dFJZk1lzJC +CZmRpbjSNWqRU4f7qyh21lYk/OC/0XE8fh8CaO23TZ+6gBionoCztwb7NyC9OArN +qYlNnbmh9iNqdblykPS3bkjf34n2xyMgnIehNrM89tk8PY4UfNPhgT1TMD9W3Svq +ynNZvLuF/FIDwDeC1qcfjGbfDn9fXO/lMIIRooQYKQ== +=J2HJ +-----END PGP PUBLIC KEY BLOCK----- diff --git a/install/ubuntu/16.10/dovecot/conf.d/10-auth.conf b/install/ubuntu/16.10/dovecot/conf.d/10-auth.conf new file mode 100644 index 00000000..dfcc8311 --- /dev/null +++ b/install/ubuntu/16.10/dovecot/conf.d/10-auth.conf @@ -0,0 +1,4 @@ +disable_plaintext_auth = no +auth_verbose = yes +auth_mechanisms = plain login +!include auth-passwdfile.conf.ext diff --git a/install/ubuntu/16.10/dovecot/conf.d/10-logging.conf b/install/ubuntu/16.10/dovecot/conf.d/10-logging.conf new file mode 100644 index 00000000..a5f207d5 --- /dev/null +++ b/install/ubuntu/16.10/dovecot/conf.d/10-logging.conf @@ -0,0 +1 @@ +log_path = /var/log/dovecot.log diff --git a/install/ubuntu/16.10/dovecot/conf.d/10-mail.conf b/install/ubuntu/16.10/dovecot/conf.d/10-mail.conf new file mode 100644 index 00000000..55313419 --- /dev/null +++ b/install/ubuntu/16.10/dovecot/conf.d/10-mail.conf @@ -0,0 +1,4 @@ +mail_privileged_group = mail +mail_access_groups = mail +mail_location = maildir:%h/mail/%d/%n +pop3_uidl_format = %08Xu%08Xv diff --git a/install/ubuntu/16.10/dovecot/conf.d/10-master.conf b/install/ubuntu/16.10/dovecot/conf.d/10-master.conf new file mode 100644 index 00000000..a75a9aaa --- /dev/null +++ b/install/ubuntu/16.10/dovecot/conf.d/10-master.conf @@ -0,0 +1,29 @@ +service imap-login { + inet_listener imap { + } + inet_listener imaps { + } +} + +service pop3-login { + inet_listener pop3 { + } + inet_listener pop3s { + } +} + + +service imap { +} + +service pop3 { +} + +service auth { + unix_listener auth-client { + group = mail + mode = 0660 + user = dovecot + } + user = dovecot +} diff --git a/install/ubuntu/16.10/dovecot/conf.d/10-ssl.conf b/install/ubuntu/16.10/dovecot/conf.d/10-ssl.conf new file mode 100644 index 00000000..24cbf3e2 --- /dev/null +++ b/install/ubuntu/16.10/dovecot/conf.d/10-ssl.conf @@ -0,0 +1,5 @@ +ssl = yes +ssl_protocols = !SSLv2 !SSLv3 + +ssl_cert = = 2.1.4) : %v.%u + # Dovecot v0.99.x : %v.%u + # tpop3d : %Mf + # + # Note that Outlook 2003 seems to have problems with %v.%u format which was + # Dovecot's default, so if you're building a new server it would be a good + # idea to change this. %08Xu%08Xv should be pretty fail-safe. + # + #pop3_uidl_format = %08Xu%08Xv + + # Permanently save UIDLs sent to POP3 clients, so pop3_uidl_format changes + # won't change those UIDLs. Currently this works only with Maildir. + #pop3_save_uidl = no + + # What to do about duplicate UIDLs if they exist? + # allow: Show duplicates to clients. + # rename: Append a temporary -2, -3, etc. counter after the UIDL. + #pop3_uidl_duplicates = allow + + # POP3 logout format string: + # %i - total number of bytes read from client + # %o - total number of bytes sent to client + # %t - number of TOP commands + # %p - number of bytes sent to client as a result of TOP command + # %r - number of RETR commands + # %b - number of bytes sent to client as a result of RETR command + # %d - number of deleted messages + # %m - number of messages (before deletion) + # %s - mailbox size in bytes (before deletion) + # %u - old/new UIDL hash. may help finding out if UIDLs changed unexpectedly + #pop3_logout_format = top=%t/%p, retr=%r/%b, del=%d/%m, size=%s + + # Maximum number of POP3 connections allowed for a user from each IP address. + # NOTE: The username is compared case-sensitively. + #mail_max_userip_connections = 10 + + # Space separated list of plugins to load (default is global mail_plugins). + #mail_plugins = $mail_plugins + + # Workarounds for various client bugs: + # outlook-no-nuls: + # Outlook and Outlook Express hang if mails contain NUL characters. + # This setting replaces them with 0x80 character. + # oe-ns-eoh: + # Outlook Express and Netscape Mail breaks if end of headers-line is + # missing. This option simply sends it if it's missing. + # The list is space-separated. + #pop3_client_workarounds = +} diff --git a/install/ubuntu/16.10/dovecot/conf.d/auth-passwdfile.conf.ext b/install/ubuntu/16.10/dovecot/conf.d/auth-passwdfile.conf.ext new file mode 100644 index 00000000..75e6e115 --- /dev/null +++ b/install/ubuntu/16.10/dovecot/conf.d/auth-passwdfile.conf.ext @@ -0,0 +1,9 @@ +passdb { + driver = passwd-file + args = scheme=MD5-CRYPT username_format=%n /etc/exim4/domains/%d/passwd +} + +userdb { + driver = passwd-file + args = username_format=%n /etc/exim4/domains/%d/passwd +} diff --git a/install/ubuntu/16.10/dovecot/dovecot.conf b/install/ubuntu/16.10/dovecot/dovecot.conf new file mode 100644 index 00000000..311a3351 --- /dev/null +++ b/install/ubuntu/16.10/dovecot/dovecot.conf @@ -0,0 +1,24 @@ +protocols = imap pop3 +listen = *, :: +base_dir = /var/run/dovecot/ +!include conf.d/*.conf + +namespace { + type = private + separator = / + prefix = + inbox = yes + + mailbox Sent { + auto = subscribe + special_use = \Sent + } + mailbox Drafts { + auto = subscribe + special_use = \Drafts + } + mailbox Trash { + auto = subscribe + special_use = \Trash + } +} diff --git a/install/ubuntu/16.10/exim/dnsbl.conf b/install/ubuntu/16.10/exim/dnsbl.conf new file mode 100644 index 00000000..5166b255 --- /dev/null +++ b/install/ubuntu/16.10/exim/dnsbl.conf @@ -0,0 +1,2 @@ +bl.spamcop.net +zen.spamhaus.org diff --git a/install/ubuntu/16.10/exim/exim4.conf.template b/install/ubuntu/16.10/exim/exim4.conf.template new file mode 100644 index 00000000..d5cf0c7e --- /dev/null +++ b/install/ubuntu/16.10/exim/exim4.conf.template @@ -0,0 +1,382 @@ +###################################################################### +# # +# Exim configuration file for Vesta Control Panel # +# # +###################################################################### + +#SPAMASSASSIN = yes +#SPAM_SCORE = 50 +#CLAMD = yes + +add_environment = <; PATH=/bin:/usr/bin +keep_environment = +disable_ipv6 = true + +domainlist local_domains = dsearch;/etc/exim4/domains/ +domainlist relay_to_domains = dsearch;/etc/exim4/domains/ +hostlist relay_from_hosts = 127.0.0.1 +hostlist whitelist = net-iplsearch;/etc/exim4/white-blocks.conf +hostlist spammers = net-iplsearch;/etc/exim4/spam-blocks.conf +no_local_from_check +untrusted_set_sender = * +acl_smtp_connect = acl_check_spammers +acl_smtp_mail = acl_check_mail +acl_smtp_rcpt = acl_check_rcpt +acl_smtp_data = acl_check_data +acl_smtp_mime = acl_check_mime + +.ifdef SPAMASSASSIN +spamd_address = 127.0.0.1 783 +.endif + +.ifdef CLAMD +av_scanner = clamd: /var/run/clamav/clamd.ctl +.endif + +tls_advertise_hosts = * +tls_certificate = /usr/local/vesta/ssl/certificate.crt +tls_privatekey = /usr/local/vesta/ssl/certificate.key + +daemon_smtp_ports = 25 : 465 : 587 : 2525 +tls_on_connect_ports = 465 +never_users = root +host_lookup = * +rfc1413_hosts = * +rfc1413_query_timeout = 5s +ignore_bounce_errors_after = 2d +timeout_frozen_after = 7d + +DKIM_DOMAIN = ${lc:${domain:$h_from:}} +DKIM_FILE = /etc/exim4/domains/${lc:${domain:$h_from:}}/dkim.pem +DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}} + + + +###################################################################### +# ACL CONFIGURATION # +# Specifies access control lists for incoming SMTP mail # +###################################################################### +begin acl + +acl_check_spammers: + accept hosts = +whitelist + + drop message = Your host in blacklist on this server. + log_message = Host in blacklist + hosts = +spammers + + accept + + +acl_check_mail: + deny condition = ${if eq{$sender_helo_name}{}} + message = HELO required before MAIL + + drop message = Helo name contains a ip address (HELO was $sender_helo_name) and not is valid + condition = ${if match{$sender_helo_name}{\N((\d{1,3}[.-]\d{1,3}[.-]\d{1,3}[.-]\d{1,3})|([0-9a-f]{8})|([0-9A-F]{8}))\N}{yes}{no}} + condition = ${if match {${lookup dnsdb{>: defer_never,ptr=$sender_host_address}}\}{$sender_helo_name}{no}{yes}} + delay = 45s + + drop condition = ${if isip{$sender_helo_name}} + message = Access denied - Invalid HELO name (See RFC2821 4.1.3) + + drop condition = ${if eq{[$interface_address]}{$sender_helo_name}} + message = $interface_address is _my_ address + + accept + + +acl_check_rcpt: + accept hosts = : + + deny message = Restricted characters in address + domains = +local_domains + local_parts = ^[.] : ^.*[@%!/|] + + deny message = Restricted characters in address + domains = !+local_domains + local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./ + + require verify = sender + + accept hosts = +relay_from_hosts + control = submission + + accept authenticated = * + control = submission/domain= + + deny message = Rejected because $sender_host_address is in a black list at $dnslist_domain\n$dnslist_text + hosts = !+whitelist + dnslists = ${readfile {/etc/exim4/dnsbl.conf}{:}} + + require message = relay not permitted + domains = +local_domains : +relay_to_domains + + deny message = smtp auth requried + sender_domains = +local_domains + !authenticated = * + + require verify = recipient + +.ifdef CLAMD + warn set acl_m0 = no + + warn condition = ${if exists {/etc/exim4/domains/$domain/antivirus}{yes}{no}} + set acl_m0 = yes +.endif + +.ifdef SPAMASSASSIN + warn set acl_m1 = no + + warn condition = ${if exists {/etc/exim4/domains/$domain/antispam}{yes}{no}} + set acl_m1 = yes +.endif + + accept + + +acl_check_data: +.ifdef CLAMD + deny message = Message contains a virus ($malware_name) and has been rejected + malware = * + condition = ${if eq{$acl_m0}{yes}{yes}{no}} +.endif + +.ifdef SPAMASSASSIN + warn !authenticated = * + hosts = !+relay_from_hosts + condition = ${if < {$message_size}{100K}} + condition = ${if eq{$acl_m1}{yes}{yes}{no}} + spam = nobody:true/defer_ok + add_header = X-Spam-Score: $spam_score_int + add_header = X-Spam-Bar: $spam_bar + add_header = X-Spam-Report: $spam_report + set acl_m2 = $spam_score_int + + warn condition = ${if !eq{$acl_m2}{} {yes}{no}} + condition = ${if >{$acl_m2}{SPAM_SCORE} {yes}{no}} + add_header = X-Spam-Status: Yes + message = SpamAssassin detected spam (from $sender_address to $recipients). +.endif + + accept + + +acl_check_mime: + deny message = Blacklisted file extension detected + condition = ${if match {${lc:$mime_filename}}{\N(\.ade|\.adp|\.bat|\.chm|\.cmd|\.com|\.cpl|\.exe|\.hta|\.ins|\.isp|\.jse|\.lib|\.lnk|\.mde|\.msc|\.msp|\.mst|\.pif|\.scr|\.sct|\.shb|\.sys|\.vb|\.vbe|\.vbs|\.vxd|\.wsc|\.wsf|\.wsh)$\N}{1}{0}} + + accept + + + +###################################################################### +# AUTHENTICATION CONFIGURATION # +###################################################################### +begin authenticators + +dovecot_plain: + driver = dovecot + public_name = PLAIN + server_socket = /var/run/dovecot/auth-client + server_set_id = $auth1 + +dovecot_login: + driver = dovecot + public_name = LOGIN + server_socket = /var/run/dovecot/auth-client + server_set_id = $auth1 + + + +###################################################################### +# ROUTERS CONFIGURATION # +# Specifies how addresses are handled # +###################################################################### +begin routers + +#smarthost: +# driver = manualroute +# domains = ! +local_domains +# transport = remote_smtp +# route_list = * smartrelay.vestacp.com +# no_more +# no_verify + +dnslookup: + driver = dnslookup + domains = !+local_domains + transport = remote_smtp + no_more + +userforward: + driver = redirect + check_local_user + file = $home/.forward + allow_filter + no_verify + no_expn + check_ancestor + file_transport = address_file + pipe_transport = address_pipe + reply_transport = address_reply + +procmail: + driver = accept + check_local_user + require_files = ${local_part}:+${home}/.procmailrc:/usr/bin/procmail + transport = procmail + no_verify + +autoreplay: + driver = accept + require_files = /etc/exim4/domains/$domain/autoreply.${local_part}.msg + condition = ${if exists{/etc/exim4/domains/$domain/autoreply.${local_part}.msg}{yes}{no}} + retry_use_local_part + transport = userautoreply + unseen + +aliases: + driver = redirect + headers_add = X-redirected: yes + data = ${extract{1}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/domains/$domain/aliases}}}} + require_files = /etc/exim4/domains/$domain/aliases + redirect_router = dnslookup + pipe_transport = address_pipe + unseen + +localuser_fwd_only: + driver = accept + transport = devnull + condition = ${if exists{/etc/exim4/domains/$domain/fwd_only}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/fwd_only}{true}{false}}}} + +localuser_spam: + driver = accept + transport = local_spam_delivery + condition = ${if eq {${if match{$h_X-Spam-Status:}{\N^Yes\N}{yes}{no}}} {${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}{yes}{no_such_user}}}} + +localuser: + driver = accept + transport = local_delivery + condition = ${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}{true}{false}} + +catchall: + driver = redirect + headers_add = X-redirected: yes + require_files = /etc/exim4/domains/$domain/aliases + data = ${extract{1}{:}{${lookup{*@$domain}lsearch{/etc/exim4/domains/$domain/aliases}}}} + file_transport = local_delivery + redirect_router = dnslookup + +terminate_alias: + driver = accept + transport = devnull + condition = ${lookup{$local_part@$domain}lsearch{/etc/exim4/domains/$domain/aliases}{true}{false}} + + + +###################################################################### +# TRANSPORTS CONFIGURATION # +###################################################################### +begin transports + +remote_smtp: + driver = smtp + #helo_data = $sender_address_domain + dkim_domain = DKIM_DOMAIN + dkim_selector = mail + dkim_private_key = DKIM_PRIVATE_KEY + dkim_canon = relaxed + dkim_strict = 0 + +procmail: + driver = pipe + command = "/usr/bin/procmail -d $local_part" + return_path_add + delivery_date_add + envelope_to_add + user = $local_part + initgroups + return_output + +local_delivery: + driver = appendfile + maildir_format + maildir_use_size_file + user = ${extract{2}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}} + group = mail + create_directory + directory_mode = 770 + mode = 660 + use_lockfile = no + delivery_date_add + envelope_to_add + return_path_add + directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}/mail/$domain/$local_part" + quota = ${extract{6}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}M + quota_warn_threshold = 75% + +local_spam_delivery: + driver = appendfile + maildir_format + maildir_use_size_file + user = ${extract{2}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}} + group = mail + create_directory + directory_mode = 770 + mode = 660 + use_lockfile = no + delivery_date_add + envelope_to_add + return_path_add + directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}/mail/$domain/$local_part/.Spam" + quota = ${extract{6}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}M + quota_directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}/mail/$domain/$local_part" + quota_warn_threshold = 75% + +address_pipe: + driver = pipe + return_output + +address_file: + driver = appendfile + delivery_date_add + envelope_to_add + return_path_add + +address_reply: + driver = autoreply + +userautoreply: + driver = autoreply + file = /etc/exim4/domains/$domain/autoreply.${local_part}.msg + from = "${local_part}@${domain}" + headers = Content-Type: text/plain; charset=utf-8;\nContent-Transfer-Encoding: 8bit + subject = "${if def:h_Subject: {Autoreply: \"${rfc2047:$h_Subject:}\"} {Autoreply Message}}" + to = "${sender_address}" + +devnull: + driver = appendfile + file = /dev/null + + + +###################################################################### +# RETRY CONFIGURATION # +###################################################################### +begin retry + +# Address or Domain Error Retries +# ----------------- ----- ------- +* * F,2h,15m; G,16h,1h,1.5; F,4d,6h + + + +###################################################################### +# REWRITE CONFIGURATION # +###################################################################### +begin rewrite + + + +###################################################################### diff --git a/install/ubuntu/16.10/exim/spam-blocks.conf b/install/ubuntu/16.10/exim/spam-blocks.conf new file mode 100644 index 00000000..e69de29b diff --git a/install/ubuntu/16.10/fail2ban/action.d/vesta.conf b/install/ubuntu/16.10/fail2ban/action.d/vesta.conf new file mode 100644 index 00000000..0edfc349 --- /dev/null +++ b/install/ubuntu/16.10/fail2ban/action.d/vesta.conf @@ -0,0 +1,9 @@ +# Fail2Ban configuration file for vesta + +[Definition] + +actionstart = /usr/local/vesta/bin/v-add-firewall-chain +actionstop = /usr/local/vesta/bin/v-delete-firewall-chain +actioncheck = iptables -n -L INPUT | grep -q 'fail2ban-[ \t]' +actionban = /usr/local/vesta/bin/v-add-firewall-ban +actionunban = /usr/local/vesta/bin/v-delete-firewall-ban diff --git a/install/ubuntu/16.10/fail2ban/filter.d/vesta.conf b/install/ubuntu/16.10/fail2ban/filter.d/vesta.conf new file mode 100644 index 00000000..69670a56 --- /dev/null +++ b/install/ubuntu/16.10/fail2ban/filter.d/vesta.conf @@ -0,0 +1,10 @@ +# Fail2Ban filter for unsuccesfull Vesta authentication attempts +# + +[INCLUDES] +before = common.conf + +[Definition] +failregex = .* failed to login +ignoreregex = + diff --git a/install/ubuntu/16.10/fail2ban/jail.local b/install/ubuntu/16.10/fail2ban/jail.local new file mode 100644 index 00000000..eccea068 --- /dev/null +++ b/install/ubuntu/16.10/fail2ban/jail.local @@ -0,0 +1,39 @@ +[ssh-iptables] +enabled = true +filter = sshd +action = vesta[name=SSH] +logpath = /var/log/auth.log +maxretry = 5 + +[vsftpd-iptables] +enabled = false +filter = vsftpd +action = vesta[name=FTP] +logpath = /var/log/vsftpd.log +maxretry = 5 + +[exim-iptables] +enabled = true +filter = exim +action = vesta[name=MAIL] +logpath = /var/log/exim4/mainlog + +[dovecot-iptables] +enabled = true +filter = dovecot +action = vesta[name=MAIL] +logpath = /var/log/dovecot.log + +[mysqld-iptables] +enabled = false +filter = mysqld-auth +action = vesta[name=DB] +logpath = /var/log/mysql.log +maxretry = 5 + +[vesta-iptables] +enabled = true +filter = vesta +action = vesta[name=VESTA] +logpath = /var/log/vesta/auth.log +maxretry = 5 diff --git a/install/ubuntu/16.10/firewall/ports.conf b/install/ubuntu/16.10/firewall/ports.conf new file mode 100644 index 00000000..b730d012 --- /dev/null +++ b/install/ubuntu/16.10/firewall/ports.conf @@ -0,0 +1,17 @@ +PROTOCOL='TCP' PORT='20' +PROTOCOL='TCP' PORT='21' +PROTOCOL='TCP' PORT='22' +PROTOCOL='TCP' PORT='25' +PROTOCOL='TCP' PORT='53' +PROTOCOL='UDP' PORT='53' +PROTOCOL='TCP' PORT='80' +PROTOCOL='TCP' PORT='443' +PROTOCOL='TCP' PORT='110' +PROTOCOL='UDP' PORT='123' +PROTOCOL='TCP' PORT='143' +PROTOCOL='TCP' PORT='3306' +PROTOCOL='TCP' PORT='5432' +PROTOCOL='TCP' PORT='8080' +PROTOCOL='TCP' PORT='8433' +PROTOCOL='TCP' PORT='8083' +PROTOCOL='TCP' PORT='12000:12100' diff --git a/install/ubuntu/16.10/firewall/rules.conf b/install/ubuntu/16.10/firewall/rules.conf new file mode 100644 index 00000000..fba98e1e --- /dev/null +++ b/install/ubuntu/16.10/firewall/rules.conf @@ -0,0 +1,11 @@ +RULE='1' ACTION='ACCEPT' PROTOCOL='ICMP' PORT='0' IP='0.0.0.0/0' COMMENT='PING' SUSPENDED='no' TIME='17:13:48' DATE='2014-09-16' +RULE='2' ACTION='ACCEPT' PROTOCOL='TCP' PORT='8083' IP='0.0.0.0/0' COMMENT='VESTA' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25' +RULE='3' ACTION='ACCEPT' PROTOCOL='TCP' PORT='3306,5432' IP='0.0.0.0/0' COMMENT='DB' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25' +RULE='4' ACTION='ACCEPT' PROTOCOL='TCP' PORT='143,993' IP='0.0.0.0/0' COMMENT='IMAP' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25' +RULE='5' ACTION='ACCEPT' PROTOCOL='TCP' PORT='110,995' IP='0.0.0.0/0' COMMENT='POP3' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25' +RULE='6' ACTION='ACCEPT' PROTOCOL='TCP' PORT='25,465,587,2525' IP='0.0.0.0/0' COMMENT='SMTP' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25' +RULE='7' ACTION='ACCEPT' PROTOCOL='TCP' PORT='53' IP='0.0.0.0/0' COMMENT='DNS' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25' +RULE='8' ACTION='ACCEPT' PROTOCOL='UDP' PORT='53' IP='0.0.0.0/0' COMMENT='DNS' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25' +RULE='9' ACTION='ACCEPT' PROTOCOL='TCP' PORT='21,12000-12100' IP='0.0.0.0/0' COMMENT='FTP' SUSPENDED='no' TIME='07:40:16' DATE='2014-05-25' +RULE='10' ACTION='ACCEPT' PROTOCOL='TCP' PORT='80,443' IP='0.0.0.0/0' COMMENT='WEB' SUSPENDED='no' TIME='17:04:27' DATE='2014-09-24' +RULE='11' ACTION='ACCEPT' PROTOCOL='TCP' PORT='22' IP='0.0.0.0/0' COMMENT='SSH' SUSPENDED='no' TIME='17:14:41' DATE='2014-09-16' diff --git a/install/ubuntu/16.10/logrotate/apache2 b/install/ubuntu/16.10/logrotate/apache2 new file mode 100644 index 00000000..27629d0d --- /dev/null +++ b/install/ubuntu/16.10/logrotate/apache2 @@ -0,0 +1,19 @@ +/var/log/apache2/*.log /var/log/apache2/domains/*log { + weekly + missingok + rotate 52 + compress + delaycompress + notifempty + create 640 root adm + sharedscripts + postrotate + /etc/init.d/apache2 reload > /dev/null || true + [ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid` + endscript + prerotate + if [ -d /etc/logrotate.d/httpd-prerotate ]; then \ + run-parts /etc/logrotate.d/httpd-prerotate; \ + fi; \ + endscript +} diff --git a/install/ubuntu/16.10/logrotate/dovecot b/install/ubuntu/16.10/logrotate/dovecot new file mode 100644 index 00000000..ac4fd6e9 --- /dev/null +++ b/install/ubuntu/16.10/logrotate/dovecot @@ -0,0 +1,12 @@ +/var/log/dovecot*.log { + weekly + rotate 4 + missingok + notifempty + compress + delaycompress + sharedscripts + postrotate + doveadm log reopen + endscript +} diff --git a/install/ubuntu/16.10/logrotate/nginx b/install/ubuntu/16.10/logrotate/nginx new file mode 100644 index 00000000..d667f213 --- /dev/null +++ b/install/ubuntu/16.10/logrotate/nginx @@ -0,0 +1,13 @@ +/var/log/nginx/*log /var/log/nginx/domains/*log { + daily + missingok + rotate 52 + compress + delaycompress + notifempty + create 640 nginx adm + sharedscripts + postrotate + [ -f /var/run/nginx.pid ] && kill -USR1 `cat /var/run/nginx.pid` + endscript +} diff --git a/install/ubuntu/16.10/logrotate/vesta b/install/ubuntu/16.10/logrotate/vesta new file mode 100644 index 00000000..027a3439 --- /dev/null +++ b/install/ubuntu/16.10/logrotate/vesta @@ -0,0 +1,7 @@ +/usr/local/vesta/log/*.log { + missingok + notifempty + size 30k + yearly + create 0600 root root +} diff --git a/install/ubuntu/16.10/mysql/my-large.cnf b/install/ubuntu/16.10/mysql/my-large.cnf new file mode 100644 index 00000000..7201377c --- /dev/null +++ b/install/ubuntu/16.10/mysql/my-large.cnf @@ -0,0 +1,41 @@ +[client] +port=3306 +socket=/var/run/mysqld/mysqld.sock + +[mysqld_safe] +socket=/var/run/mysqld/mysqld.sock + +[mysqld] +user=mysql +pid-file=/var/run/mysqld/mysqld.pid +socket=/var/run/mysqld/mysqld.sock +port=3306 +basedir=/usr +datadir=/var/lib/mysql +tmpdir=/tmp +lc-messages-dir=/usr/share/mysql +log_error=/var/log/mysql/error.log + +symbolic-links=0 + +skip-external-locking +key_buffer_size = 256M +max_allowed_packet = 32M +table_open_cache = 256 +sort_buffer_size = 1M +read_buffer_size = 1M +read_rnd_buffer_size = 4M +myisam_sort_buffer_size = 64M +thread_cache_size = 8 +query_cache_size= 16M + +#innodb_use_native_aio = 0 +innodb_file_per_table + +max_connections=200 +max_user_connections=50 +wait_timeout=10 +interactive_timeout=50 +long_query_time=5 + +!includedir /etc/mysql/conf.d/ diff --git a/install/ubuntu/16.10/mysql/my-medium.cnf b/install/ubuntu/16.10/mysql/my-medium.cnf new file mode 100644 index 00000000..1c10ab9a --- /dev/null +++ b/install/ubuntu/16.10/mysql/my-medium.cnf @@ -0,0 +1,40 @@ +[client] +port=3306 +socket=/var/run/mysqld/mysqld.sock + +[mysqld_safe] +socket=/var/run/mysqld/mysqld.sock + +[mysqld] +user=mysql +pid-file=/var/run/mysqld/mysqld.pid +socket=/var/run/mysqld/mysqld.sock +port=3306 +basedir=/usr +datadir=/var/lib/mysql +tmpdir=/tmp +lc-messages-dir=/usr/share/mysql +log_error=/var/log/mysql/error.log + +symbolic-links=0 + +skip-external-locking +key_buffer_size = 16M +max_allowed_packet = 16M +table_open_cache = 64 +sort_buffer_size = 512K +net_buffer_length = 8K +read_buffer_size = 256K +read_rnd_buffer_size = 512K +myisam_sort_buffer_size = 8M + +#innodb_use_native_aio = 0 +innodb_file_per_table + +max_connections=70 +max_user_connections=30 +wait_timeout=10 +interactive_timeout=50 +long_query_time=5 + +!includedir /etc/mysql/conf.d/ diff --git a/install/ubuntu/16.10/mysql/my-small.cnf b/install/ubuntu/16.10/mysql/my-small.cnf new file mode 100644 index 00000000..26a80478 --- /dev/null +++ b/install/ubuntu/16.10/mysql/my-small.cnf @@ -0,0 +1,40 @@ +[client] +port=3306 +socket=/var/run/mysqld/mysqld.sock + +[mysqld_safe] +socket=/var/run/mysqld/mysqld.sock + +[mysqld] +user=mysql +pid-file=/var/run/mysqld/mysqld.pid +socket=/var/run/mysqld/mysqld.sock +port=3306 +basedir=/usr +datadir=/var/lib/mysql +tmpdir=/tmp +lc-messages-dir=/usr/share/mysql +log_error=/var/log/mysql/error.log + +symbolic-links=0 + +skip-external-locking +key_buffer_size = 16K +max_allowed_packet = 1M +table_open_cache = 4 +sort_buffer_size = 64K +read_buffer_size = 256K +read_rnd_buffer_size = 256K +net_buffer_length = 2K +thread_stack = 240K + +#innodb_use_native_aio = 0 +innodb_file_per_table + +max_connections=30 +max_user_connections=20 +wait_timeout=10 +interactive_timeout=50 +long_query_time=5 + +!includedir /etc/mysql/conf.d/ diff --git a/install/ubuntu/16.10/nginx/nginx.conf b/install/ubuntu/16.10/nginx/nginx.conf new file mode 100644 index 00000000..1932d171 --- /dev/null +++ b/install/ubuntu/16.10/nginx/nginx.conf @@ -0,0 +1,134 @@ +# Server globals +user www-data; +worker_processes auto; +worker_rlimit_nofile 65535; +error_log /var/log/nginx/error.log crit; +pid /var/run/nginx.pid; + + +# Worker config +events { + worker_connections 1024; + use epoll; + multi_accept on; +} + + +http { + # Main settings + sendfile on; + tcp_nopush on; + tcp_nodelay on; + client_header_timeout 1m; + client_body_timeout 1m; + client_header_buffer_size 2k; + client_body_buffer_size 256k; + client_max_body_size 256m; + large_client_header_buffers 4 8k; + send_timeout 30; + keepalive_timeout 60 60; + reset_timedout_connection on; + server_tokens off; + server_name_in_redirect off; + server_names_hash_max_size 512; + server_names_hash_bucket_size 512; + + + # Log format + log_format main '$remote_addr - $remote_user [$time_local] $request ' + '"$status" $body_bytes_sent "$http_referer" ' + '"$http_user_agent" "$http_x_forwarded_for"'; + log_format bytes '$body_bytes_sent'; + #access_log /var/log/nginx/access.log main; + access_log off; + + + # Mime settings + include /etc/nginx/mime.types; + default_type application/octet-stream; + + + # Compression + gzip on; + gzip_comp_level 9; + gzip_min_length 512; + gzip_buffers 8 64k; + gzip_types text/plain text/css text/javascript text/js text/xml application/json application/javascript application/x-javascript application/xml application/xml+rss application/x-font-ttf image/svg+xml font/opentype; + gzip_proxied any; + gzip_disable "MSIE [1-6]\."; + + # Proxy settings + proxy_redirect off; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_pass_header Set-Cookie; + proxy_connect_timeout 90; + proxy_send_timeout 90; + proxy_read_timeout 90; + proxy_buffers 32 4k; + + + # Cloudflare https://www.cloudflare.com/ips + set_real_ip_from 199.27.128.0/21; + set_real_ip_from 173.245.48.0/20; + set_real_ip_from 103.21.244.0/22; + set_real_ip_from 103.22.200.0/22; + set_real_ip_from 103.31.4.0/22; + set_real_ip_from 141.101.64.0/18; + set_real_ip_from 108.162.192.0/18; + set_real_ip_from 190.93.240.0/20; + set_real_ip_from 188.114.96.0/20; + set_real_ip_from 197.234.240.0/22; + set_real_ip_from 198.41.128.0/17; + set_real_ip_from 162.158.0.0/15; + set_real_ip_from 104.16.0.0/12; + set_real_ip_from 172.64.0.0/13; + #set_real_ip_from 2400:cb00::/32; + #set_real_ip_from 2606:4700::/32; + #set_real_ip_from 2803:f800::/32; + #set_real_ip_from 2405:b500::/32; + #set_real_ip_from 2405:8100::/32; + real_ip_header CF-Connecting-IP; + + + # SSL PCI Compliance + ssl_session_cache shared:SSL:10m; + ssl_protocols TLSv1 TLSv1.1 TLSv1.2; + ssl_prefer_server_ciphers on; + ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4"; + + + # Error pages + error_page 403 /error/403.html; + error_page 404 /error/404.html; + error_page 502 503 504 /error/50x.html; + + + # Cache settings + proxy_cache_path /var/cache/nginx levels=2 keys_zone=cache:10m inactive=60m max_size=1024m; + proxy_cache_key "$host$request_uri $cookie_user"; + proxy_temp_path /var/cache/nginx/temp; + proxy_ignore_headers Expires Cache-Control; + proxy_cache_use_stale error timeout invalid_header http_502; + proxy_cache_valid any 1d; + + + # Cache bypass + map $http_cookie $no_cache { + default 0; + ~SESS 1; + ~wordpress_logged_in 1; + } + + + # File cache settings + open_file_cache max=10000 inactive=30s; + open_file_cache_valid 60s; + open_file_cache_min_uses 2; + open_file_cache_errors off; + + + # Wildcard include + include /etc/nginx/conf.d/*.conf; +} diff --git a/install/ubuntu/16.10/nginx/phpmyadmin.inc b/install/ubuntu/16.10/nginx/phpmyadmin.inc new file mode 100644 index 00000000..1feb8546 --- /dev/null +++ b/install/ubuntu/16.10/nginx/phpmyadmin.inc @@ -0,0 +1,18 @@ +location /phpmyadmin { + alias /usr/share/phpmyadmin/; + + location ~ /(libraries|setup) { + return 404; + } + + location ~ ^/phpmyadmin/(.*\.php)$ { + alias /usr/share/phpmyadmin/$1; + fastcgi_pass 127.0.0.1:9000; + fastcgi_index index.php; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $request_filename; + } + location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { + root /usr/share/; + } +} diff --git a/install/ubuntu/16.10/nginx/phppgadmin.inc b/install/ubuntu/16.10/nginx/phppgadmin.inc new file mode 100644 index 00000000..cd1e5806 --- /dev/null +++ b/install/ubuntu/16.10/nginx/phppgadmin.inc @@ -0,0 +1,11 @@ +location /phppgadmin { + alias /usr/share/phppgadmin/; + + location ~ ^/phppgadmin/(.*\.php)$ { + alias /usr/share/phppgadmin/$1; + fastcgi_pass 127.0.0.1:9000; + fastcgi_index index.php; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $request_filename; + } +} diff --git a/install/ubuntu/16.10/nginx/status.conf b/install/ubuntu/16.10/nginx/status.conf new file mode 100644 index 00000000..c0bcd069 --- /dev/null +++ b/install/ubuntu/16.10/nginx/status.conf @@ -0,0 +1,9 @@ +server { + listen 127.0.0.1:8084 default; + server_name _; + server_name_in_redirect off; + location / { + stub_status on; + access_log off; + } +} diff --git a/install/ubuntu/16.10/nginx/webmail.inc b/install/ubuntu/16.10/nginx/webmail.inc new file mode 100644 index 00000000..ad66895b --- /dev/null +++ b/install/ubuntu/16.10/nginx/webmail.inc @@ -0,0 +1,15 @@ +location /webmail { + alias /var/lib/roundcube/; + + location ~ /(config|temp|logs) { + return 404; + } + + location ~ ^/webmail/(.*\.php)$ { + alias /var/lib/roundcube/$1; + fastcgi_pass 127.0.0.1:9000; + fastcgi_index index.php; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $request_filename; + } +} diff --git a/install/ubuntu/16.10/packages/default.pkg b/install/ubuntu/16.10/packages/default.pkg new file mode 100644 index 00000000..f4a37554 --- /dev/null +++ b/install/ubuntu/16.10/packages/default.pkg @@ -0,0 +1,18 @@ +WEB_TEMPLATE='default' +PROXY_TEMPLATE='default' +DNS_TEMPLATE='default' +WEB_DOMAINS='100' +WEB_ALIASES='100' +DNS_DOMAINS='100' +DNS_RECORDS='100' +MAIL_DOMAINS='100' +MAIL_ACCOUNTS='100' +DATABASES='100' +CRON_JOBS='100' +DISK_QUOTA='unlimited' +BANDWIDTH='100000' +NS='ns1.localhost.ltd,ns2.localhost.ltd' +SHELL='nologin' +BACKUPS='3' +TIME='11:46:50' +DATE='2012-09-26' diff --git a/install/ubuntu/16.10/packages/gainsboro.pkg b/install/ubuntu/16.10/packages/gainsboro.pkg new file mode 100644 index 00000000..c3df5025 --- /dev/null +++ b/install/ubuntu/16.10/packages/gainsboro.pkg @@ -0,0 +1,18 @@ +WEB_TEMPLATE='default' +PROXY_TEMPLATE='default' +DNS_TEMPLATE='default' +WEB_DOMAINS='10' +WEB_ALIASES='10' +DNS_DOMAINS='10' +DNS_RECORDS='10' +MAIL_DOMAINS='10' +MAIL_ACCOUNTS='10' +DATABASES='10' +CRON_JOBS='10' +DISK_QUOTA='10000' +BANDWIDTH='10000' +NS='ns1.localhost.ltd,ns2.localhost.ltd' +SHELL='nologin' +BACKUPS='1' +TIME='11:31:30' +DATE='2012-07-26' diff --git a/install/ubuntu/16.10/packages/palegreen.pkg b/install/ubuntu/16.10/packages/palegreen.pkg new file mode 100644 index 00000000..d08930f7 --- /dev/null +++ b/install/ubuntu/16.10/packages/palegreen.pkg @@ -0,0 +1,18 @@ +WEB_TEMPLATE='hosting' +PROXY_TEMPLATE='hosting' +DNS_TEMPLATE='default' +WEB_DOMAINS='50' +WEB_ALIASES='50' +DNS_DOMAINS='50' +DNS_RECORDS='50' +MAIL_DOMAINS='50' +MAIL_ACCOUNTS='50' +DATABASES='50' +CRON_JOBS='50' +DISK_QUOTA='50000' +BANDWIDTH='50000' +NS='ns1.localhost.ltd,ns2.localhost.ltd' +SHELL='nologin' +BACKUPS='5' +TIME='07:49:47' +DATE='2013-06-10' diff --git a/install/ubuntu/16.10/packages/slategrey.pkg b/install/ubuntu/16.10/packages/slategrey.pkg new file mode 100644 index 00000000..15a17dcd --- /dev/null +++ b/install/ubuntu/16.10/packages/slategrey.pkg @@ -0,0 +1,18 @@ +WEB_TEMPLATE='default' +PROXY_TEMPLATE='default' +DNS_TEMPLATE='default' +WEB_DOMAINS='100' +WEB_ALIASES='100' +DNS_DOMAINS='100' +DNS_RECORDS='100' +MAIL_DOMAINS='100' +MAIL_ACCOUNTS='100' +DATABASES='100' +CRON_JOBS='100' +DISK_QUOTA='10000' +BANDWIDTH='100000' +NS='ns1.localhost.ltd,ns2.localhost.ltd' +SHELL='nologin' +BACKUPS='3' +TIME='12:39:13' +DATE='2012-09-20' diff --git a/install/ubuntu/16.10/pga/config.inc.php b/install/ubuntu/16.10/pga/config.inc.php new file mode 100644 index 00000000..1eec9776 --- /dev/null +++ b/install/ubuntu/16.10/pga/config.inc.php @@ -0,0 +1,159 @@ + diff --git a/install/ubuntu/16.10/pga/phppgadmin.conf b/install/ubuntu/16.10/pga/phppgadmin.conf new file mode 100644 index 00000000..f39247d6 --- /dev/null +++ b/install/ubuntu/16.10/pga/phppgadmin.conf @@ -0,0 +1,31 @@ +Alias /phppgadmin /usr/share/phppgadmin + + + +DirectoryIndex index.php +AllowOverride None + +order deny,allow +deny from all +allow from 127.0.0.0/255.0.0.0 ::1/128 +allow from all + + + php_flag magic_quotes_gpc Off + php_flag track_vars On + php_value include_path . + + + + + AddType application/x-httpd-php .php + Action application/x-httpd-php /cgi-bin/php + + + AddType application/x-httpd-php .php + Action application/x-httpd-php /cgi-bin/php + + + + + diff --git a/install/ubuntu/16.10/php-fpm/www.conf b/install/ubuntu/16.10/php-fpm/www.conf new file mode 100644 index 00000000..d046bcee --- /dev/null +++ b/install/ubuntu/16.10/php-fpm/www.conf @@ -0,0 +1,10 @@ +[www] +listen = 127.0.0.1:9000 +listen.allowed_clients = 127.0.0.1 +user = www-data +group = www-data +pm = dynamic +pm.max_children = 50 +pm.start_servers = 5 +pm.min_spare_servers = 3 +pm.max_spare_servers = 35 diff --git a/install/ubuntu/16.10/pma/apache.conf b/install/ubuntu/16.10/pma/apache.conf new file mode 100644 index 00000000..4da6ce84 --- /dev/null +++ b/install/ubuntu/16.10/pma/apache.conf @@ -0,0 +1,42 @@ +# phpMyAdmin default Apache configuration + +Alias /phpmyadmin /usr/share/phpmyadmin + + + Options FollowSymLinks + DirectoryIndex index.php + + + AddType application/x-httpd-php .php + + php_flag magic_quotes_gpc Off + php_flag track_vars On + php_flag register_globals Off + php_admin_flag allow_url_fopen Off + php_value include_path . + php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp + php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext:/usr/share/javascript/ + + + + +# Authorize for setup + + + AuthType Basic + AuthName "phpMyAdmin Setup" + AuthUserFile /etc/phpmyadmin/htpasswd.setup + + Require valid-user + + +# Disallow web access to directories that don't need it + + Order Deny,Allow + Deny from All + + + Order Deny,Allow + Deny from All + + diff --git a/install/ubuntu/16.10/pma/config.inc.php b/install/ubuntu/16.10/pma/config.inc.php new file mode 100644 index 00000000..a643a065 --- /dev/null +++ b/install/ubuntu/16.10/pma/config.inc.php @@ -0,0 +1,146 @@ + + VRootEngine on + VRootAlias /etc/security/pam_env.conf etc/security/pam_env.conf + + +AuthPAMConfig proftpd +AuthOrder mod_auth_pam.c* mod_auth_unix.c +UseReverseDNS off +User proftpd +Group nogroup +MaxInstances 20 +UseSendfile off +LogFormat default "%h %l %u %t \"%r\" %s %b" +LogFormat auth "%v [%P] %h %t \"%r\" %s" +ListOptions -a +RequireValidShell off +PassivePorts 12000 12100 + + + Umask 002 + IdentLookups off + AllowOverwrite yes + + AllowAll + + diff --git a/install/ubuntu/16.10/roundcube/apache.conf b/install/ubuntu/16.10/roundcube/apache.conf new file mode 100644 index 00000000..a0c87bcc --- /dev/null +++ b/install/ubuntu/16.10/roundcube/apache.conf @@ -0,0 +1,40 @@ +Alias /roundcube/program/js/tiny_mce/ /usr/share/tinymce/www/ +Alias /roundcube /var/lib/roundcube +Alias /webmail /var/lib/roundcube + +# Access to tinymce files + + Options Indexes MultiViews FollowSymLinks + AllowOverride None + Order allow,deny + allow from all + + + + Options +FollowSymLinks + # This is needed to parse /var/lib/roundcube/.htaccess. See its + # content before setting AllowOverride to None. + AllowOverride All + order allow,deny + allow from all + + +# Protecting basic directories: + + Options -FollowSymLinks + AllowOverride None + + + + Options -FollowSymLinks + AllowOverride None + Order allow,deny + Deny from all + + + + Options -FollowSymLinks + AllowOverride None + Order allow,deny + Deny from all + diff --git a/install/ubuntu/16.10/roundcube/config.inc.php b/install/ubuntu/16.10/roundcube/config.inc.php new file mode 100644 index 00000000..0c82b1bc --- /dev/null +++ b/install/ubuntu/16.10/roundcube/config.inc.php @@ -0,0 +1,33 @@ + diff --git a/install/ubuntu/16.10/roundcube/main.inc.php b/install/ubuntu/16.10/roundcube/main.inc.php new file mode 100644 index 00000000..44b19793 --- /dev/null +++ b/install/ubuntu/16.10/roundcube/main.inc.php @@ -0,0 +1,850 @@ +/sendmail or to syslog +$rcmail_config['smtp_log'] = true; + +// Log successful logins to /userlogins or to syslog +$rcmail_config['log_logins'] = false; + +// Log session authentication errors to /session or to syslog +$rcmail_config['log_session'] = false; + +// Log SQL queries to /sql or to syslog +$rcmail_config['sql_debug'] = false; + +// Log IMAP conversation to /imap or to syslog +$rcmail_config['imap_debug'] = false; + +// Log LDAP conversation to /ldap or to syslog +$rcmail_config['ldap_debug'] = false; + +// Log SMTP conversation to /smtp or to syslog +$rcmail_config['smtp_debug'] = false; + +// ---------------------------------- +// IMAP +// ---------------------------------- + +// the mail host chosen to perform the log-in +// leave blank to show a textbox at login, give a list of hosts +// to display a pulldown menu or set one host as string. +// To use SSL/TLS connection, enter hostname with prefix ssl:// or tls:// +// Supported replacement variables: +// %n - http hostname ($_SERVER['SERVER_NAME']) +// %d - domain (http hostname without the first part) +// %s - domain name after the '@' from e-mail address provided at login screen +// For example %n = mail.domain.tld, %d = domain.tld +$rcmail_config['default_host'] = 'localhost'; + +// TCP port used for IMAP connections +$rcmail_config['default_port'] = 143; + +// IMAP AUTH type (DIGEST-MD5, CRAM-MD5, LOGIN, PLAIN or empty to use +// best server supported one) +$rcmail_config['imap_auth_type'] = null; + +// If you know your imap's folder delimiter, you can specify it here. +// Otherwise it will be determined automatically +$rcmail_config['imap_delimiter'] = null; + +// If IMAP server doesn't support NAMESPACE extension, but you're +// using shared folders or personal root folder is non-empty, you'll need to +// set these options. All can be strings or arrays of strings. +// Folders need to be ended with directory separator, e.g. "INBOX." +// (special directory "~" is an exception to this rule) +// These can be used also to overwrite server's namespaces +$rcmail_config['imap_ns_personal'] = null; +$rcmail_config['imap_ns_other'] = null; +$rcmail_config['imap_ns_shared'] = null; + +// By default IMAP capabilities are readed after connection to IMAP server +// In some cases, e.g. when using IMAP proxy, there's a need to refresh the list +// after login. Set to True if you've got this case. +$rcmail_config['imap_force_caps'] = false; + +// By default list of subscribed folders is determined using LIST-EXTENDED +// extension if available. Some servers (dovecot 1.x) returns wrong results +// for shared namespaces in this case. http://trac.roundcube.net/ticket/1486225 +// Enable this option to force LSUB command usage instead. +$rcmail_config['imap_force_lsub'] = false; + +// Some server configurations (e.g. Courier) doesn't list folders in all namespaces +// Enable this option to force listing of folders in all namespaces +$rcmail_config['imap_force_ns'] = false; + +// IMAP connection timeout, in seconds. Default: 0 (no limit) +$rcmail_config['imap_timeout'] = 0; + +// Optional IMAP authentication identifier to be used as authorization proxy +$rcmail_config['imap_auth_cid'] = null; + +// Optional IMAP authentication password to be used for imap_auth_cid +$rcmail_config['imap_auth_pw'] = null; + +// Type of IMAP indexes cache. Supported values: 'db', 'apc' and 'memcache'. +$rcmail_config['imap_cache'] = null; + +// Enables messages cache. Only 'db' cache is supported. +$rcmail_config['messages_cache'] = false; + + +// ---------------------------------- +// SMTP +// ---------------------------------- + +// SMTP server host (for sending mails). +// To use SSL/TLS connection, enter hostname with prefix ssl:// or tls:// +// If left blank, the PHP mail() function is used +// Supported replacement variables: +// %h - user's IMAP hostname +// %n - http hostname ($_SERVER['SERVER_NAME']) +// %d - domain (http hostname without the first part) +// %z - IMAP domain (IMAP hostname without the first part) +// For example %n = mail.domain.tld, %d = domain.tld +$rcmail_config['smtp_server'] = ''; + +// SMTP port (default is 25; use 587 for STARTTLS or 465 for the +// deprecated SSL over SMTP (aka SMTPS)) +$rcmail_config['smtp_port'] = 25; + +// SMTP username (if required) if you use %u as the username Roundcube +// will use the current username for login +$rcmail_config['smtp_user'] = ''; + +// SMTP password (if required) if you use %p as the password Roundcube +// will use the current user's password for login +$rcmail_config['smtp_pass'] = ''; + +// SMTP AUTH type (DIGEST-MD5, CRAM-MD5, LOGIN, PLAIN or empty to use +// best server supported one) +$rcmail_config['smtp_auth_type'] = ''; + +// Optional SMTP authentication identifier to be used as authorization proxy +$rcmail_config['smtp_auth_cid'] = null; + +// Optional SMTP authentication password to be used for smtp_auth_cid +$rcmail_config['smtp_auth_pw'] = null; + +// SMTP HELO host +// Hostname to give to the remote server for SMTP 'HELO' or 'EHLO' messages +// Leave this blank and you will get the server variable 'server_name' or +// localhost if that isn't defined. +$rcmail_config['smtp_helo_host'] = ''; + +// SMTP connection timeout, in seconds. Default: 0 (no limit) +$rcmail_config['smtp_timeout'] = 0; + +// ---------------------------------- +// SYSTEM +// ---------------------------------- +include_once("/etc/roundcube/debian-db-roundcube.php"); + + +// THIS OPTION WILL ALLOW THE INSTALLER TO RUN AND CAN EXPOSE SENSITIVE CONFIG DATA. +// ONLY ENABLE IT IF YOU'RE REALLY SURE WHAT YOU'RE DOING! +$rcmail_config['enable_installer'] = false; + +// provide an URL where a user can get support for this Roundcube installation +// PLEASE DO NOT LINK TO THE ROUNDCUBE.NET WEBSITE HERE! +$rcmail_config['support_url'] = ''; + +// replace Roundcube logo with this image +// specify an URL relative to the document root of this Roundcube installation +$rcmail_config['skin_logo'] = null; + +// automatically create a new Roundcube user when log-in the first time. +// a new user will be created once the IMAP login succeeds. +// set to false if only registered users can use this service +$rcmail_config['auto_create_user'] = true; + +// use this folder to store log files (must be writeable for apache user) +// This is used by the 'file' log driver. +$rcmail_config['log_dir'] = '/var/log/roundcubemail/'; + +// use this folder to store temp files (must be writeable for apache user) +$rcmail_config['temp_dir'] = '/tmp'; + +// lifetime of message cache +// possible units: s, m, h, d, w +$rcmail_config['message_cache_lifetime'] = '10d'; + +// enforce connections over https +// with this option enabled, all non-secure connections will be redirected. +// set the port for the ssl connection as value of this option if it differs from the default 443 +$rcmail_config['force_https'] = false; + +// tell PHP that it should work as under secure connection +// even if it doesn't recognize it as secure ($_SERVER['HTTPS'] is not set) +// e.g. when you're running Roundcube behind a https proxy +// this option is mutually exclusive to 'force_https' and only either one of them should be set to true. +$rcmail_config['use_https'] = false; + +// Allow browser-autocompletion on login form. +// 0 - disabled, 1 - username and host only, 2 - username, host, password +$rcmail_config['login_autocomplete'] = 0; + +// Forces conversion of logins to lower case. +// 0 - disabled, 1 - only domain part, 2 - domain and local part. +// If users authentication is not case-sensitive this must be enabled. +// After enabling it all user records need to be updated, e.g. with query: +// UPDATE users SET username = LOWER(username); +$rcmail_config['login_lc'] = 0; + +// Includes should be interpreted as PHP files +$rcmail_config['skin_include_php'] = false; + +// display software version on login screen +$rcmail_config['display_version'] = false; + +// Session lifetime in minutes +// must be greater than 'keep_alive'/60 +$rcmail_config['session_lifetime'] = 10; + +// session domain: .example.org +$rcmail_config['session_domain'] = ''; + +// session name. Default: 'roundcube_sessid' +$rcmail_config['session_name'] = null; + +// Backend to use for session storage. Can either be 'db' (default) or 'memcache' +// If set to memcache, a list of servers need to be specified in 'memcache_hosts' +// Make sure the Memcache extension (http://pecl.php.net/package/memcache) version >= 2.0.0 is installed +$rcmail_config['session_storage'] = 'db'; + +// Use these hosts for accessing memcached +// Define any number of hosts in the form of hostname:port or unix:///path/to/sock.file +$rcmail_config['memcache_hosts'] = null; // e.g. array( 'localhost:11211', '192.168.1.12:11211', 'unix:///var/tmp/memcached.sock' ); + +// check client IP in session athorization +$rcmail_config['ip_check'] = false; + +// check referer of incoming requests +$rcmail_config['referer_check'] = false; + +// X-Frame-Options HTTP header value sent to prevent from Clickjacking. +// Possible values: sameorigin|deny. Set to false in order to disable sending them +$rcmail_config['x_frame_options'] = 'sameorigin'; + +// this key is used to encrypt the users imap password which is stored +// in the session record (and the client cookie if remember password is enabled). +// please provide a string of exactly 24 chars. +$rcmail_config['des_key'] = 'vtIOjLZo9kffJoqzpSbm5r1r'; + +// Automatically add this domain to user names for login +// Only for IMAP servers that require full e-mail addresses for login +// Specify an array with 'host' => 'domain' values to support multiple hosts +// Supported replacement variables: +// %h - user's IMAP hostname +// %n - http hostname ($_SERVER['SERVER_NAME']) +// %d - domain (http hostname without the first part) +// %z - IMAP domain (IMAP hostname without the first part) +// For example %n = mail.domain.tld, %d = domain.tld +$rcmail_config['username_domain'] = ''; + +// This domain will be used to form e-mail addresses of new users +// Specify an array with 'host' => 'domain' values to support multiple hosts +// Supported replacement variables: +// %h - user's IMAP hostname +// %n - http hostname ($_SERVER['SERVER_NAME']) +// %d - domain (http hostname without the first part) +// %z - IMAP domain (IMAP hostname without the first part) +// For example %n = mail.domain.tld, %d = domain.tld +$rcmail_config['mail_domain'] = ''; + +// Password charset. +// Use it if your authentication backend doesn't support UTF-8. +// Defaults to ISO-8859-1 for backward compatibility +$rcmail_config['password_charset'] = 'ISO-8859-1'; + +// How many seconds must pass between emails sent by a user +$rcmail_config['sendmail_delay'] = 0; + +// Maximum number of recipients per message. Default: 0 (no limit) +$rcmail_config['max_recipients'] = 0; + +// Maximum allowednumber of members of an address group. Default: 0 (no limit) +// If 'max_recipients' is set this value should be less or equal +$rcmail_config['max_group_members'] = 0; + +// add this user-agent to message headers when sending +$rcmail_config['useragent'] = 'Roundcube Webmail/'.RCMAIL_VERSION; + +// use this name to compose page titles +$rcmail_config['product_name'] = 'Roundcube Webmail'; + +// try to load host-specific configuration +// see http://trac.roundcube.net/wiki/Howto_Config for more details +$rcmail_config['include_host_config'] = false; + +// path to a text file which will be added to each sent message +// paths are relative to the Roundcube root folder +$rcmail_config['generic_message_footer'] = ''; + +// path to a text file which will be added to each sent HTML message +// paths are relative to the Roundcube root folder +$rcmail_config['generic_message_footer_html'] = ''; + +// add a received header to outgoing mails containing the creators IP and hostname +$rcmail_config['http_received_header'] = false; + +// Whether or not to encrypt the IP address and the host name +// these could, in some circles, be considered as sensitive information; +// however, for the administrator, these could be invaluable help +// when tracking down issues. +$rcmail_config['http_received_header_encrypt'] = false; + +// This string is used as a delimiter for message headers when sending +// a message via mail() function. Leave empty for auto-detection +$rcmail_config['mail_header_delimiter'] = NULL; + +// number of chars allowed for line when wrapping text. +// text wrapping is done when composing/sending messages +$rcmail_config['line_length'] = 72; + +// send plaintext messages as format=flowed +$rcmail_config['send_format_flowed'] = true; + +// don't allow these settings to be overriden by the user +$rcmail_config['dont_override'] = array(); + +// Set identities access level: +// 0 - many identities with possibility to edit all params +// 1 - many identities with possibility to edit all params but not email address +// 2 - one identity with possibility to edit all params +// 3 - one identity with possibility to edit all params but not email address +$rcmail_config['identities_level'] = 0; + +// Mimetypes supported by the browser. +// attachments of these types will open in a preview window +// either a comma-separated list or an array: 'text/plain,text/html,text/xml,image/jpeg,image/gif,image/png,application/pdf' +$rcmail_config['client_mimetypes'] = null; # null == default + +// mime magic database +$rcmail_config['mime_magic'] = null; + +// path to imagemagick identify binary +$rcmail_config['im_identify_path'] = null; + +// path to imagemagick convert binary +$rcmail_config['im_convert_path'] = null; + +// maximum size of uploaded contact photos in pixel +$rcmail_config['contact_photo_size'] = 160; + +// Enable DNS checking for e-mail address validation +$rcmail_config['email_dns_check'] = false; + +// ---------------------------------- +// PLUGINS +// ---------------------------------- + +// List of active plugins (in plugins/ directory) +$rcmail_config['plugins'] = array('password'); + +// ---------------------------------- +// USER INTERFACE +// ---------------------------------- + +// default messages sort column. Use empty value for default server's sorting, +// or 'arrival', 'date', 'subject', 'from', 'to', 'fromto', 'size', 'cc' +$rcmail_config['message_sort_col'] = ''; + +// default messages sort order +$rcmail_config['message_sort_order'] = 'DESC'; + +// These cols are shown in the message list. Available cols are: +// subject, from, to, fromto, cc, replyto, date, size, status, flag, attachment, 'priority' +$rcmail_config['list_cols'] = array('subject', 'status', 'fromto', 'date', 'size', 'flag', 'attachment'); + +// the default locale setting (leave empty for auto-detection) +// RFC1766 formatted language name like en_US, de_DE, de_CH, fr_FR, pt_BR +$rcmail_config['language'] = null; + +// use this format for date display (date or strftime format) +$rcmail_config['date_format'] = 'Y-m-d'; + +// give this choice of date formats to the user to select from +$rcmail_config['date_formats'] = array('Y-m-d', 'd-m-Y', 'Y/m/d', 'm/d/Y', 'd/m/Y', 'd.m.Y', 'j.n.Y'); + +// use this format for time display (date or strftime format) +$rcmail_config['time_format'] = 'H:i'; + +// give this choice of time formats to the user to select from +$rcmail_config['time_formats'] = array('G:i', 'H:i', 'g:i a', 'h:i A'); + +// use this format for short date display (derived from date_format and time_format) +$rcmail_config['date_short'] = 'D H:i'; + +// use this format for detailed date/time formatting (derived from date_format and time_format) +$rcmail_config['date_long'] = 'Y-m-d H:i'; + +// store draft message is this mailbox +// leave blank if draft messages should not be stored +// NOTE: Use folder names with namespace prefix (INBOX. on Courier-IMAP) +$rcmail_config['drafts_mbox'] = 'Drafts'; + +// store spam messages in this mailbox +// NOTE: Use folder names with namespace prefix (INBOX. on Courier-IMAP) +$rcmail_config['junk_mbox'] = 'Spam'; + +// store sent message is this mailbox +// leave blank if sent messages should not be stored +// NOTE: Use folder names with namespace prefix (INBOX. on Courier-IMAP) +$rcmail_config['sent_mbox'] = 'Sent'; + +// move messages to this folder when deleting them +// leave blank if they should be deleted directly +// NOTE: Use folder names with namespace prefix (INBOX. on Courier-IMAP) +$rcmail_config['trash_mbox'] = 'Trash'; + +// display these folders separately in the mailbox list. +// these folders will also be displayed with localized names +// NOTE: Use folder names with namespace prefix (INBOX. on Courier-IMAP) +$rcmail_config['default_folders'] = array('INBOX', 'Drafts', 'Sent', 'Spam', 'Trash'); +$rcmail_config['default_imap_folders'] = array('INBOX', 'Drafts', 'Sent', 'Spam', 'Trash'); + +// automatically create the above listed default folders on first login +$rcmail_config['create_default_folders'] = true; + +// protect the default folders from renames, deletes, and subscription changes +$rcmail_config['protect_default_folders'] = true; + +// if in your system 0 quota means no limit set this option to true +$rcmail_config['quota_zero_as_unlimited'] = true; + +// Make use of the built-in spell checker. It is based on GoogieSpell. +// Since Google only accepts connections over https your PHP installatation +// requires to be compiled with Open SSL support +$rcmail_config['enable_spellcheck'] = true; + +// Enables spellchecker exceptions dictionary. +// Setting it to 'shared' will make the dictionary shared by all users. +$rcmail_config['spellcheck_dictionary'] = false; + +// Set the spell checking engine. 'googie' is the default. 'pspell' is also available, +// but requires the Pspell extensions. When using Nox Spell Server, also set 'googie' here. +$rcmail_config['spellcheck_engine'] = 'googie'; + +// For a locally installed Nox Spell Server, please specify the URI to call it. +// Get Nox Spell Server from http://orangoo.com/labs/?page_id=72 +// Leave empty to use the Google spell checking service, what means +// that the message content will be sent to Google in order to check spelling +$rcmail_config['spellcheck_uri'] = ''; + +// These languages can be selected for spell checking. +// Configure as a PHP style hash array: array('en'=>'English', 'de'=>'Deutsch'); +// Leave empty for default set of available language. +$rcmail_config['spellcheck_languages'] = NULL; + +// Makes that words with all letters capitalized will be ignored (e.g. GOOGLE) +$rcmail_config['spellcheck_ignore_caps'] = false; + +// Makes that words with numbers will be ignored (e.g. g00gle) +$rcmail_config['spellcheck_ignore_nums'] = false; + +// Makes that words with symbols will be ignored (e.g. g@@gle) +$rcmail_config['spellcheck_ignore_syms'] = false; + +// Use this char/string to separate recipients when composing a new message +$rcmail_config['recipients_separator'] = ','; + +// don't let users set pagesize to more than this value if set +$rcmail_config['max_pagesize'] = 200; + +// Minimal value of user's 'keep_alive' setting (in seconds) +// Must be less than 'session_lifetime' +$rcmail_config['min_keep_alive'] = 60; + +// Enables files upload indicator. Requires APC installed and enabled apc.rfc1867 option. +// By default refresh time is set to 1 second. You can set this value to true +// or any integer value indicating number of seconds. +$rcmail_config['upload_progress'] = false; + +// Specifies for how many seconds the Undo button will be available +// after object delete action. Currently used with supporting address book sources. +// Setting it to 0, disables the feature. +$rcmail_config['undo_timeout'] = 0; + +// ---------------------------------- +// ADDRESSBOOK SETTINGS +// ---------------------------------- + +// This indicates which type of address book to use. Possible choises: +// 'sql' (default) and 'ldap'. +// If set to 'ldap' then it will look at using the first writable LDAP +// address book as the primary address book and it will not display the +// SQL address book in the 'Address Book' view. +$rcmail_config['address_book_type'] = 'sql'; + +// In order to enable public ldap search, configure an array like the Verisign +// example further below. if you would like to test, simply uncomment the example. +// Array key must contain only safe characters, ie. a-zA-Z0-9_ +$rcmail_config['ldap_public'] = array(); + +// If you are going to use LDAP for individual address books, you will need to +// set 'user_specific' to true and use the variables to generate the appropriate DNs to access it. +// +// The recommended directory structure for LDAP is to store all the address book entries +// under the users main entry, e.g.: +// +// o=root +// ou=people +// uid=user@domain +// mail=contact@contactdomain +// +// So the base_dn would be uid=%fu,ou=people,o=root +// The bind_dn would be the same as based_dn or some super user login. +/* + * example config for Verisign directory + * +$rcmail_config['ldap_public']['Verisign'] = array( + 'name' => 'Verisign.com', + // Replacement variables supported in host names: + // %h - user's IMAP hostname + // %n - http hostname ($_SERVER['SERVER_NAME']) + // %d - domain (http hostname without the first part) + // %z - IMAP domain (IMAP hostname without the first part) + // For example %n = mail.domain.tld, %d = domain.tld + 'hosts' => array('directory.verisign.com'), + 'port' => 389, + 'use_tls' => false, + 'ldap_version' => 3, // using LDAPv3 + 'user_specific' => false, // If true the base_dn, bind_dn and bind_pass default to the user's IMAP login. + // %fu - The full username provided, assumes the username is an email + // address, uses the username_domain value if not an email address. + // %u - The username prior to the '@'. + // %d - The domain name after the '@'. + // %dc - The domain name hierarchal string e.g. "dc=test,dc=domain,dc=com" + // %dn - DN found by ldap search when search_filter/search_base_dn are used + 'base_dn' => '', + 'bind_dn' => '', + 'bind_pass' => '', + // It's possible to bind for an individual address book + // The login name is used to search for the DN to bind with + 'search_base_dn' => '', + 'search_filter' => '', // e.g. '(&(objectClass=posixAccount)(uid=%u))' + // DN and password to bind as before searching for bind DN, if anonymous search is not allowed + 'search_bind_dn' => '', + 'search_bind_pw' => '', + // Default for %dn variable if search doesn't return DN value + 'search_dn_default' => '', + // Optional authentication identifier to be used as SASL authorization proxy + // bind_dn need to be empty + 'auth_cid' => '', + // SASL authentication method (for proxy auth), e.g. DIGEST-MD5 + 'auth_method' => '', + // Indicates if the addressbook shall be hidden from the list. + // With this option enabled you can still search/view contacts. + 'hidden' => false, + // Indicates if the addressbook shall not list contacts but only allows searching. + 'searchonly' => false, + // Indicates if we can write to the LDAP directory or not. + // If writable is true then these fields need to be populated: + // LDAP_Object_Classes, required_fields, LDAP_rdn + 'writable' => false, + // To create a new contact these are the object classes to specify + // (or any other classes you wish to use). + 'LDAP_Object_Classes' => array('top', 'inetOrgPerson'), + // The RDN field that is used for new entries, this field needs + // to be one of the search_fields, the base of base_dn is appended + // to the RDN to insert into the LDAP directory. + 'LDAP_rdn' => 'cn', + // The required fields needed to build a new contact as required by + // the object classes (can include additional fields not required by the object classes). + 'required_fields' => array('cn', 'sn', 'mail'), + 'search_fields' => array('mail', 'cn'), // fields to search in + // mapping of contact fields to directory attributes + // for every attribute one can specify the number of values (limit) allowed. + // default is 1, a wildcard * means unlimited + 'fieldmap' => array( + // Roundcube => LDAP:limit + 'name' => 'cn', + 'surname' => 'sn', + 'firstname' => 'givenName', + 'title' => 'title', + 'email' => 'mail:*', + 'phone:home' => 'homePhone', + 'phone:work' => 'telephoneNumber', + 'phone:mobile' => 'mobile', + 'phone:pager' => 'pager', + 'street' => 'street', + 'zipcode' => 'postalCode', + 'region' => 'st', + 'locality' => 'l', +// if you uncomment country, you need to modify 'sub_fields' above +// 'country' => 'c', + 'department' => 'departmentNumber', + 'notes' => 'description', +// these currently don't work: +// 'phone:workfax' => 'facsimileTelephoneNumber', +// 'photo' => 'jpegPhoto', +// 'organization' => 'o', +// 'manager' => 'manager', +// 'assistant' => 'secretary', + ), + // Map of contact sub-objects (attribute name => objectClass(es)), e.g. 'c' => 'country' + 'sub_fields' => array(), + 'sort' => 'cn', // The field to sort the listing by. + 'scope' => 'sub', // search mode: sub|base|list + 'filter' => '(objectClass=inetOrgPerson)', // used for basic listing (if not empty) and will be &'d with search queries. example: status=act + 'fuzzy_search' => true, // server allows wildcard search + 'vlv' => false, // Enable Virtual List View to more efficiently fetch paginated data (if server supports it) + 'numsub_filter' => '(objectClass=organizationalUnit)', // with VLV, we also use numSubOrdinates to query the total number of records. Set this filter to get all numSubOrdinates attributes for counting + 'sizelimit' => '0', // Enables you to limit the count of entries fetched. Setting this to 0 means no limit. + 'timelimit' => '0', // Sets the number of seconds how long is spend on the search. Setting this to 0 means no limit. + 'referrals' => true|false, // Sets the LDAP_OPT_REFERRALS option. Mostly used in multi-domain Active Directory setups + + // definition for contact groups (uncomment if no groups are supported) + // for the groups base_dn, the user replacements %fu, %u, $d and %dc work as for base_dn (see above) + // if the groups base_dn is empty, the contact base_dn is used for the groups as well + // -> in this case, assure that groups and contacts are separated due to the concernig filters! + 'groups' => array( + 'base_dn' => '', + 'scope' => 'sub', // search mode: sub|base|list + 'filter' => '(objectClass=groupOfNames)', + 'object_classes' => array("top", "groupOfNames"), + 'member_attr' => 'member', // name of the member attribute, e.g. uniqueMember + 'name_attr' => 'cn', // attribute to be used as group name + ), +); +*/ + +// An ordered array of the ids of the addressbooks that should be searched +// when populating address autocomplete fields server-side. ex: array('sql','Verisign'); +$rcmail_config['autocomplete_addressbooks'] = array('sql'); + +// The minimum number of characters required to be typed in an autocomplete field +// before address books will be searched. Most useful for LDAP directories that +// may need to do lengthy results building given overly-broad searches +$rcmail_config['autocomplete_min_length'] = 1; + +// Number of parallel autocomplete requests. +// If there's more than one address book, n parallel (async) requests will be created, +// where each request will search in one address book. By default (0), all address +// books are searched in one request. +$rcmail_config['autocomplete_threads'] = 0; + +// Max. numer of entries in autocomplete popup. Default: 15. +$rcmail_config['autocomplete_max'] = 15; + +// show address fields in this order +// available placeholders: {street}, {locality}, {zipcode}, {country}, {region} +$rcmail_config['address_template'] = '{street}
{locality} {zipcode}
{country} {region}'; + +// Matching mode for addressbook search (including autocompletion) +// 0 - partial (*abc*), default +// 1 - strict (abc) +// 2 - prefix (abc*) +// Note: For LDAP sources fuzzy_search must be enabled to use 'partial' or 'prefix' mode +$rcmail_config['addressbook_search_mode'] = 0; + +// ---------------------------------- +// USER PREFERENCES +// ---------------------------------- + +// Use this charset as fallback for message decoding +//$rcmail_config['default_charset'] = 'ISO-8859-1'; +$rcmail_config['default_charset'] = 'UTF-8'; + +// skin name: folder from skins/ +$rcmail_config['skin'] = 'larry'; + +// show up to X items in messages list view +$rcmail_config['mail_pagesize'] = 50; + +// show up to X items in contacts list view +$rcmail_config['addressbook_pagesize'] = 50; + +// sort contacts by this col (preferably either one of name, firstname, surname) +$rcmail_config['addressbook_sort_col'] = 'surname'; + +// the way how contact names are displayed in the list +// 0: display name +// 1: (prefix) firstname middlename surname (suffix) +// 2: (prefix) surname firstname middlename (suffix) +// 3: (prefix) surname, firstname middlename (suffix) +$rcmail_config['addressbook_name_listing'] = 0; + +// use this timezone to display date/time +// valid timezone identifers are listed here: php.net/manual/en/timezones.php +// 'auto' will use the browser's timezone settings +$rcmail_config['timezone'] = 'auto'; + +// prefer displaying HTML messages +$rcmail_config['prefer_html'] = true; + +// display remote inline images +// 0 - Never, always ask +// 1 - Ask if sender is not in address book +// 2 - Always show inline images +$rcmail_config['show_images'] = 0; + +// compose html formatted messages by default +// 0 - never, 1 - always, 2 - on reply to HTML message only +$rcmail_config['htmleditor'] = 0; + +// show pretty dates as standard +$rcmail_config['prettydate'] = true; + +// save compose message every 30 seconds +$rcmail_config['draft_autosave'] = 30; + +// default setting if preview pane is enabled +$rcmail_config['preview_pane'] = false; + +// Mark as read when viewed in preview pane (delay in seconds) +// Set to -1 if messages in preview pane should not be marked as read +$rcmail_config['preview_pane_mark_read'] = 0; + +// Clear Trash on logout +$rcmail_config['logout_purge'] = false; + +// Compact INBOX on logout +$rcmail_config['logout_expunge'] = false; + +// Display attached images below the message body +$rcmail_config['inline_images'] = true; + +// Encoding of long/non-ascii attachment names: +// 0 - Full RFC 2231 compatible +// 1 - RFC 2047 for 'name' and RFC 2231 for 'filename' parameter (Thunderbird's default) +// 2 - Full 2047 compatible +$rcmail_config['mime_param_folding'] = 1; + +// Set true if deleted messages should not be displayed +// This will make the application run slower +$rcmail_config['skip_deleted'] = false; + +// Set true to Mark deleted messages as read as well as deleted +// False means that a message's read status is not affected by marking it as deleted +$rcmail_config['read_when_deleted'] = true; + +// Set to true to never delete messages immediately +// Use 'Purge' to remove messages marked as deleted +$rcmail_config['flag_for_deletion'] = false; + +// Default interval for keep-alive/check-recent requests (in seconds) +// Must be greater than or equal to 'min_keep_alive' and less than 'session_lifetime' +$rcmail_config['keep_alive'] = 60; + +// If true all folders will be checked for recent messages +$rcmail_config['check_all_folders'] = false; + +// If true, after message delete/move, the next message will be displayed +$rcmail_config['display_next'] = false; + +// 0 - Do not expand threads +// 1 - Expand all threads automatically +// 2 - Expand only threads with unread messages +$rcmail_config['autoexpand_threads'] = 0; + +// When replying place cursor above original message (top posting) +$rcmail_config['top_posting'] = false; + +// When replying strip original signature from message +$rcmail_config['strip_existing_sig'] = true; + +// Show signature: +// 0 - Never +// 1 - Always +// 2 - New messages only +// 3 - Forwards and Replies only +$rcmail_config['show_sig'] = 1; + +// When replying or forwarding place sender's signature above existing message +$rcmail_config['sig_above'] = false; + +// Use MIME encoding (quoted-printable) for 8bit characters in message body +$rcmail_config['force_7bit'] = false; + +// Defaults of the search field configuration. +// The array can contain a per-folder list of header fields which should be considered when searching +// The entry with key '*' stands for all folders which do not have a specific list set. +// Please note that folder names should to be in sync with $rcmail_config['default_folders'] +$rcmail_config['search_mods'] = null; // Example: array('*' => array('subject'=>1, 'from'=>1), 'Sent' => array('subject'=>1, 'to'=>1)); + +// Defaults of the addressbook search field configuration. +$rcmail_config['addressbook_search_mods'] = null; // Example: array('name'=>1, 'firstname'=>1, 'surname'=>1, 'email'=>1, '*'=>1); + +// 'Delete always' +// This setting reflects if mail should be always deleted +// when moving to Trash fails. This is necessary in some setups +// when user is over quota and Trash is included in the quota. +$rcmail_config['delete_always'] = false; + +// Directly delete messages in Junk instead of moving to Trash +$rcmail_config['delete_junk'] = true; + +// Behavior if a received message requests a message delivery notification (read receipt) +// 0 = ask the user, 1 = send automatically, 2 = ignore (never send or ask) +// 3 = send automatically if sender is in addressbook, otherwise ask the user +// 4 = send automatically if sender is in addressbook, otherwise ignore +$rcmail_config['mdn_requests'] = 0; + +// Return receipt checkbox default state +$rcmail_config['mdn_default'] = 0; + +// Delivery Status Notification checkbox default state +$rcmail_config['dsn_default'] = 0; + +// Place replies in the folder of the message being replied to +$rcmail_config['reply_same_folder'] = false; + +// Sets default mode of Forward feature to "forward as attachment" +$rcmail_config['forward_attachment'] = false; + +// Defines address book (internal index) to which new contacts will be added +// By default it is the first writeable addressbook. +// Note: Use '0' for built-in address book. +$rcmail_config['default_addressbook'] = null; + +// Enables spell checking before sending a message. +$rcmail_config['spellcheck_before_send'] = false; + +// Skip alternative email addresses in autocompletion (show one address per contact) +$rcmail_config['autocomplete_single'] = false; + +// Default font for composed HTML message. +// Supported values: Andale Mono, Arial, Arial Black, Book Antiqua, Courier New, +// Georgia, Helvetica, Impact, Tahoma, Terminal, Times New Roman, Trebuchet MS, Verdana +$rcmail_config['default_font'] = ''; + +// end of config file diff --git a/install/ubuntu/16.10/roundcube/vesta.php b/install/ubuntu/16.10/roundcube/vesta.php new file mode 100644 index 00000000..8fb202a4 --- /dev/null +++ b/install/ubuntu/16.10/roundcube/vesta.php @@ -0,0 +1,62 @@ + + */ + + function password_save($curpass, $passwd) + { + $rcmail = rcmail::get_instance(); + $vesta_host = $rcmail->config->get('password_vesta_host'); + + if (empty($vesta_host)) + { + $vesta_host = 'localhost'; + } + + $vesta_port = $rcmail->config->get('password_vesta_port'); + if (empty($vesta_port)) + { + $vesta_port = '8083'; + } + + $postvars = array( + 'email' => $_SESSION['username'], + 'password' => $curpass, + 'new' => $passwd + ); + + $postdata = http_build_query($postvars); + + $send = 'POST /reset/mail/ HTTP/1.1' . PHP_EOL; + $send .= 'Host: ' . $vesta_host . PHP_EOL; + $send .= 'User-Agent: PHP Script' . PHP_EOL; + $send .= 'Content-length: ' . strlen($postdata) . PHP_EOL; + $send .= 'Content-type: application/x-www-form-urlencoded' . PHP_EOL; + $send .= 'Connection: close' . PHP_EOL; + $send .= PHP_EOL; + $send .= $postdata . PHP_EOL . PHP_EOL; + + $fp = fsockopen('ssl://' . $vesta_host, $vesta_port); + fputs($fp, $send); + $result = fread($fp, 2048); + fclose($fp); + + $fp = fopen("/tmp/roundcube.log", 'w'); + fwrite($fp, "test ok"); + fwrite($fp, "\n"); + fclose($fp); + + + if(strpos($result, 'ok') && !strpos($result, 'error')) + { + return PASSWORD_SUCCESS; + } + else { + return PASSWORD_ERROR; + } + + } diff --git a/install/ubuntu/16.10/sudo/admin b/install/ubuntu/16.10/sudo/admin new file mode 100644 index 00000000..4226bdd4 --- /dev/null +++ b/install/ubuntu/16.10/sudo/admin @@ -0,0 +1,8 @@ +# Created by vesta installer +Defaults env_keep="VESTA" +Defaults:admin !syslog +Defaults:admin !requiretty +Defaults:root !requiretty + +admin ALL=(ALL) ALL +admin ALL=NOPASSWD:/usr/local/vesta/bin/* diff --git a/install/ubuntu/16.10/templates/dns/child-ns.tpl b/install/ubuntu/16.10/templates/dns/child-ns.tpl new file mode 100755 index 00000000..f0695773 --- /dev/null +++ b/install/ubuntu/16.10/templates/dns/child-ns.tpl @@ -0,0 +1,12 @@ +ID='1' RECORD='@' TYPE='NS' PRIORITY='' VALUE='ns1.%domain%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='2' RECORD='@' TYPE='NS' PRIORITY='' VALUE='ns2.%domain%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='3' RECORD='@' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='4' RECORD='ns1' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='5' RECORD='ns2' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='6' RECORD='mail' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='7' RECORD='www' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='8' RECORD='pop' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='9' RECORD='ftp' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='10' RECORD='@' TYPE='MX' PRIORITY='10' VALUE='mail.%domain%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='11' RECORD='@' TYPE='TXT' PRIORITY='' VALUE='"v=spf1 a mx ip4:%ip% ?all"' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='12' RECORD='_dmarc' TYPE='TXT' PRIORITY='' VALUE='"v=DMARC1; p=none"' SUSPENDED='no' TIME='%time%' DATE='%date%' diff --git a/install/ubuntu/16.10/templates/dns/default.tpl b/install/ubuntu/16.10/templates/dns/default.tpl new file mode 100755 index 00000000..d02cfc03 --- /dev/null +++ b/install/ubuntu/16.10/templates/dns/default.tpl @@ -0,0 +1,16 @@ +ID='1' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns1%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='2' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns2%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='3' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns3%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='4' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns4%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='5' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns5%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='6' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns6%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='7' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns7%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='8' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns8%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='9' RECORD='@' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='10' RECORD='mail' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='11' RECORD='www' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='12' RECORD='pop' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='13' RECORD='ftp' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='14' RECORD='@' TYPE='MX' PRIORITY='10' VALUE='mail.%domain%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='15' RECORD='@' TYPE='TXT' PRIORITY='' VALUE='"v=spf1 a mx ip4:%ip% ?all"' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='16' RECORD='_dmarc' TYPE='TXT' PRIORITY='' VALUE='"v=DMARC1; p=none"' SUSPENDED='no' TIME='%time%' DATE='%date%' diff --git a/install/ubuntu/16.10/templates/dns/gmail.tpl b/install/ubuntu/16.10/templates/dns/gmail.tpl new file mode 100755 index 00000000..950cfa45 --- /dev/null +++ b/install/ubuntu/16.10/templates/dns/gmail.tpl @@ -0,0 +1,14 @@ +ID='1' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns1%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='2' RECORD='@' TYPE='NS' PRIORITY='' VALUE='%ns2%.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='3' RECORD='@' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='4' RECORD='ftp' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='5' RECORD='localhost' TYPE='A' PRIORITY='' VALUE='127.0.0.1' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='6' RECORD='mail' TYPE='CNAME' PRIORITY='' VALUE='ghs.google.com.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='7' RECORD='pop' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='8' RECORD='www' TYPE='A' PRIORITY='' VALUE='%ip%' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='9' RECORD='@' TYPE='MX' PRIORITY='1' VALUE='ASPMX.L.GOOGLE.COM.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='10' RECORD='@' TYPE='MX' PRIORITY='5' VALUE='ALT1.ASPMX.L.GOOGLE.COM.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='11' RECORD='@' TYPE='MX' PRIORITY='5' VALUE='ALT2.ASPMX.L.GOOGLE.COM.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='12' RECORD='@' TYPE='MX' PRIORITY='10' VALUE='ASPMX2.GOOGLEMAIL.COM.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='13' RECORD='@' TYPE='MX' PRIORITY='10' VALUE='ASPMX3.GOOGLEMAIL.COM.' SUSPENDED='no' TIME='%time%' DATE='%date%' +ID='14' RECORD='@' TYPE='TXT' PRIORITY='' VALUE='"v=spf1 a mx ip4:%ip% ?all"' SUSPENDED='no' TIME='%time%' DATE='%date%' diff --git a/install/ubuntu/16.10/templates/web/apache2/basedir.stpl b/install/ubuntu/16.10/templates/web/apache2/basedir.stpl new file mode 100644 index 00000000..d978d4c4 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/apache2/basedir.stpl @@ -0,0 +1,44 @@ + + + ServerName %domain_idn% + %alias_string% + ServerAdmin %email% + DocumentRoot %sdocroot% + ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ + Alias /vstats/ %home%/%user%/web/%domain%/stats/ + Alias /error/ %home%/%user%/web/%domain%/document_errors/ + #SuexecUserGroup %user% %group% + CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes + CustomLog /var/log/%web_system%/domains/%domain%.log combined + ErrorLog /var/log/%web_system%/domains/%domain%.error.log + + AllowOverride All + SSLRequireSSL + Options +Includes -Indexes +ExecCGI + php_admin_value open_basedir %docroot%:%home%/%user%/tmp + php_admin_value upload_tmp_dir %home%/%user%/tmp + php_admin_value session.save_path %home%/%user%/tmp + php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f info@%domain_idn%" + + + AllowOverride All + + SSLEngine on + SSLVerifyClient none + SSLCertificateFile %ssl_crt% + SSLCertificateKeyFile %ssl_key% + %ssl_ca_str%SSLCertificateChainFile %ssl_ca% + + + RMode config + RUidGid %user% %group% + RGroups www-data + + + AssignUserID %user% %group% + + + IncludeOptional %home%/%user%/conf/web/s%web_system%.%domain%.conf* + + + diff --git a/install/ubuntu/16.10/templates/web/apache2/basedir.tpl b/install/ubuntu/16.10/templates/web/apache2/basedir.tpl new file mode 100644 index 00000000..96c94a1b --- /dev/null +++ b/install/ubuntu/16.10/templates/web/apache2/basedir.tpl @@ -0,0 +1,38 @@ + + + ServerName %domain_idn% + %alias_string% + ServerAdmin %email% + DocumentRoot %docroot% + ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ + Alias /vstats/ %home%/%user%/web/%domain%/stats/ + Alias /error/ %home%/%user%/web/%domain%/document_errors/ + #SuexecUserGroup %user% %group% + CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes + CustomLog /var/log/%web_system%/domains/%domain%.log combined + ErrorLog /var/log/%web_system%/domains/%domain%.error.log + + AllowOverride All + Options +Includes -Indexes +ExecCGI + php_admin_value open_basedir %docroot%:%home%/%user%/tmp + php_admin_value upload_tmp_dir %home%/%user%/tmp + php_admin_value session.save_path %home%/%user%/tmp + php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f info@%domain_idn%" + + + AllowOverride All + + + + RMode config + RUidGid %user% %group% + RGroups www-data + + + AssignUserID %user% %group% + + + IncludeOptional %home%/%user%/conf/web/%web_system%.%domain%.conf* + + + diff --git a/install/ubuntu/16.10/templates/web/apache2/default.stpl b/install/ubuntu/16.10/templates/web/apache2/default.stpl new file mode 100644 index 00000000..a7faa721 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/apache2/default.stpl @@ -0,0 +1,43 @@ + + + ServerName %domain_idn% + %alias_string% + ServerAdmin %email% + DocumentRoot %sdocroot% + ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ + Alias /vstats/ %home%/%user%/web/%domain%/stats/ + Alias /error/ %home%/%user%/web/%domain%/document_errors/ + #SuexecUserGroup %user% %group% + CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes + CustomLog /var/log/%web_system%/domains/%domain%.log combined + ErrorLog /var/log/%web_system%/domains/%domain%.error.log + + AllowOverride All + SSLRequireSSL + Options +Includes -Indexes +ExecCGI + php_admin_value open_basedir %docroot%:%home%/%user%/tmp + php_admin_value upload_tmp_dir %home%/%user%/tmp + php_admin_value session.save_path %home%/%user%/tmp + + + AllowOverride All + + SSLEngine on + SSLVerifyClient none + SSLCertificateFile %ssl_crt% + SSLCertificateKeyFile %ssl_key% + %ssl_ca_str%SSLCertificateChainFile %ssl_ca% + + + RMode config + RUidGid %user% %group% + RGroups www-data + + + AssignUserID %user% %group% + + + IncludeOptional %home%/%user%/conf/web/s%web_system%.%domain%.conf* + + + diff --git a/install/ubuntu/16.10/templates/web/apache2/default.tpl b/install/ubuntu/16.10/templates/web/apache2/default.tpl new file mode 100644 index 00000000..3a227015 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/apache2/default.tpl @@ -0,0 +1,37 @@ + + + ServerName %domain_idn% + %alias_string% + ServerAdmin %email% + DocumentRoot %docroot% + ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ + Alias /vstats/ %home%/%user%/web/%domain%/stats/ + Alias /error/ %home%/%user%/web/%domain%/document_errors/ + #SuexecUserGroup %user% %group% + CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes + CustomLog /var/log/%web_system%/domains/%domain%.log combined + ErrorLog /var/log/%web_system%/domains/%domain%.error.log + + AllowOverride All + Options +Includes -Indexes +ExecCGI + php_admin_value open_basedir %docroot%:%home%/%user%/tmp + php_admin_value upload_tmp_dir %home%/%user%/tmp + php_admin_value session.save_path %home%/%user%/tmp + + + AllowOverride All + + + + RMode config + RUidGid %user% %group% + RGroups www-data + + + AssignUserID %user% %group% + + + IncludeOptional %home%/%user%/conf/web/%web_system%.%domain%.conf* + + + diff --git a/install/ubuntu/16.10/templates/web/apache2/hosting.stpl b/install/ubuntu/16.10/templates/web/apache2/hosting.stpl new file mode 100644 index 00000000..8892072b --- /dev/null +++ b/install/ubuntu/16.10/templates/web/apache2/hosting.stpl @@ -0,0 +1,49 @@ + + + ServerName %domain_idn% + %alias_string% + ServerAdmin %email% + DocumentRoot %sdocroot% + ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ + Alias /vstats/ %home%/%user%/web/%domain%/stats/ + Alias /error/ %home%/%user%/web/%domain%/document_errors/ + #SuexecUserGroup %user% %group% + CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes + CustomLog /var/log/%web_system%/domains/%domain%.log combined + ErrorLog /var/log/%web_system%/domains/%domain%.error.log + + AllowOverride All + SSLRequireSSL + Options +Includes -Indexes +ExecCGI + php_admin_value upload_max_filesize 10M + php_admin_value max_execution_time 20 + php_admin_value post_max_size 8M + php_admin_value memory_limit 32M + php_admin_flag mysql.allow_persistent off + php_admin_flag safe_mode off + php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f info@%domain_idn%" + php_admin_value open_basedir %docroot%:%home%/%user%/tmp:/bin:/usr/bin:/usr/local/bin:/var/www/html:/tmp:/usr/share:/etc/phpMyAdmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/etc/roundcubemail:/etc/roundcube:/var/lib/roundcube + php_admin_value upload_tmp_dir %home%/%user%/tmp + php_admin_value session.save_path %home%/%user%/tmp + + + AllowOverride All + + SSLEngine on + SSLVerifyClient none + SSLCertificateFile %ssl_crt% + SSLCertificateKeyFile %ssl_key% + %ssl_ca_str%SSLCertificateChainFile %ssl_ca% + + RMode config + RUidGid %user% %group% + RGroups www-data + + + AssignUserID %user% %group% + + + IncludeOptional %home%/%user%/conf/web/s%web_system%.%domain%.conf* + + + diff --git a/install/ubuntu/16.10/templates/web/apache2/hosting.tpl b/install/ubuntu/16.10/templates/web/apache2/hosting.tpl new file mode 100644 index 00000000..1eb26910 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/apache2/hosting.tpl @@ -0,0 +1,43 @@ + + + ServerName %domain_idn% + %alias_string% + ServerAdmin %email% + DocumentRoot %docroot% + ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ + Alias /vstats/ %home%/%user%/web/%domain%/stats/ + Alias /error/ %home%/%user%/web/%domain%/document_errors/ + #SuexecUserGroup %user% %group% + CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes + CustomLog /var/log/%web_system%/domains/%domain%.log combined + ErrorLog /var/log/%web_system%/domains/%domain%.error.log + + AllowOverride All + Options +Includes -Indexes +ExecCGI + php_admin_value upload_max_filesize 10M + php_admin_value max_execution_time 20 + php_admin_value post_max_size 8M + php_admin_value memory_limit 32M + php_admin_flag mysql.allow_persistent off + php_admin_flag safe_mode off + php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f info@%domain_idn%" + php_admin_value open_basedir %docroot%:%home%/%user%/tmp:/bin:/usr/bin:/usr/local/bin:/var/www/html:/tmp:/usr/share:/etc/phpMyAdmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/etc/roundcubemail:/etc/roundcube:/var/lib/roundcube + php_admin_value upload_tmp_dir %home%/%user%/tmp + php_admin_value session.save_path %home%/%user%/tmp + + + AllowOverride All + + + RMode config + RUidGid %user% %group% + RGroups www-data + + + AssignUserID %user% %group% + + + IncludeOptional %home%/%user%/conf/web/%web_system%.%domain%.conf* + + + diff --git a/install/ubuntu/16.10/templates/web/apache2/phpcgi.sh b/install/ubuntu/16.10/templates/web/apache2/phpcgi.sh new file mode 100755 index 00000000..6565e103 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/apache2/phpcgi.sh @@ -0,0 +1,16 @@ +#!/bin/bash +# Adding php wrapper +user="$1" +domain="$2" +ip="$3" +home_dir="$4" +docroot="$5" + +wrapper_script='#!/usr/bin/php-cgi -cphp5-cgi.ini' +wrapper_file="$home_dir/$user/web/$domain/cgi-bin/php" + +echo "$wrapper_script" > $wrapper_file +chown $user:$user $wrapper_file +chmod -f 751 $wrapper_file + +exit 0 diff --git a/install/ubuntu/16.10/templates/web/apache2/phpcgi.stpl b/install/ubuntu/16.10/templates/web/apache2/phpcgi.stpl new file mode 100644 index 00000000..731355bc --- /dev/null +++ b/install/ubuntu/16.10/templates/web/apache2/phpcgi.stpl @@ -0,0 +1,38 @@ + + + ServerName %domain_idn% + %alias_string% + ServerAdmin %email% + DocumentRoot %sdocroot% + ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ + Alias /vstats/ %home%/%user%/web/%domain%/stats/ + Alias /error/ %home%/%user%/web/%domain%/document_errors/ + SuexecUserGroup %user% %group% + CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes + CustomLog /var/log/%web_system%/domains/%domain%.log combined + ErrorLog /var/log/%web_system%/domains/%domain%.error.log + + SSLRequireSSL + AllowOverride All + Options +Includes -Indexes +ExecCGI + php_admin_value open_basedir %docroot%:%home%/%user%/tmp + php_admin_value upload_tmp_dir %home%/%user%/tmp + php_admin_value session.save_path %home%/%user%/tmp + Action phpcgi-script /cgi-bin/php + + SetHandler phpcgi-script + + + + AllowOverride All + + SSLEngine on + SSLVerifyClient none + SSLCertificateFile %ssl_crt% + SSLCertificateKeyFile %ssl_key% + %ssl_ca_str%SSLCertificateChainFile %ssl_ca% + + IncludeOptional %home%/%user%/conf/web/s%web_system%.%domain%.conf* + + + diff --git a/install/ubuntu/16.10/templates/web/apache2/phpcgi.tpl b/install/ubuntu/16.10/templates/web/apache2/phpcgi.tpl new file mode 100644 index 00000000..c6796d29 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/apache2/phpcgi.tpl @@ -0,0 +1,31 @@ + + + ServerName %domain_idn% + %alias_string% + ServerAdmin %email% + DocumentRoot %docroot% + ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ + Alias /vstats/ %home%/%user%/web/%domain%/stats/ + Alias /error/ %home%/%user%/web/%domain%/document_errors/ + SuexecUserGroup %user% %group% + CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes + CustomLog /var/log/%web_system%/domains/%domain%.log combined + ErrorLog /var/log/%web_system%/domains/%domain%.error.log + + AllowOverride All + Options +Includes -Indexes +ExecCGI + php_admin_value open_basedir %docroot%:%home%/%user%/tmp + php_admin_value upload_tmp_dir %home%/%user%/tmp + php_admin_value session.save_path %home%/%user%/tmp + Action phpcgi-script /cgi-bin/php + + SetHandler phpcgi-script + + + + AllowOverride All + + IncludeOptional %home%/%user%/conf/web/%web_system%.%domain%.conf* + + + diff --git a/install/ubuntu/16.10/templates/web/apache2/phpfcgid.sh b/install/ubuntu/16.10/templates/web/apache2/phpfcgid.sh new file mode 100755 index 00000000..e8058249 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/apache2/phpfcgid.sh @@ -0,0 +1,22 @@ +#!/bin/bash +# Adding php wrapper +user="$1" +domain="$2" +ip="$3" +home_dir="$4" +docroot="$5" + +wrapper_script="#!/bin/sh +PHPRC=/usr/local/lib +export PHPRC +export PHP_FCGI_MAX_REQUESTS=1000 +export PHP_FCGI_CHILDREN=20 +exec /usr/bin/php-cgi +" +wrapper_file="$home_dir/$user/web/$domain/cgi-bin/fcgi-starter" + +echo "$wrapper_script" > $wrapper_file +chown $user:$user $wrapper_file +chmod -f 751 $wrapper_file + +exit 0 diff --git a/install/ubuntu/16.10/templates/web/apache2/phpfcgid.stpl b/install/ubuntu/16.10/templates/web/apache2/phpfcgid.stpl new file mode 100644 index 00000000..156c8a91 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/apache2/phpfcgid.stpl @@ -0,0 +1,39 @@ + + + ServerName %domain_idn% + %alias_string% + ServerAdmin %email% + DocumentRoot %sdocroot% + ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ + Alias /vstats/ %home%/%user%/web/%domain%/stats/ + Alias /error/ %home%/%user%/web/%domain%/document_errors/ + SuexecUserGroup %user% %group% + CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes + CustomLog /var/log/%web_system%/domains/%domain%.log combined + ErrorLog /var/log/%web_system%/domains/%domain%.error.log + + SSLRequireSSL + AllowOverride All + Options +Includes -Indexes +ExecCGI + php_admin_value open_basedir %docroot%:%home%/%user%/tmp + php_admin_value upload_tmp_dir %home%/%user%/tmp + php_admin_value session.save_path %home%/%user%/tmp + + SetHandler fcgid-script + + FCGIWrapper %home%/%user%/web/%domain%/cgi-bin/fcgi-starter .php + + + AllowOverride All + + php_admin_value open_basedir none + SSLEngine on + SSLVerifyClient none + SSLCertificateFile %ssl_crt% + SSLCertificateKeyFile %ssl_key% + %ssl_ca_str%SSLCertificateChainFile %ssl_ca% + + IncludeOptional %home%/%user%/conf/web/s%web_system%.%domain%.conf* + + + diff --git a/install/ubuntu/16.10/templates/web/apache2/phpfcgid.tpl b/install/ubuntu/16.10/templates/web/apache2/phpfcgid.tpl new file mode 100644 index 00000000..a4c01269 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/apache2/phpfcgid.tpl @@ -0,0 +1,31 @@ + + + ServerName %domain_idn% + %alias_string% + ServerAdmin %email% + DocumentRoot %docroot% + ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ + Alias /vstats/ %home%/%user%/web/%domain%/stats/ + Alias /error/ %home%/%user%/web/%domain%/document_errors/ + SuexecUserGroup %user% %group% + CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes + CustomLog /var/log/%web_system%/domains/%domain%.log combined + ErrorLog /var/log/%web_system%/domains/%domain%.error.log + + AllowOverride All + Options +Includes -Indexes +ExecCGI + php_admin_value open_basedir %docroot%:%home%/%user%/tmp + php_admin_value upload_tmp_dir %home%/%user%/tmp + php_admin_value session.save_path %home%/%user%/tmp + + SetHandler fcgid-script + + FCGIWrapper %home%/%user%/web/%domain%/cgi-bin/fcgi-starter .php + + + AllowOverride All + + IncludeOptional %home%/%user%/conf/web/%web_system%.%domain%.conf* + + + diff --git a/install/ubuntu/16.10/templates/web/awstats/awstats.tpl b/install/ubuntu/16.10/templates/web/awstats/awstats.tpl new file mode 100755 index 00000000..9a92e0fd --- /dev/null +++ b/install/ubuntu/16.10/templates/web/awstats/awstats.tpl @@ -0,0 +1,133 @@ +LogFile="/var/log/%web_system%/domains/%domain%.log" +LogType=W +LogFormat=1 +LogSeparator=" " +SiteDomain="%domain_idn%" +HostAliases="%alias_idn%" +DirData="%home%/%user%/web/%domain%/stats" +DirCgi="/vstats" +DirIcons="/vstats/icon" +AllowToUpdateStatsFromBrowser=0 +AllowFullYearView=2 +EnableLockForUpdate=1 +DNSStaticCacheFile="dnscache.txt" +DNSLastUpdateCacheFile="dnscachelastupdate.txt" +SkipDNSLookupFor="" +AllowAccessFromWebToAuthenticatedUsersOnly=0 +AllowAccessFromWebToFollowingAuthenticatedUsers="" +AllowAccessFromWebToFollowingIPAddresses="" +CreateDirDataIfNotExists=0 +BuildHistoryFormat=text +BuildReportFormat=html +SaveDatabaseFilesWithPermissionsForEveryone=0 +PurgeLogFile=0 +ArchiveLogRecords=0 +KeepBackupOfHistoricFiles=1 +DefaultFile="index.php index.html" +SkipHosts="127.0.0.1 +SkipUserAgents="" +SkipFiles="" +SkipReferrersBlackList="" +OnlyHosts="" +OnlyUserAgents="" +OnlyUsers="" +OnlyFiles="" +NotPageList="css js class gif jpg jpeg png bmp ico rss xml swf" +ValidHTTPCodes="200 304" +ValidSMTPCodes="1 250" +AuthenticatedUsersNotCaseSensitive=0 +URLNotCaseSensitive=0 +URLWithAnchor=0 +URLQuerySeparators="?;" +URLWithQuery=0 +URLWithQueryWithOnlyFollowingParameters="" +URLWithQueryWithoutFollowingParameters="" +URLReferrerWithQuery=0 +WarningMessages=1 +ErrorMessages="" +DebugMessages=0 +NbOfLinesForCorruptedLog=50 +WrapperScript="" +DecodeUA=0 +MiscTrackerUrl="/js/awstats_misc_tracker.js" +UseFramesWhenCGI=1 +DetailedReportsOnNewWindows=1 +Expires=3600 +MaxRowsInHTMLOutput=1000 +Lang="auto" +DirLang="./lang" +ShowMenu=1 +ShowSummary=UVPHB +ShowMonthStats=UVPHB +ShowDaysOfMonthStats=VPHB +ShowDaysOfWeekStats=PHB +ShowHoursStats=PHB +ShowDomainsStats=PHB +ShowHostsStats=PHBL +ShowAuthenticatedUsers=0 +ShowRobotsStats=HBL +ShowWormsStats=0 +ShowEMailSenders=0 +ShowEMailReceivers=0 +ShowSessionsStats=1 +ShowPagesStats=PBEX +ShowFileTypesStats=HB +ShowFileSizesStats=0 +ShowDownloadsStats=HB +ShowOSStats=1 +ShowBrowsersStats=1 +ShowScreenSizeStats=0 +ShowOriginStats=PH +ShowKeyphrasesStats=1 +ShowKeywordsStats=1 +ShowMiscStats=a +ShowHTTPErrorsStats=1 +ShowSMTPErrorsStats=0 +ShowClusterStats=0 +AddDataArrayMonthStats=1 +AddDataArrayShowDaysOfMonthStats=1 +AddDataArrayShowDaysOfWeekStats=1 +AddDataArrayShowHoursStats=1 +IncludeInternalLinksInOriginSection=0 +MaxNbOfDomain = 10 +MinHitDomain = 1 +MaxNbOfHostsShown = 10 +MinHitHost = 1 +MaxNbOfLoginShown = 10 +MinHitLogin = 1 +MaxNbOfRobotShown = 10 +MinHitRobot = 1 +MaxNbOfDownloadsShown = 10 +MinHitDownloads = 1 +MaxNbOfPageShown = 10 +MinHitFile = 1 +MaxNbOfOsShown = 10 +MinHitOs = 1 +MaxNbOfBrowsersShown = 10 +MinHitBrowser = 1 +MaxNbOfScreenSizesShown = 5 +MinHitScreenSize = 1 +MaxNbOfWindowSizesShown = 5 +MinHitWindowSize = 1 +MaxNbOfRefererShown = 10 +MinHitRefer = 1 +MaxNbOfKeyphrasesShown = 10 +MinHitKeyphrase = 1 +MaxNbOfKeywordsShown = 10 +MinHitKeyword = 1 +MaxNbOfEMailsShown = 20 +MinHitEMail = 1 +FirstDayOfWeek=0 +ShowFlagLinks="" +ShowLinksOnUrl=1 +UseHTTPSLinkForUrl="" +MaxLengthOfShownURL=64 +HTMLHeadSection="" +HTMLEndSection="" +MetaRobot=0 +Logo="awstats_logo6.png" +LogoLink="http://awstats.sourceforge.net" +BarWidth = 260 +BarHeight = 90 +StyleSheet="" +ExtraTrackedRowsLimit=500 diff --git a/install/ubuntu/16.10/templates/web/awstats/index.tpl b/install/ubuntu/16.10/templates/web/awstats/index.tpl new file mode 100755 index 00000000..9df9bb5c --- /dev/null +++ b/install/ubuntu/16.10/templates/web/awstats/index.tpl @@ -0,0 +1,10 @@ + + + + Awstats log analyzer + + + + + + diff --git a/install/ubuntu/16.10/templates/web/awstats/nav.tpl b/install/ubuntu/16.10/templates/web/awstats/nav.tpl new file mode 100755 index 00000000..f29bed68 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/awstats/nav.tpl @@ -0,0 +1,23 @@ + + + Awstats navigation + + + + + + + + +
vesta
+ +
+
+ + diff --git a/install/ubuntu/16.10/templates/web/nginx/caching.sh b/install/ubuntu/16.10/templates/web/nginx/caching.sh new file mode 100755 index 00000000..6eb9126d --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/caching.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +user=$1 +domain=$2 +ip=$3 +home=$4 +docroot=$5 + +str="proxy_cache_path /var/cache/nginx/$domain levels=2" +str="$str keys_zone=$domain:10m inactive=60m max_size=512m;" +echo "$str" >> /etc/nginx/conf.d/01_caching_pool.conf + diff --git a/install/ubuntu/16.10/templates/web/nginx/caching.stpl b/install/ubuntu/16.10/templates/web/nginx/caching.stpl new file mode 100755 index 00000000..ca6cffe3 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/caching.stpl @@ -0,0 +1,44 @@ +server { + listen %ip%:%proxy_ssl_port%; + server_name %domain_idn% %alias_idn%; + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + error_log /var/log/%web_system%/domains/%domain%.error.log error; + + location / { + proxy_pass http://%ip%:%web_port%; + + proxy_cache cache; + proxy_cache_valid 15m; + proxy_cache_valid 404 1m; + proxy_no_cache $no_cache; + proxy_cache_bypass $no_cache; + proxy_cache_bypass $cookie_session $http_x_update; + + location ~* ^.+\.(%proxy_extentions%)$ { + proxy_cache off; + root %docroot%; + access_log /var/log/%web_system%/domains/%domain%.log combined; + access_log /var/log/%web_system%/domains/%domain%.bytes bytes; + expires max; + try_files $uri @fallback; + } + } + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location @fallback { + proxy_pass http://%ip%:%web_port%; + } + + location ~ /\.ht {return 404;} + location ~ /\.svn/ {return 404;} + location ~ /\.git/ {return 404;} + location ~ /\.hg/ {return 404;} + location ~ /\.bzr/ {return 404;} + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/caching.tpl b/install/ubuntu/16.10/templates/web/nginx/caching.tpl new file mode 100755 index 00000000..36761b65 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/caching.tpl @@ -0,0 +1,41 @@ +server { + listen %ip%:%proxy_port%; + server_name %domain_idn% %alias_idn%; + error_log /var/log/%web_system%/domains/%domain%.error.log error; + + location / { + proxy_pass http://%ip%:%web_port%; + + proxy_cache cache; + proxy_cache_valid 15m; + proxy_cache_valid 404 1m; + proxy_no_cache $no_cache; + proxy_cache_bypass $no_cache; + proxy_cache_bypass $cookie_session $http_x_update; + + location ~* ^.+\.(%proxy_extentions%)$ { + proxy_cache off; + root %docroot%; + access_log /var/log/%web_system%/domains/%domain%.log combined; + access_log /var/log/%web_system%/domains/%domain%.bytes bytes; + expires max; + try_files $uri @fallback; + } + } + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location @fallback { + proxy_pass http://%ip%:%web_port%; + } + + location ~ /\.ht {return 404;} + location ~ /\.svn/ {return 404;} + location ~ /\.git/ {return 404;} + location ~ /\.hg/ {return 404;} + location ~ /\.bzr/ {return 404;} + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/default.stpl b/install/ubuntu/16.10/templates/web/nginx/default.stpl new file mode 100755 index 00000000..fa538060 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/default.stpl @@ -0,0 +1,36 @@ +server { + listen %ip%:%proxy_ssl_port%; + server_name %domain_idn% %alias_idn%; + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + error_log /var/log/%web_system%/domains/%domain%.error.log error; + + location / { + proxy_pass https://%ip%:%web_ssl_port%; + location ~* ^.+\.(%proxy_extentions%)$ { + root %sdocroot%; + access_log /var/log/%web_system%/domains/%domain%.log combined; + access_log /var/log/%web_system%/domains/%domain%.bytes bytes; + expires max; + try_files $uri @fallback; + } + } + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location @fallback { + proxy_pass https://%ip%:%web_ssl_port%; + } + + location ~ /\.ht {return 404;} + location ~ /\.svn/ {return 404;} + location ~ /\.git/ {return 404;} + location ~ /\.hg/ {return 404;} + location ~ /\.bzr/ {return 404;} + + include %home%/%user%/conf/web/snginx.%domain%.conf*; +} + diff --git a/install/ubuntu/16.10/templates/web/nginx/default.tpl b/install/ubuntu/16.10/templates/web/nginx/default.tpl new file mode 100755 index 00000000..4d5c774b --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/default.tpl @@ -0,0 +1,33 @@ +server { + listen %ip%:%proxy_port%; + server_name %domain_idn% %alias_idn%; + error_log /var/log/%web_system%/domains/%domain%.error.log error; + + location / { + proxy_pass http://%ip%:%web_port%; + location ~* ^.+\.(%proxy_extentions%)$ { + root %docroot%; + access_log /var/log/%web_system%/domains/%domain%.log combined; + access_log /var/log/%web_system%/domains/%domain%.bytes bytes; + expires max; + try_files $uri @fallback; + } + } + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location @fallback { + proxy_pass http://%ip%:%web_port%; + } + + location ~ /\.ht {return 404;} + location ~ /\.svn/ {return 404;} + location ~ /\.git/ {return 404;} + location ~ /\.hg/ {return 404;} + location ~ /\.bzr/ {return 404;} + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} + diff --git a/install/ubuntu/16.10/templates/web/nginx/hosting.sh b/install/ubuntu/16.10/templates/web/nginx/hosting.sh new file mode 100755 index 00000000..eeed37ef --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/hosting.sh @@ -0,0 +1,11 @@ +#!/bin/bash +# Changing public_html permission +user="$1" +domain="$2" +ip="$3" +home_dir="$4" +docroot="$5" + +chmod 755 $docroot + +exit 0 diff --git a/install/ubuntu/16.10/templates/web/nginx/hosting.stpl b/install/ubuntu/16.10/templates/web/nginx/hosting.stpl new file mode 100755 index 00000000..d778d633 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/hosting.stpl @@ -0,0 +1,38 @@ +server { + listen %ip%:%proxy_ssl_port%; + server_name %domain_idn% %alias_idn%; + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + error_log /var/log/%web_system%/domains/%domain%.error.log error; + + location / { + proxy_pass https://%ip%:%web_ssl_port%; + location ~* ^.+\.(%proxy_extentions%)$ { + root %sdocroot%; + access_log /var/log/%web_system%/domains/%domain%.log combined; + access_log /var/log/%web_system%/domains/%domain%.bytes bytes; + expires max; + try_files $uri @fallback; + } + } + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location @fallback { + proxy_pass https://%ip%:%web_ssl_port%; + } + + location ~ /\.ht {return 404;} + location ~ /\.svn/ {return 404;} + location ~ /\.git/ {return 404;} + location ~ /\.hg/ {return 404;} + location ~ /\.bzr/ {return 404;} + + disable_symlinks if_not_owner from=%docroot%; + + include %home%/%user%/conf/web/snginx.%domain%.conf*; +} + diff --git a/install/ubuntu/16.10/templates/web/nginx/hosting.tpl b/install/ubuntu/16.10/templates/web/nginx/hosting.tpl new file mode 100755 index 00000000..15961c95 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/hosting.tpl @@ -0,0 +1,35 @@ +server { + listen %ip%:%proxy_port%; + server_name %domain_idn% %alias_idn%; + error_log /var/log/%web_system%/domains/%domain%.error.log error; + + location / { + proxy_pass http://%ip%:%web_port%; + location ~* ^.+\.(%proxy_extentions%)$ { + root %docroot%; + access_log /var/log/%web_system%/domains/%domain%.log combined; + access_log /var/log/%web_system%/domains/%domain%.bytes bytes; + expires max; + try_files $uri @fallback; + } + } + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location @fallback { + proxy_pass http://%ip%:%web_port%; + } + + location ~ /\.ht {return 404;} + location ~ /\.svn/ {return 404;} + location ~ /\.git/ {return 404;} + location ~ /\.hg/ {return 404;} + location ~ /\.bzr/ {return 404;} + + disable_symlinks if_not_owner from=%docroot%; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} + diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/cms_made_simple.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/cms_made_simple.stpl new file mode 100644 index 00000000..b19fdeaa --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/cms_made_simple.stpl @@ -0,0 +1,56 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location / { + try_files $uri $uri/ /index.php?page=$request_uri; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + include /etc/nginx/fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/cms_made_simple.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/cms_made_simple.tpl new file mode 100644 index 00000000..06353a47 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/cms_made_simple.tpl @@ -0,0 +1,52 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location / { + try_files $uri $uri/ /index.php?page=$request_uri; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + include /etc/nginx/fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter2.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter2.stpl new file mode 100644 index 00000000..b1491edf --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter2.stpl @@ -0,0 +1,61 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location / { + try_files $uri $uri/ /index.php; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location = /index.php { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME /var/www/html/ci$fastcgi_script_name; + include /etc/nginx/fastcgi_params; + } + } + + location ~ \.php$ { + return 444; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter2.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter2.tpl new file mode 100644 index 00000000..1ed1e649 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter2.tpl @@ -0,0 +1,57 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location / { + try_files $uri $uri/ /index.php; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location = /index.php { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME /var/www/html/ci$fastcgi_script_name; + include /etc/nginx/fastcgi_params; + } + } + + location ~ \.php$ { + return 444; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter3.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter3.stpl new file mode 100644 index 00000000..8723a0e7 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter3.stpl @@ -0,0 +1,56 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location / { + try_files $uri $uri/ /index.php; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter3.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter3.tpl new file mode 100644 index 00000000..d5281dc9 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/codeigniter3.tpl @@ -0,0 +1,52 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location / { + try_files $uri $uri/ /index.php; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/datalife_engine.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/datalife_engine.stpl new file mode 100644 index 00000000..9e7720bf --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/datalife_engine.stpl @@ -0,0 +1,127 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location / { + rewrite "^/page/([0-9]+)(/?)$" /index.php?cstart=$1 last; + + rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),([0-9]+),(.*).html(/?)+$" /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&cstart=$5&news_name=$6&seourl=$6 last; + rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),(.*).html(/?)+$" /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5&seourl=$5 last; + rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/print:page,([0-9]+),(.*).html(/?)+$" /engine/print.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5&seourl=$5 last; + rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*).html(/?)+$" /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4&seourl=$4 last; + + rewrite "^/([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$4&news_page=$2&cstart=$3&seourl=$5&seocat=$1 last; + rewrite "^/([^.]+)/page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$3&news_page=$2&seourl=$4&seocat=$1 last; + rewrite "^/([^.]+)/print:page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /engine/print.php?news_page=$2&newsid=$3&seourl=$4&seocat=$1 last; + rewrite "^/([^.]+)/([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$2&seourl=$3&seocat=$1 last; + + rewrite "^/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$3&news_page=$1&cstart=$2&seourl=$4 last; + rewrite "^/page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$2&news_page=$1&seourl=$3 last; + rewrite "^/print:page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /engine/print.php?news_page=$1&newsid=$2&seourl=$3 last; + rewrite "^/([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$1&seourl=$2 last; + + rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})(/?)+$" /index.php?year=$1&month=$2&day=$3 last; + rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page/([0-9]+)(/?)+$" /index.php?year=$1&month=$2&day=$3&cstart=$4 last; + + rewrite "^/([0-9]{4})/([0-9]{2})(/?)+$" /index.php?year=$1&month=$2 last; + rewrite "^/([0-9]{4})/([0-9]{2})/page/([0-9]+)(/?)+$" /index.php?year=$1&month=$2&cstart=$3 last; + + rewrite "^/([0-9]{4})(/?)+$" /index.php?year=$1 last; + rewrite "^/([0-9]{4})/page/([0-9]+)(/?)+$" /index.php?year=$1&cstart=$2 last; + + rewrite "^/tags/([^/]*)(/?)+$" /index.php?do=tags&tag=$1 last; + rewrite "^/tags/([^/]*)/page/([0-9]+)(/?)+$" /index.php?do=tags&tag=$1&cstart=$2 last; + + rewrite "^/xfsearch/([^/]*)(/?)+$" /index.php?do=xfsearch&xf=$1 last; + rewrite "^/xfsearch/([^/]*)/page/([0-9]+)(/?)+$" /index.php?do=xfsearch&xf=$1&cstart=$2 last; + + rewrite "^/user/([^/]*)/rss.xml$" /engine/rss.php?subaction=allnews&user=$1 last; + rewrite "^/user/([^/]*)(/?)+$" /index.php?subaction=userinfo&user=$1 last; + rewrite "^/user/([^/]*)/page/([0-9]+)(/?)+$" /index.php?subaction=userinfo&user=$1&cstart=$2 last; + rewrite "^/user/([^/]*)/news(/?)+$" /index.php?subaction=allnews&user=$1 last; + rewrite "^/user/([^/]*)/news/page/([0-9]+)(/?)+$" /index.php?subaction=allnews&user=$1&cstart=$2 last; + rewrite "^/user/([^/]*)/news/rss.xml(/?)+$" /engine/rss.php?subaction=allnews&user=$1 last; + + rewrite "^/lastnews(/?)+$" /index.php?do=lastnews last; + rewrite "^/lastnews/page/([0-9]+)(/?)+$" /index.php?do=lastnews&cstart=$1 last; + + rewrite "^/catalog/([^/]*)/rss.xml$" /engine/rss.php?catalog=$1 last; + rewrite "^/catalog/([^/]*)(/?)+$" /index.php?catalog=$1 last; + rewrite "^/catalog/([^/]*)/page/([0-9]+)(/?)+$" /index.php?catalog=$1&cstart=$2 last; + + rewrite "^/newposts(/?)+$" /index.php?subaction=newposts last; + rewrite "^/newposts/page/([0-9]+)(/?)+$" /index.php?subaction=newposts&cstart=$1 last; + + rewrite "^/favorites(/?)+$" /index.php?do=favorites last; + rewrite "^/favorites/page/([0-9]+)(/?)+$" /index.php?do=favorites&cstart=$1 last; + + rewrite "^/rules.html$" /index.php?do=rules last; + rewrite "^/statistics.html$" /index.php?do=stats last; + rewrite "^/addnews.html$" /index.php?do=addnews last; + rewrite "^/rss.xml$" /engine/rss.php last; + rewrite "^/sitemap.xml$" /uploads/sitemap.xml last; + + if (!-d $request_filename) { + rewrite "^/([^.]+)/page/([0-9]+)(/?)+$" /index.php?do=cat&category=$1&cstart=$2 last; + rewrite "^/([^.]+)/?$" /index.php?do=cat&category=$1 last; + } + + if (!-f $request_filename) { + rewrite "^/([^.]+)/rss.xml$" /engine/rss.php?do=cat&category=$1 last; + rewrite "^/page,([0-9]+),([^/]+).html$" /index.php?do=static&page=$2&news_page=$1 last; + rewrite "^/print:([^/]+).html$" /engine/print.php?do=static&page=$1 last; + } + + if (!-f $request_filename) { + rewrite "^/([^/]+).html$" /index.php?do=static&page=$1 last; + } + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/datalife_engine.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/datalife_engine.tpl new file mode 100644 index 00000000..d09b587e --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/datalife_engine.tpl @@ -0,0 +1,123 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location / { + rewrite "^/page/([0-9]+)(/?)$" /index.php?cstart=$1 last; + + rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),([0-9]+),(.*).html(/?)+$" /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&cstart=$5&news_name=$6&seourl=$6 last; + rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),(.*).html(/?)+$" /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5&seourl=$5 last; + rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/print:page,([0-9]+),(.*).html(/?)+$" /engine/print.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5&seourl=$5 last; + rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*).html(/?)+$" /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4&seourl=$4 last; + + rewrite "^/([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$4&news_page=$2&cstart=$3&seourl=$5&seocat=$1 last; + rewrite "^/([^.]+)/page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$3&news_page=$2&seourl=$4&seocat=$1 last; + rewrite "^/([^.]+)/print:page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /engine/print.php?news_page=$2&newsid=$3&seourl=$4&seocat=$1 last; + rewrite "^/([^.]+)/([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$2&seourl=$3&seocat=$1 last; + + rewrite "^/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$3&news_page=$1&cstart=$2&seourl=$4 last; + rewrite "^/page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$2&news_page=$1&seourl=$3 last; + rewrite "^/print:page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /engine/print.php?news_page=$1&newsid=$2&seourl=$3 last; + rewrite "^/([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$1&seourl=$2 last; + + rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})(/?)+$" /index.php?year=$1&month=$2&day=$3 last; + rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page/([0-9]+)(/?)+$" /index.php?year=$1&month=$2&day=$3&cstart=$4 last; + + rewrite "^/([0-9]{4})/([0-9]{2})(/?)+$" /index.php?year=$1&month=$2 last; + rewrite "^/([0-9]{4})/([0-9]{2})/page/([0-9]+)(/?)+$" /index.php?year=$1&month=$2&cstart=$3 last; + + rewrite "^/([0-9]{4})(/?)+$" /index.php?year=$1 last; + rewrite "^/([0-9]{4})/page/([0-9]+)(/?)+$" /index.php?year=$1&cstart=$2 last; + + rewrite "^/tags/([^/]*)(/?)+$" /index.php?do=tags&tag=$1 last; + rewrite "^/tags/([^/]*)/page/([0-9]+)(/?)+$" /index.php?do=tags&tag=$1&cstart=$2 last; + + rewrite "^/xfsearch/([^/]*)(/?)+$" /index.php?do=xfsearch&xf=$1 last; + rewrite "^/xfsearch/([^/]*)/page/([0-9]+)(/?)+$" /index.php?do=xfsearch&xf=$1&cstart=$2 last; + + rewrite "^/user/([^/]*)/rss.xml$" /engine/rss.php?subaction=allnews&user=$1 last; + rewrite "^/user/([^/]*)(/?)+$" /index.php?subaction=userinfo&user=$1 last; + rewrite "^/user/([^/]*)/page/([0-9]+)(/?)+$" /index.php?subaction=userinfo&user=$1&cstart=$2 last; + rewrite "^/user/([^/]*)/news(/?)+$" /index.php?subaction=allnews&user=$1 last; + rewrite "^/user/([^/]*)/news/page/([0-9]+)(/?)+$" /index.php?subaction=allnews&user=$1&cstart=$2 last; + rewrite "^/user/([^/]*)/news/rss.xml(/?)+$" /engine/rss.php?subaction=allnews&user=$1 last; + + rewrite "^/lastnews(/?)+$" /index.php?do=lastnews last; + rewrite "^/lastnews/page/([0-9]+)(/?)+$" /index.php?do=lastnews&cstart=$1 last; + + rewrite "^/catalog/([^/]*)/rss.xml$" /engine/rss.php?catalog=$1 last; + rewrite "^/catalog/([^/]*)(/?)+$" /index.php?catalog=$1 last; + rewrite "^/catalog/([^/]*)/page/([0-9]+)(/?)+$" /index.php?catalog=$1&cstart=$2 last; + + rewrite "^/newposts(/?)+$" /index.php?subaction=newposts last; + rewrite "^/newposts/page/([0-9]+)(/?)+$" /index.php?subaction=newposts&cstart=$1 last; + + rewrite "^/favorites(/?)+$" /index.php?do=favorites last; + rewrite "^/favorites/page/([0-9]+)(/?)+$" /index.php?do=favorites&cstart=$1 last; + + rewrite "^/rules.html$" /index.php?do=rules last; + rewrite "^/statistics.html$" /index.php?do=stats last; + rewrite "^/addnews.html$" /index.php?do=addnews last; + rewrite "^/rss.xml$" /engine/rss.php last; + rewrite "^/sitemap.xml$" /uploads/sitemap.xml last; + + if (!-d $request_filename) { + rewrite "^/([^.]+)/page/([0-9]+)(/?)+$" /index.php?do=cat&category=$1&cstart=$2 last; + rewrite "^/([^.]+)/?$" /index.php?do=cat&category=$1 last; + } + + if (!-f $request_filename) { + rewrite "^/([^.]+)/rss.xml$" /engine/rss.php?do=cat&category=$1 last; + rewrite "^/page,([0-9]+),([^/]+).html$" /index.php?do=static&page=$2&news_page=$1 last; + rewrite "^/print:([^/]+).html$" /engine/print.php?do=static&page=$1 last; + } + + if (!-f $request_filename) { + rewrite "^/([^/]+).html$" /index.php?do=static&page=$1 last; + } + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/default.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/default.stpl new file mode 100644 index 00000000..7fade11b --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/default.stpl @@ -0,0 +1,55 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %sdocroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location / { + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/snginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/default.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/default.tpl new file mode 100644 index 00000000..dbd38c07 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/default.tpl @@ -0,0 +1,51 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location / { + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/dokuwiki.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/dokuwiki.stpl new file mode 100644 index 00000000..f0669d6f --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/dokuwiki.stpl @@ -0,0 +1,72 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location / { + index doku.php; + try_files $uri $uri/ @dokuwiki; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + include /etc/nginx/fastcgi_params; + } + } + + location ~ ^/lib.*\.(gif|png|ico|jpg)$ { + expires 30d; + } + + location ^~ /conf/ { return 403; } + location ^~ /data/ { return 403; } + + location @dokuwiki { + rewrite ^/_media/(.*) /lib/exe/fetch.php?media=$1 last; + rewrite ^/_detail/(.*) /lib/exe/detail.php?media=$1 last; + rewrite ^/_export/([^/]+)/(.*) /doku.php?do=export_$1&id=$2 last; + rewrite ^/(.*) /doku.php?id=$1 last; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/dokuwiki.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/dokuwiki.tpl new file mode 100644 index 00000000..ba854768 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/dokuwiki.tpl @@ -0,0 +1,67 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location / { + index doku.php; + try_files $uri $uri/ @dokuwiki; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + include /etc/nginx/fastcgi_params; + } + } + + location ~ ^/lib.*\.(gif|png|ico|jpg)$ { + expires 30d; + } + + location ^~ /conf/ { return 403; } + location ^~ /data/ { return 403; } + location @dokuwiki { + rewrite ^/_media/(.*) /lib/exe/fetch.php?media=$1 last; + rewrite ^/_detail/(.*) /lib/exe/detail.php?media=$1 last; + rewrite ^/_export/([^/]+)/(.*) /doku.php?do=export_$1&id=$2 last; + rewrite ^/(.*) /doku.php?id=$1 last; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal6.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal6.stpl new file mode 100644 index 00000000..13c17ecb --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal6.stpl @@ -0,0 +1,101 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + location ~* \.(txt|log)$ { + allow 192.168.0.0/16; + deny all; + } + + location ~ \..*/.*\.php$ { + return 403; + } + + # No no for private + location ~ ^/sites/.*/private/ { + return 403; + } + + # Block access to "hidden" files and directories whose names begin with a + # period. This includes directories used by version control systems such + # as Subversion or Git to store control files. + location ~ (^|/)\. { + return 403; + } + + location / { + try_files $uri @rewrite; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $request_filename; + fastcgi_intercept_errors on; + include /etc/nginx/fastcgi_params; + } + } + + location @rewrite { + # For Drupal 6 and bwlow: + # Some modules enforce no slash (/) at the end of the URL + # Else this rewrite block wouldn't be needed (GlobalRedirect) + rewrite ^/(.*)$ /index.php?q=$1; + } + + location ~ ^/sites/.*/files/styles/ { + try_files $uri @rewrite; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal6.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal6.tpl new file mode 100644 index 00000000..55dde013 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal6.tpl @@ -0,0 +1,98 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + # Very rarely should these ever be accessed outside of your lan + location ~* \.(txt|log)$ { + allow 192.168.0.0/16; + deny all; + } + + location ~ \..*/.*\.php$ { + return 403; + } + + # No no for private + location ~ ^/sites/.*/private/ { + return 403; + } + + # Block access to "hidden" files and directories whose names begin with a + # period. This includes directories used by version control systems such + # as Subversion or Git to store control files. + location ~ (^|/)\. { + return 403; + } + + location / { + try_files $uri @rewrite; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $request_filename; + fastcgi_intercept_errors on; + include /etc/nginx/fastcgi_params; + } + } + + location @rewrite { + # For Drupal 6 and bwlow: + # Some modules enforce no slash (/) at the end of the URL + # Else this rewrite block wouldn't be needed (GlobalRedirect) + rewrite ^/(.*)$ /index.php?q=$1; + } + + location ~ ^/sites/.*/files/styles/ { + try_files $uri @rewrite; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal7.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal7.stpl new file mode 100644 index 00000000..6e8d89fa --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal7.stpl @@ -0,0 +1,101 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + location ~* \.(txt|log)$ { + allow 192.168.0.0/16; + deny all; + } + + location ~ \..*/.*\.php$ { + return 403; + } + + # No no for private + location ~ ^/sites/.*/private/ { + return 403; + } + + # Block access to "hidden" files and directories whose names begin with a + # period. This includes directories used by version control systems such + # as Subversion or Git to store control files. + location ~ (^|/)\. { + return 403; + } + + location / { + try_files $uri @rewrite; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $request_filename; + fastcgi_intercept_errors on; + include /etc/nginx/fastcgi_params; + } + } + + location @rewrite { + # You have 2 options here + # For D7 and above: + # Clean URLs are handled in drupal_environment_initialize(). + rewrite ^ /index.php; + } + + location ~ ^/sites/.*/files/styles/ { + try_files $uri @rewrite; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal7.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal7.tpl new file mode 100644 index 00000000..c5d737ea --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal7.tpl @@ -0,0 +1,98 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + # Very rarely should these ever be accessed outside of your lan + location ~* \.(txt|log)$ { + allow 192.168.0.0/16; + deny all; + } + + location ~ \..*/.*\.php$ { + return 403; + } + + # No no for private + location ~ ^/sites/.*/private/ { + return 403; + } + + # Block access to "hidden" files and directories whose names begin with a + # period. This includes directories used by version control systems such + # as Subversion or Git to store control files. + location ~ (^|/)\. { + return 403; + } + + location / { + try_files $uri @rewrite; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $request_filename; + fastcgi_intercept_errors on; + include /etc/nginx/fastcgi_params; + } + } + + location @rewrite { + # You have 2 options here + # For D7 and above: + # Clean URLs are handled in drupal_environment_initialize(). + rewrite ^ /index.php; + } + + location ~ ^/sites/.*/files/styles/ { + try_files $uri @rewrite; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal8.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal8.stpl new file mode 100644 index 00000000..902f6fdb --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal8.stpl @@ -0,0 +1,102 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + location ~* \.(txt|log)$ { + allow 192.168.0.0/16; + deny all; + } + + location ~ \..*/.*\.php$ { + return 403; + } + + # No no for private + location ~ ^/sites/.*/private/ { + return 403; + } + + # Block access to "hidden" files and directories whose names begin with a + # period. This includes directories used by version control systems such + # as Subversion or Git to store control files. + location ~ (^|/)\. { + return 403; + } + + location / { + try_files $uri @rewrite; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$)|^/update.php { + fastcgi_split_path_info ^(.+?\.php)(|/.*)$; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $request_filename; + fastcgi_intercept_errors on; + include /etc/nginx/fastcgi_params; + } + } + + location @rewrite { + # You have 2 options here + # For D7 and above: + # Clean URLs are handled in drupal_environment_initialize(). + rewrite ^ /index.php; + } + + location ~ ^/sites/.*/files/styles/ { + try_files $uri @rewrite; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal8.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal8.tpl new file mode 100644 index 00000000..2100f934 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/drupal8.tpl @@ -0,0 +1,99 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + # Very rarely should these ever be accessed outside of your lan + location ~* \.(txt|log)$ { + allow 192.168.0.0/16; + deny all; + } + + location ~ \..*/.*\.php$ { + return 403; + } + + # No no for private + location ~ ^/sites/.*/private/ { + return 403; + } + + # Block access to "hidden" files and directories whose names begin with a + # period. This includes directories used by version control systems such + # as Subversion or Git to store control files. + location ~ (^|/)\. { + return 403; + } + + location / { + try_files $uri @rewrite; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$)|^/update.php { + fastcgi_split_path_info ^(.+?\.php)(|/.*)$; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $request_filename; + fastcgi_intercept_errors on; + include /etc/nginx/fastcgi_params; + } + } + + location @rewrite { + # You have 2 options here + # For D7 and above: + # Clean URLs are handled in drupal_environment_initialize(). + rewrite ^ /index.php; + } + + location ~ ^/sites/.*/files/styles/ { + try_files $uri @rewrite; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/joomla.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/joomla.stpl new file mode 100644 index 00000000..6105b2c3 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/joomla.stpl @@ -0,0 +1,63 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location / { + try_files $uri $uri/ /index.php?$args; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + # deny running scripts inside writable directories + location ~* /(images|cache|media|logs|tmp)/.*\.(php|pl|py|jsp|asp|sh|cgi)$ { + return 403; + error_page 403 /403_error.html; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/joomla.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/joomla.tpl new file mode 100644 index 00000000..9d46116a --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/joomla.tpl @@ -0,0 +1,59 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location / { + try_files $uri $uri/ /index.php?$args; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + # deny running scripts inside writable directories + location ~* /(images|cache|media|logs|tmp)/.*\.(php|pl|py|jsp|asp|sh|cgi)$ { + return 403; + error_page 403 /403_error.html; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/modx.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/modx.stpl new file mode 100644 index 00000000..54fab2b1 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/modx.stpl @@ -0,0 +1,69 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; +# if you need to rewrite www to non-www uncomment bellow +# if ($host != '%domain%' ) { +# rewrite ^/(.*)$ https://%domain%/$1 permanent; +# } + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + location / { + try_files $uri $uri/ @rewrite; + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + } + location @rewrite { + rewrite ^/(.*)$ /index.php?q=$1; + } + + location ~ \.php$ { + try_files $uri =404; + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $request_filename; + include /etc/nginx/fastcgi_params; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/modx.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/modx.tpl new file mode 100644 index 00000000..b3c3e350 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/modx.tpl @@ -0,0 +1,65 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; +# if you need to rewrite www to non-www uncomment bellow +# if ($host != '%domain%' ) { +# rewrite ^/(.*)$ http://%domain%/$1 permanent; +# } + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + location / { + try_files $uri $uri/ @rewrite; + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + } + location @rewrite { + rewrite ^/(.*)$ /index.php?q=$1; + } + + location ~ \.php$ { + try_files $uri =404; + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $request_filename; + include /etc/nginx/fastcgi_params; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/moodle.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/moodle.stpl new file mode 100644 index 00000000..7f16b0dd --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/moodle.stpl @@ -0,0 +1,90 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + rewrite ^/(.*\.php)(/)(.*)$ /$1?file=/$3 last; + + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + location ~* \.(txt|log)$ { + allow 192.168.0.0/16; + deny all; + } + + location ~ \..*/.*\.php$ { + return 403; + } + + # No no for private + location ~ ^/sites/.*/private/ { + return 403; + } + + # Block access to "hidden" files and directories whose names begin with a + # period. This includes directories used by version control systems such + # as Subversion or Git to store control files. + location ~ (^|/)\. { + return 403; + } + + location / { + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $request_filename; + fastcgi_intercept_errors on; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/moodle.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/moodle.tpl new file mode 100644 index 00000000..49ea2869 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/moodle.tpl @@ -0,0 +1,87 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + rewrite ^/(.*\.php)(/)(.*)$ /$1?file=/$3 last; + + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + # Very rarely should these ever be accessed outside of your lan + location ~* \.(txt|log)$ { + allow 192.168.0.0/16; + deny all; + } + + location ~ \..*/.*\.php$ { + return 403; + } + + # No no for private + location ~ ^/sites/.*/private/ { + return 403; + } + + # Block access to "hidden" files and directories whose names begin with a + # period. This includes directories used by version control systems such + # as Subversion or Git to store control files. + location ~ (^|/)\. { + return 403; + } + + location / { + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $request_filename; + fastcgi_intercept_errors on; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/no-php.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/no-php.stpl new file mode 100644 index 00000000..f49a4a5b --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/no-php.stpl @@ -0,0 +1,47 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %sdocroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + types { + text/html html htm shtml php php5; + } + + location / { + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/snginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/no-php.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/no-php.tpl new file mode 100644 index 00000000..3e796d1e --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/no-php.tpl @@ -0,0 +1,43 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + types { + text/html html htm shtml php php5; + } + + location / { + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/owncloud.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/owncloud.stpl new file mode 100644 index 00000000..8cf16b07 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/owncloud.stpl @@ -0,0 +1,85 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect; + rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect; + rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect; + + error_page 403 = /core/templates/403.php; + error_page 404 = /core/templates/404.php; + + location ~ ^/(?:\.htaccess|data|config|db_structure\.xml|README){ + deny all; + } + + location / { + # The following 2 rules are only needed with webfinger + rewrite ^/.well-known/host-meta /public.php?service=host-meta last; + rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last; + rewrite ^/.well-known/carddav /remote.php/carddav/ redirect; + rewrite ^/.well-known/caldav /remote.php/caldav/ redirect; + rewrite ^(/core/doc/[^\/]+/)$ $1/index.html; + try_files $uri $uri/ /index.php; + + location ~ \.php(?:$|/) { + fastcgi_split_path_info ^(.+\.php)(/.+)$; + include /etc/nginx/fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param PATH_INFO $fastcgi_path_info; + #fastcgi_param HTTPS on; + fastcgi_pass %backend_lsnr%; + } + } + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + # Some basic cache-control for static files to be sent to the browser + add_header Pragma public; + add_header Cache-Control "public, must-revalidate, proxy-revalidate"; + } + + #error_page 403 /error/404.html; + #error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/owncloud.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/owncloud.tpl new file mode 100644 index 00000000..e33332e0 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/owncloud.tpl @@ -0,0 +1,86 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect; + rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect; + rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect; + + error_page 403 = /core/templates/403.php; + error_page 404 = /core/templates/404.php; + + location ~ ^/(?:\.htaccess|data|config|db_structure\.xml|README){ + deny all; + } + + location / { + # The following 2 rules are only needed with webfinger + rewrite ^/.well-known/host-meta /public.php?service=host-meta last; + rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last; + rewrite ^/.well-known/carddav /remote.php/carddav/ redirect; + rewrite ^/.well-known/caldav /remote.php/caldav/ redirect; + rewrite ^(/core/doc/[^\/]+/)$ $1/index.html; + try_files $uri $uri/ /index.php; + + location ~ \.php(?:$|/) { + fastcgi_split_path_info ^(.+\.php)(/.+)$; + include /etc/nginx/fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param PATH_INFO $fastcgi_path_info; + #fastcgi_param HTTPS on; + fastcgi_pass %backend_lsnr%; + } + } + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + # Some basic cache-control for static files to be sent to the browser + add_header Pragma public; + add_header Cache-Control "public, must-revalidate, proxy-revalidate"; + } + + #error_page 403 /error/404.html; + #error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/piwik.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/piwik.stpl new file mode 100644 index 00000000..877db95a --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/piwik.stpl @@ -0,0 +1,73 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location = /favicon.ico { + try_files /favicon.ico =204; + } + + location / { + try_files $uri /index.php; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + valid_referers none blocked %domain_idn% %alias_idn%; + if ($invalid_referer) { + return 444; + } + expires max; + } + + location ~* ^/(?:index|piwik)\.php$ { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + include /etc/nginx/fastcgi_params; + } + } + + # Any other attempt to access PHP files returns a 404. + location ~* ^.+\.php$ { + return 404; + } + + # Return a 404 for all text files. + location ~* ^/(?:README|LICENSE[^.]*|LEGALNOTICE)(?:\.txt)*$ { + return 404; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/piwik.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/piwik.tpl new file mode 100644 index 00000000..253fe87b --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/piwik.tpl @@ -0,0 +1,69 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location = /favicon.ico { + try_files /favicon.ico =204; + } + + location / { + try_files $uri /index.php; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + valid_referers none blocked %domain_idn% %alias_idn%; + if ($invalid_referer) { + return 444; + } + expires max; + } + + location ~* ^/(?:index|piwik)\.php$ { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + include /etc/nginx/fastcgi_params; + } + } + + # Any other attempt to access PHP files returns a 404. + location ~* ^.+\.php$ { + return 404; + } + + # Return a 404 for all text files. + location ~* ^/(?:README|LICENSE[^.]*|LEGALNOTICE)(?:\.txt)*$ { + return 404; + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/pyrocms.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/pyrocms.stpl new file mode 100644 index 00000000..2e5d9c8d --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/pyrocms.stpl @@ -0,0 +1,66 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location /installer { + try_files $uri $uri/ /installer/index.php; + } + + location / { + try_files $uri $uri/ /index.php; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + include /etc/nginx/fastcgi_params; + } + } + + location = /robots.txt { access_log off; log_not_found off; } + location = /favicon.ico { access_log off; log_not_found off; } + location ~ /\. { access_log off; log_not_found off; deny all; } + location ~ ~$ { access_log off; log_not_found off; deny all; } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/pyrocms.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/pyrocms.tpl new file mode 100644 index 00000000..4b2ec788 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/pyrocms.tpl @@ -0,0 +1,62 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location /installer { + try_files $uri $uri/ /installer/index.php; + } + + location / { + try_files $uri $uri/ /index.php; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + include /etc/nginx/fastcgi_params; + } + } + + location = /robots.txt { access_log off; log_not_found off; } + location = /favicon.ico { access_log off; log_not_found off; } + location ~ /\. { access_log off; log_not_found off; deny all; } + location ~ ~$ { access_log off; log_not_found off; deny all; } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress.stpl new file mode 100644 index 00000000..a43dbe82 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress.stpl @@ -0,0 +1,55 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location / { + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress.tpl new file mode 100644 index 00000000..dbd38c07 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress.tpl @@ -0,0 +1,51 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location / { + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress2.stpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress2.stpl new file mode 100644 index 00000000..80fd787a --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress2.stpl @@ -0,0 +1,67 @@ +server { + listen %ip%:%web_ssl_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + ssl on; + ssl_certificate %ssl_pem%; + ssl_certificate_key %ssl_key%; + + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + location / { + try_files $uri $uri/ /index.php?$args; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress2.tpl b/install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress2.tpl new file mode 100644 index 00000000..54e1c755 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/php-fpm/wordpress2.tpl @@ -0,0 +1,63 @@ +server { + listen %ip%:%web_port%; + server_name %domain_idn% %alias_idn%; + root %docroot%; + index index.php index.html index.htm; + access_log /var/log/nginx/domains/%domain%.log combined; + access_log /var/log/nginx/domains/%domain%.bytes bytes; + error_log /var/log/nginx/domains/%domain%.error.log error; + + location = /favicon.ico { + log_not_found off; + access_log off; + } + + location = /robots.txt { + allow all; + log_not_found off; + access_log off; + } + + location / { + try_files $uri $uri/ /index.php?$args; + + location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { + expires max; + } + + location ~ [^/]\.php(/|$) { + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + + fastcgi_pass %backend_lsnr%; + fastcgi_index index.php; + include /etc/nginx/fastcgi_params; + } + } + + error_page 403 /error/404.html; + error_page 404 /error/404.html; + error_page 500 502 503 504 /error/50x.html; + + location /error/ { + alias %home%/%user%/web/%domain%/document_errors/; + } + + location ~* "/\.(htaccess|htpasswd)$" { + deny all; + return 404; + } + + location /vstats/ { + alias %home%/%user%/web/%domain%/stats/; + include %home%/%user%/web/%domain%/stats/auth.conf*; + } + + include /etc/nginx/conf.d/phpmyadmin.inc*; + include /etc/nginx/conf.d/phppgadmin.inc*; + include /etc/nginx/conf.d/webmail.inc*; + + include %home%/%user%/conf/web/nginx.%domain%.conf*; +} diff --git a/install/ubuntu/16.10/templates/web/nginx/proxy_ip.tpl b/install/ubuntu/16.10/templates/web/nginx/proxy_ip.tpl new file mode 100755 index 00000000..ae195617 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/nginx/proxy_ip.tpl @@ -0,0 +1,9 @@ +server { + listen %ip%:%proxy_port% default; + server_name _; + #access_log /var/log/nginx/%ip%.log main; + location / { + proxy_pass http://%ip%:%web_port%; + } +} + diff --git a/install/ubuntu/16.10/templates/web/php-fpm/default.tpl b/install/ubuntu/16.10/templates/web/php-fpm/default.tpl new file mode 100644 index 00000000..44ccf7a4 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/php-fpm/default.tpl @@ -0,0 +1,18 @@ +[%backend%] +listen = 127.0.0.1:%backend_port% +listen.allowed_clients = 127.0.0.1 + +user = %user% +group = %user% + +pm = dynamic +pm.max_children = 50 +pm.start_servers = 3 +pm.min_spare_servers = 2 +pm.max_spare_servers = 10 + +env[HOSTNAME] = $HOSTNAME +env[PATH] = /usr/local/bin:/usr/bin:/bin +env[TMP] = /tmp +env[TMPDIR] = /tmp +env[TEMP] = /tmp diff --git a/install/ubuntu/16.10/templates/web/php-fpm/no-php.tpl b/install/ubuntu/16.10/templates/web/php-fpm/no-php.tpl new file mode 100644 index 00000000..e677f3e9 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/php-fpm/no-php.tpl @@ -0,0 +1,13 @@ +;[%backend%] +;user = %user% +;group = %user% +;listen = /dev/null + +;listen.owner = %user% +;listen.group = nginx + +;pm = dynamic +;pm.max_children = 50 +;pm.start_servers = 3 +;pm.min_spare_servers = 2 +;pm.max_spare_servers = 10 diff --git a/install/ubuntu/16.10/templates/web/php-fpm/socket.tpl b/install/ubuntu/16.10/templates/web/php-fpm/socket.tpl new file mode 100644 index 00000000..f2dfbe8d --- /dev/null +++ b/install/ubuntu/16.10/templates/web/php-fpm/socket.tpl @@ -0,0 +1,21 @@ +[%backend%] +listen = /var/run/php/%backend%.sock +listen.allowed_clients = 127.0.0.1 + +user = %user% +group = %user% + +listen.owner = %user% +listen.group = www-data + +pm = dynamic +pm.max_children = 50 +pm.start_servers = 3 +pm.min_spare_servers = 2 +pm.max_spare_servers = 10 + +env[HOSTNAME] = $HOSTNAME +env[PATH] = /usr/local/bin:/usr/bin:/bin +env[TMP] = /tmp +env[TMPDIR] = /tmp +env[TEMP] = /tmp diff --git a/install/ubuntu/16.10/templates/web/skel/document_errors/403.html b/install/ubuntu/16.10/templates/web/skel/document_errors/403.html new file mode 100755 index 00000000..9c3f6baa --- /dev/null +++ b/install/ubuntu/16.10/templates/web/skel/document_errors/403.html @@ -0,0 +1,29 @@ + + + 403 — Forbidden + + + + + + +

%domain%

+ +

403

+

Forbidden

+
+ Unfortunately, you do not have permission to view this +
+ + + diff --git a/install/ubuntu/16.10/templates/web/skel/document_errors/404.html b/install/ubuntu/16.10/templates/web/skel/document_errors/404.html new file mode 100755 index 00000000..2cee7708 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/skel/document_errors/404.html @@ -0,0 +1,28 @@ + + + 404 — Not Found + + + + + + +

%domain%

+

404

+

Page Not Found

+
+ It seems that the page you were trying to reach does not exist anymore, or maybe it has just moved. + You can start again from the home or go back to previous page. +
+ + diff --git a/install/ubuntu/16.10/templates/web/skel/document_errors/50x.html b/install/ubuntu/16.10/templates/web/skel/document_errors/50x.html new file mode 100755 index 00000000..85ba648b --- /dev/null +++ b/install/ubuntu/16.10/templates/web/skel/document_errors/50x.html @@ -0,0 +1,29 @@ + + + 500 — Internal Sever Error + + + + + + +

%domain%

+ +

500

+

Internal Server Error

+
+ Sorry, something went wrong :( +
+ + + diff --git a/install/ubuntu/16.10/templates/web/skel/public_html/index.html b/install/ubuntu/16.10/templates/web/skel/public_html/index.html new file mode 100755 index 00000000..4f5bb724 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/skel/public_html/index.html @@ -0,0 +1,26 @@ + + + %domain% — Coming Soon + + + + + + +

%domain%

+ + + + + diff --git a/install/ubuntu/16.10/templates/web/skel/public_html/robots.txt b/install/ubuntu/16.10/templates/web/skel/public_html/robots.txt new file mode 100755 index 00000000..00ee83dc --- /dev/null +++ b/install/ubuntu/16.10/templates/web/skel/public_html/robots.txt @@ -0,0 +1,3 @@ +# vestacp autogenerated robots.txt +User-agent: * +Crawl-delay: 10 diff --git a/install/ubuntu/16.10/templates/web/skel/public_shtml/index.html b/install/ubuntu/16.10/templates/web/skel/public_shtml/index.html new file mode 100755 index 00000000..4f5bb724 --- /dev/null +++ b/install/ubuntu/16.10/templates/web/skel/public_shtml/index.html @@ -0,0 +1,26 @@ + + + %domain% — Coming Soon + + + + + + +

%domain%

+ + + + + diff --git a/install/ubuntu/16.10/templates/web/skel/public_shtml/robots.txt b/install/ubuntu/16.10/templates/web/skel/public_shtml/robots.txt new file mode 100755 index 00000000..00ee83dc --- /dev/null +++ b/install/ubuntu/16.10/templates/web/skel/public_shtml/robots.txt @@ -0,0 +1,3 @@ +# vestacp autogenerated robots.txt +User-agent: * +Crawl-delay: 10 diff --git a/install/ubuntu/16.10/templates/web/suspend/.htaccess b/install/ubuntu/16.10/templates/web/suspend/.htaccess new file mode 100755 index 00000000..5a6df83f --- /dev/null +++ b/install/ubuntu/16.10/templates/web/suspend/.htaccess @@ -0,0 +1,2 @@ +ErrorDocument 403 /index.html +ErrorDocument 404 /index.html diff --git a/install/ubuntu/16.10/templates/web/suspend/index.html b/install/ubuntu/16.10/templates/web/suspend/index.html new file mode 100755 index 00000000..f2d04e1f --- /dev/null +++ b/install/ubuntu/16.10/templates/web/suspend/index.html @@ -0,0 +1,25 @@ + + + Website Suspended + + + + + +

SUSPENDED

+

This website has been suspended.

+
+ Please contact the technical support department. +
+ + diff --git a/install/ubuntu/16.10/templates/web/webalizer/webalizer.tpl b/install/ubuntu/16.10/templates/web/webalizer/webalizer.tpl new file mode 100755 index 00000000..068adcfb --- /dev/null +++ b/install/ubuntu/16.10/templates/web/webalizer/webalizer.tpl @@ -0,0 +1,110 @@ +HostName %domain_idn% +LogFile /var/log/%web_system%/domains/%domain%.log +OutputDir %home%/%user%/web/%domain%/stats +HistoryName %home%/%user%/web/%domain%/stats/%domain%.hist +Incremental yes +IncrementalName %home%/%user%/web/%domain%/stats/%domain%.current +PageType htm* +PageType cgi +PageType php +PageType shtml +DNSCache /var/lib/webalizer/dns_cache.db +DNSChildren 10 +Quiet yes +FoldSeqErr yes +IndexAlias index.php +HideURL *.gif +HideURL *.GIF +HideURL *.jpg +HideURL *.JPG +HideURL *.png +HideURL *.PNG +HideURL *.ra +SearchEngine abcsearch. terms= +SearchEngine alexa. q= +SearchEngine alltheweb. q= +SearchEngine alltheweb. query= +SearchEngine alot. q= +SearchEngine altavista. q= +SearchEngine aolsearch. query= +SearchEngine aport.ru r= +SearchEngine ask. q= +SearchEngine atlas.cz q= +SearchEngine bbc. q= +SearchEngine bing. q= +SearchEngine blingo. q= +SearchEngine blogs.yandex.ru text= +SearchEngine btopenworld query= +SearchEngine buscador.ya.com q= +SearchEngine busca. q= +SearchEngine business. query= +SearchEngine centrum.cz q= +SearchEngine chiff. q= +SearchEngine clusty. query= +SearchEngine comcast. q= +SearchEngine crawler. q= +SearchEngine cuil. q= +SearchEngine dmoz. search= +SearchEngine dogpile.com q= +SearchEngine dpxml qkw= +SearchEngine eureka. searchword= +SearchEngine euroseek. string= +SearchEngine exalead. q= +SearchEngine excite search= +SearchEngine ezilon. q= +SearchEngine fastbrowsersearch. q= +SearchEngine feedster.com q= +SearchEngine fireball.de q= +SearchEngine fireball. keyword= +SearchEngine freeserve. q= +SearchEngine gigablast. q= +SearchEngine gogo.ru q= +SearchEngine go.mail.ru q= +SearchEngine google. q= +SearchEngine hakia. q= +SearchEngine hotbot. query= +SearchEngine infoseek. qt= +SearchEngine iwon searchfor= +SearchEngine ixquick.com query= +SearchEngine joeant. keywords= +SearchEngine jyxo.cz s= +SearchEngine looksmart. key= +SearchEngine lycos. query= +SearchEngine mamma. q= +SearchEngine metacrawler q= +SearchEngine msn. MT= +SearchEngine msxml qkw= +SearchEngine mysearch. searchfor= +SearchEngine mywebsearch. searchfor= +SearchEngine netscape. q= +SearchEngine nigma.ru q= +SearchEngine northernlight. qr= +SearchEngine ntlworld. q= +SearchEngine orange. q= +SearchEngine overture. Keywords= +SearchEngine punto.ru text= +SearchEngine rambler. keyword= +SearchEngine search.aol. q= +SearchEngine search.babylon. q= +SearchEngine search.centrum. phrase= +SearchEngine search.conduit. q= +SearchEngine search.earthlink q= +SearchEngine search.icq. q= +SearchEngine search.live.com q= +SearchEngine search.rambler.ru words= +SearchEngine search.winamp. q= +SearchEngine searchy. q= +SearchEngine seznam.cz w= +SearchEngine snap. query= +SearchEngine teoma. q= +SearchEngine teradex.com q= +SearchEngine ukplus key= +SearchEngine verizon. q= +SearchEngine virginmedia. q= +SearchEngine voila. rdata= +SearchEngine webcrawler searchText= +SearchEngine web.search.naver. query= +SearchEngine wisenut q= +SearchEngine yahoo. p= +SearchEngine yandex. text= +SearchEngine yodao. q= diff --git a/install/ubuntu/16.10/vsftpd/vsftpd.conf b/install/ubuntu/16.10/vsftpd/vsftpd.conf new file mode 100644 index 00000000..034b016d --- /dev/null +++ b/install/ubuntu/16.10/vsftpd/vsftpd.conf @@ -0,0 +1,27 @@ +anonymous_enable=NO +local_enable=YES +write_enable=YES +local_umask=022 +anon_umask=022 +anon_upload_enable=NO +dirmessage_enable=YES +xferlog_enable=YES +connect_from_port_20=YES +xferlog_std_format=YES +dual_log_enable=YES +chroot_local_user=YES +listen=YES +pam_service_name=vsftpd +userlist_enable=NO +tcp_wrappers=YES +force_dot_files=YES +ascii_upload_enable=YES +ascii_download_enable=YES +allow_writeable_chroot=YES +seccomp_sandbox=NO +pasv_enable=YES +pasv_min_port=12000 +pasv_max_port=12100 +max_per_ip=10 +max_clients=100 +use_localtime=YES From b103640a0f045dcd735c98cc5261604e66ff1420 Mon Sep 17 00:00:00 2001 From: Dmitry Naumov-Socolov Date: Tue, 13 Dec 2016 17:07:47 -0500 Subject: [PATCH 06/45] WEB/fixed nginx log notices --- web/inc/main.php | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/web/inc/main.php b/web/inc/main.php index 9eccb124..75482cd1 100644 --- a/web/inc/main.php +++ b/web/inc/main.php @@ -11,7 +11,24 @@ require_once(dirname(__FILE__).'/i18n.php'); // Saving user IPs to the session for preventing session hijacking -$user_combined_ip = $_SERVER['REMOTE_ADDR'] .'|'. $_SERVER['HTTP_CLIENT_IP'] .'|'. $_SERVER['HTTP_X_FORWARDED_FOR'] .'|'. $_SERVER['HTTP_X_FORWARDED'] .'|'. $_SERVER['HTTP_FORWARDED_FOR'] .'|'. $_SERVER['HTTP_FORWARDED']; +$user_combined_ip = $_SERVER['REMOTE_ADDR']; + +if(isset($_SERVER['HTTP_CLIENT_IP'])){ + $user_combined_ip .= '|'. $_SERVER['HTTP_CLIENT_IP']; +} +if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])){ + $user_combined_ip .= '|'. $_SERVER['HTTP_X_FORWARDED_FOR']; +} +if(isset($_SERVER['HTTP_FORWARDED_FOR'])){ + $user_combined_ip .= '|'. $_SERVER['HTTP_FORWARDED_FOR']; +} +if(isset($_SERVER['HTTP_X_FORWARDED'])){ + $user_combined_ip .= '|'. $_SERVER['HTTP_X_FORWARDED']; +} +if(isset($_SERVER['HTTP_FORWARDED'])){ + $user_combined_ip .= '|'. $_SERVER['HTTP_FORWARDED']; +} + if(!isset($_SESSION['user_combined_ip'])){ $_SESSION['user_combined_ip'] = $user_combined_ip; From e757dc408ad8d6348446dbffded4c3b8c039b8db Mon Sep 17 00:00:00 2001 From: Rick Bakker Date: Sun, 18 Dec 2016 14:16:38 +0100 Subject: [PATCH 07/45] Force a new line, to prevent syntax errors. When I enabled SFTP chroot, "Subsystem sftp internal-sftp" was put directly after "UsePAM yes" (Ubuntu 16.04.1), which made "UsePAM yesSubsystem sftp internal-sftp", which obviously caused a syntax error. I fixed this by manually dividing those two options. --- bin/v-add-sys-sftp-jail | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/v-add-sys-sftp-jail b/bin/v-add-sys-sftp-jail index 7953f151..7d5c4035 100755 --- a/bin/v-add-sys-sftp-jail +++ b/bin/v-add-sys-sftp-jail @@ -45,6 +45,7 @@ fi # Enabling jailed sftp if [ -z "$sftp_i" ]; then + echo " " >> $config echo "Subsystem sftp internal-sftp" >> $config echo "Match Group sftp-only" >> $config echo "ChrootDirectory /chroot/%u" >> $config From a4917b6d060d1da5283c5c08ba9dc0977e72b2ea Mon Sep 17 00:00:00 2001 From: Uros Date: Tue, 20 Dec 2016 10:34:45 +0100 Subject: [PATCH 08/45] fix for nginx less (apache only) installation fixes problem with apache only installation where the certificate challenge file is not written correctly --- bin/v-check-letsencrypt-domain | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bin/v-check-letsencrypt-domain b/bin/v-check-letsencrypt-domain index e46c7ea2..64c70516 100755 --- a/bin/v-check-letsencrypt-domain +++ b/bin/v-check-letsencrypt-domain @@ -97,7 +97,10 @@ if [ "$WEB_SYSTEM" = 'nginx' ] || [ "$PROXY_SYSTEM" = 'nginx' ]; then fi else acme="$HOMEDIR/$user/web/$r_domain/public_html/.well-known/acme-challenge" - echo "$token" > $acme/$token.$thumb + if [ ! -d "$acme" ]; then + mkdir -p $acme + fi + echo "$token.$thumb" > $acme/$token chown -R $user:$user $HOMEDIR/$user/web/$r_domain/public_html/.well-known fi From c59816382edb4c984618b51bcff96beefa3cf42c Mon Sep 17 00:00:00 2001 From: DaniWinter Date: Tue, 20 Dec 2016 13:58:17 +0100 Subject: [PATCH 09/45] NL Translations --- web/inc/i18n/nl.php | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/web/inc/i18n/nl.php b/web/inc/i18n/nl.php index a8aafbfe..e027eb82 100644 --- a/web/inc/i18n/nl.php +++ b/web/inc/i18n/nl.php @@ -26,22 +26,22 @@ $LANG['nl'] = array( 'CRON' => 'Taken', 'BACKUP' => 'Back-up', - 'LOGIN' => 'LOGIN', - 'RESET PASSWORD' => 'RESET PASSWORD', - 'SEARCH' => 'SEARCH', - 'PACKAGE' => 'PACKAGE', + 'LOGIN' => 'INLOGGEN', + 'RESET PASSWORD' => 'WACHTWOORD RESETTEN', + 'SEARCH' => 'ZOEK', + 'PACKAGE' => 'PAKKET', 'RRD' => 'RRD', - 'STATS' => 'STATS', + 'STATS' => 'STATISTIEKEN', 'LOG' => 'LOG', 'UPDATES' => 'UPDATES', 'FIREWALL' => 'FIREWALL', 'SERVER' => 'SERVER', - 'MEMORY' => 'MEMORY', - 'DISK' => 'DISK', - 'NETWORK' => 'NETWORK', - 'Web Log Manager' => 'Web Log Manager', + 'MEMORY' => 'GEHEUGEN', + 'DISK' => 'SCHIJF', + 'NETWORK' => 'NETWERK', + 'Web Log Manager' => 'Web Log Beheer', - 'no notifications' => 'no notifications', + 'no notifications' => 'geen notificaties', 'Add User' => 'Gebruiker toevoegen', 'Add Domain' => 'Domein toevoegen', @@ -196,12 +196,12 @@ $LANG['nl'] = array( 'SSL Home Directory' => 'SSL Map', 'Lets Encrypt Support' => 'Lets Encrypt Support', 'Lets Encrypt' => 'Lets Encrypt', - 'Your certificate will be automatically issued in 5 minutes' => 'Your certificate will be automatically issued in 5 minutes', + 'Your certificate will be automatically issued in 5 minutes' => 'Je certificaat wordt automatisch geïnstalleerd in 5 minuten', 'Proxy Support' => 'Proxy Ondersteuning', 'Proxy Extensions' => 'Proxy Extensies', 'Web Statistics' => 'Web Statistieken', 'Additional FTP Account' => 'Extra FTP Account', - 'Path' => 'Path', + 'Path' => 'Pad', 'SOA' => 'SOA', 'TTL' => 'TTL', 'Expire' => 'Loopt af', @@ -216,16 +216,16 @@ $LANG['nl'] = array( 'Autoreply' => 'Auto-antwoord', 'Forward to' => 'Doorsturen naar', 'Do not store forwarded mail' => 'Doorgestuurde e-mail niet opslaan', - 'IMAP hostname' => 'IMAP hostname', - 'IMAP port' => 'IMAP port', - 'IMAP security' => 'IMAP security', - 'IMAP auth method' => 'IMAP auth method', - 'SMTP hostname' => 'SMTP hostname', - 'SMTP port' => 'SMTP port', - 'SMTP security' => 'SMTP security', - 'SMTP auth method' => 'SMTP auth method', + 'IMAP hostname' => 'IMAP hostnaam', + 'IMAP port' => 'IMAP poort', + 'IMAP security' => 'IMAP beveiliging', + 'IMAP auth method' => 'IMAP authenticatie methode', + 'SMTP hostname' => 'SMTP hostnaam', + 'SMTP port' => 'SMTP poort', + 'SMTP security' => 'SMTP beveiliging', + 'SMTP auth method' => 'SMTP authenticatie methode', 'STARTTLS' => 'STARTTLS', - 'Normal password' => 'Normal password', + 'Normal password' => 'Normaal wachtwoord', 'database' => 'database', 'User' => 'Gebruiker', 'Host' => 'Host', @@ -307,7 +307,7 @@ $LANG['nl'] = array( 'Prefix will be automaticaly added to username' => 'Voorvoegsel %s wordt automatisch toegevoegd aan gebruikersnaam', 'Send FTP credentials to email' => 'Stuur FTP inloggegevens naar e-mailadres', 'Expiration Date' => 'Vervaldatum', - 'YYYY-MM-DD' => 'YYYY-MM-DD', + 'YYYY-MM-DD' => 'DD-MM-YYYY', 'Name servers' => 'Naamservers', 'Record' => 'Record', 'IP or Value' => 'IP of Waarde', From 11219e0de86ea9ecd42fe9ea4fa8085eb95be3be Mon Sep 17 00:00:00 2001 From: DaniWinter Date: Tue, 20 Dec 2016 14:47:32 +0100 Subject: [PATCH 10/45] Update nl.php --- web/inc/i18n/nl.php | 295 ++++++++++++++++++++++---------------------- 1 file changed, 148 insertions(+), 147 deletions(-) diff --git a/web/inc/i18n/nl.php b/web/inc/i18n/nl.php index e027eb82..84b73dca 100644 --- a/web/inc/i18n/nl.php +++ b/web/inc/i18n/nl.php @@ -3,6 +3,7 @@ * Vesta language file * drMacFaulty (wsanders@outlook.com, wsanders.eu) * ricardo777 (info@intio.nl, intio.nl) + * DaniWinter (mail@daniwinter.nl, daniwinter.nl) */ $LANG['nl'] = array( @@ -504,12 +505,12 @@ $LANG['nl'] = array( 'RESTORE_SCHEDULED' => 'De taak is toegevoegd aan de wachtrij. U ontvangt een e-mailbericht zodra de back-up is hersteld.', 'RESTORE_EXISTS' => 'Er wordt al een hersteltaak uitgevoerd. Wacht a.u.b. totdat de reservekopie is teruggezet.', - 'WEB_EXCLUSIONS' => 'Type domain name, one per line. To exclude all domains use *. To exclude specific dirs use following format: domain.com:public_html/cache:public_html/tmp', - 'DNS_EXCLUSIONS' => 'Type domain name, one per line. To exclude all domains use *', - 'MAIL_EXCLUSIONS' => 'Type domain name, one per line. To exclude all domains use *. To exclude specific accounts use following format: domain.com:info:support:postmaster', - 'DB_EXCLUSIONS' => 'Type full database name, one per line. To exclude all databases use *', - 'CRON_EXCLUSIONS' => 'To exclude all jobs use *', - 'USER_EXCLUSIONS' => 'Type directory name, one per line. To exlude all dirs use *', + 'WEB_EXCLUSIONS' => 'Typ domainnaam, één per lijn. Om alle domeinen uit te sluiten gebruik *. Om specifieke mappen uit te sluiten gebruik het volgende format: domain.com:public_html/cache:public_html/tmp', + 'DNS_EXCLUSIONS' => 'Typ domainnaam, één per lijn. Om alle domeinen uit te sluiten gebruik *', + 'MAIL_EXCLUSIONS' => 'Typ domainnaam, één per lijn. Om alle domeinen uit te sluiten gebruik *. Om specifieke accounts uit te sluiten gebruik het volgende format: domain.com:info:support:postmaster', + 'DB_EXCLUSIONS' => 'Typ volledige databasenaam, één per lijn. Om alle databases uit te sluiten gebruik *', + 'CRON_EXCLUSIONS' => 'Om alle cronjobs uit te sluiten gebruik *', + 'USER_EXCLUSIONS' => 'Typ mapnaam, één per lijn. Om alle mappen uit te sluiten gebruik *', 'Welcome to Vesta Control Panel' => 'Welkom bij het Vesta Controlepaneel', 'MAIL_FROM' => 'Vesta Controlepaneel ', @@ -534,21 +535,21 @@ $LANG['nl'] = array( 'MAIL_RESET_SUBJECT' => 'Wachtwoordherstel voor %s', 'PASSWORD_RESET_REQUEST' => "Om uw wachtwoord te herstellen klikt u op de link hieronder.\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\nWanneer bovenstaande link niet werkt kunt u ook naar de volgende pagina gaan https://%s/reset/?action=code&user=%s en hier uw wachtwoord herstelcode invullen:\n%s\n\nAls u geen wachtwoord herstelcode heeft aangevraagd, kunt u dit bericht negeren.\n\n--\nVesta Controlepaneel\n", - 'Jan' => 'Jan', - 'Feb' => 'Feb', - 'Mar' => 'Mar', - 'Apr' => 'Apr', - 'May' => 'May', - 'Jun' => 'Jun', - 'Jul' => 'Jul', - 'Aug' => 'Aug', - 'Sep' => 'Sep', - 'Oct' => 'Oct', - 'Nov' => 'Nov', - 'Dec' => 'Dec', + 'Jan' => 'jan', + 'Feb' => 'feb', + 'Mar' => 'mrt', + 'Apr' => 'apr', + 'May' => 'mei', + 'Jun' => 'jun', + 'Jul' => 'jul', + 'Aug' => 'aug', + 'Sep' => 'sep', + 'Oct' => 'okt', + 'Nov' => 'nov', + 'Dec' => 'dec', 'Configuring Server' => 'Server Instellen', - 'Hostname' => 'Hostname', + 'Hostname' => 'Hostnaam', 'Time Zone' => 'Tijdzone', 'Default Language' => 'Standaard Taal', 'Proxy Server' => 'Proxy Server', @@ -565,88 +566,88 @@ $LANG['nl'] = array( 'phpMyAdmin URL' => 'phpMyAdmin URL', 'PostgreSQL Support' => 'PostgreSQL Support', 'phpPgAdmin URL' => 'phpPgAdmin URL', - 'Maximum Number Of Databases' => 'Maximum Number Of Databases', - 'Current Number Of Databases' => 'Current Number Of Databases', + 'Maximum Number Of Databases' => 'Maximale aantal Databases', + 'Current Number Of Databases' => 'Huidige aantal Databases', 'Local backup' => 'Lokale backup', - 'Compression level' => 'Compression level', - 'Directory' => 'Directory', - 'Remote backup' => 'Afstand backup', + 'Compression level' => 'Compressie level', + 'Directory' => 'Map', + 'Remote backup' => 'Externe backup', 'ftp' => 'FTP', 'sftp' => 'SFTP', 'SFTP Chroot' => 'SFTP Chroot', - 'FileSystem Disk Quota' => 'BestandenSystem Schijf Quotum', + 'FileSystem Disk Quota' => 'Bestandssysteem Schijf Quotum', 'Vesta Control Panel Plugins' => 'Vesta Control Panel Plugins', 'preview' => 'Voorbeeld', - 'Reseller Role' => 'Reseller Role', + 'Reseller Role' => 'Verkoper Rol', 'Web Config Editor' => 'Web Configuratie Bewerker', 'Template Manager' => 'Voorbeeld Manager', - 'Backup Migration Manager' => 'Backup Migration Manager', + 'Backup Migration Manager' => 'Backup Migratie Manager', 'FileManager' => 'FileManager', 'show: CPU / MEM / NET / DISK' => 'show: CPU / MEM / NET / DISK', - 'sort by' => 'sort by', - 'Date' => 'Date', - 'Starred' => 'Starred', - 'Name' => 'Name', + 'sort by' => 'sorteer op', + 'Date' => 'Datum', + 'Starred' => 'Favoriet', + 'Name' => 'Naam', - 'save to favorites' => 'save to favorites', + 'save to favorites' => 'sla op als favoriet', - 'File Manager' => 'File Manager', - 'size' => 'size', - 'date' => 'date', - 'name' => 'name', - 'Initializing' => 'Initializing', + 'File Manager' => 'Bestandsbeheer', + 'size' => 'grootte', + 'date' => 'datum', + 'name' => 'naam', + 'Initializing' => 'Initialiseren', 'UPLOAD' => 'UPLOAD', - 'NEW FILE' => 'NEW FILE', - 'NEW DIR' => 'NEW DIR', - 'DELETE' => 'DELETE', - 'RENAME' => 'RENAME', - 'MOVE' => 'MOVE', - 'RIGHTS' => 'RIGHTS', - 'COPY' => 'COPY', - 'ARCHIVE' => 'ARCHIVE', - 'EXTRACT' => 'EXTRACT', + 'NEW FILE' => 'NIEUW BESTAND', + 'NEW DIR' => 'NIEUWE MAP', + 'DELETE' => 'VERWIJDER', + 'RENAME' => 'HERNOEM', + 'MOVE' => 'VERPLAATS', + 'RIGHTS' => 'RECHTEN', + 'COPY' => 'KOPIEER', + 'ARCHIVE' => 'INPAKKEN', + 'EXTRACT' => 'UITPAKKEN', 'DOWNLOAD' => 'DOWNLOAD', - 'Are you sure?' => 'Are you sure?', + 'Are you sure?' => 'Zeker weten?', 'Hit' => 'Hit', - 'to reload the page' => 'to reload the page', - 'Directory name cannot be empty' => 'Directory name cannot be empty', - 'File name cannot be empty' => 'File name cannot be empty', - 'No file selected' => 'No file selected', - 'No file or folder selected' => 'No file or folder selected', - 'File type not supported' => 'File type not supported', - 'Directory download not available in current version' => 'Directory download not available in current version', - 'Directory not available' => 'Directory not available', - 'Done' => 'Done', - 'Close' => 'Close', - 'Copy' => 'Copy', - 'Cancel' => 'Cancel', - 'Rename' => 'Rename', - 'Move' => 'Move', - 'Change Rights' => 'Change Rights', - 'Delete' => 'Delete', - 'Extract' => 'Extract', - 'Create' => 'Create', - 'Compress' => 'Compress', + 'to reload the page' => 'om de pagina te herladen', + 'Directory name cannot be empty' => 'Mapnaam kan niet leeg zijn', + 'File name cannot be empty' => 'Bestandsnaam kan niet leeg zijn', + 'No file selected' => 'Geen bestand geselecteerd', + 'No file or folder selected' => 'Geen bestand of map geselecteerd', + 'File type not supported' => 'Bestandstype niet ondersteund', + 'Directory download not available in current version' => 'Het downloaden van mappen is niet beschikbaar in deze versie', + 'Directory not available' => 'Map niet beschikbaar', + 'Done' => 'Klaar', + 'Close' => 'Sluit', + 'Copy' => 'Kopieer', + 'Cancel' => 'Annuleer', + 'Rename' => 'Hernoem', + 'Move' => 'Verplaats', + 'Change Rights' => 'Rechten aanpassen', + 'Delete' => 'Verwijder', + 'Extract' => 'Uitpakken', + 'Create' => 'Maak', + 'Compress' => 'Inpakken', 'OK' => 'OK', - 'YOU ARE COPYING' => 'YOU ARE COPYING', - 'YOU ARE REMOVING' => 'YOU ARE REMOVING', - 'Delete items' => 'Delete items', - 'Copy files' => 'Copy files', - 'Move files' => 'Move files', - 'Are you sure you want to copy' => 'Are you sure you want to copy', - 'Are you sure you want to move' => 'Are you sure you want to move', - 'Are you sure you want to delete' => 'Are you sure you want to delete', - 'into' => 'into', - 'existing files will be replaced' => 'existing files will be replaced', - 'Original name' => 'Original name', - 'File' => 'File', - 'already exists' => 'already exists', - 'Create file' => 'Create file', - 'Create directory' => 'Create directory', - 'read by owner' => 'read by owner', - 'write by owner' => 'write by owner', - 'execute/search by owner' => 'execute/search by owner', + 'YOU ARE COPYING' => 'JE BENT AAN HET KOPIËREN', + 'YOU ARE REMOVING' => 'JE BENT AAN HET VERPLAATSEN', + 'Delete items' => 'Verwijder items', + 'Copy files' => 'Kopieer bestanden', + 'Move files' => 'Verplaats bestanden', + 'Are you sure you want to copy' => 'Weet je zeker dat je wilt kopiëren', + 'Are you sure you want to move' => 'Weet je zeker dat je wilt verplaatsen', + 'Are you sure you want to delete' => 'Weet je zeker dat je wilt verwijderen', + 'into' => 'naar', + 'existing files will be replaced' => 'huidige bestanden worden vervangen', + 'Original name' => 'Originele naam', + 'File' => 'Bestand', + 'already exists' => 'bestaat al', + 'Create file' => 'Maak bestand', + 'Create directory' => 'Maak map', + 'read by owner' => 'lees al bezitter', + 'write by owner' => 'schrijf al bezitter', + 'execute/search by owner' => 'uitvoeren/zoeken als bezitter', 'read by group' => 'read by group', 'write by group' => 'write by group', 'execute/search by group' => 'execute/search by group', @@ -654,19 +655,19 @@ $LANG['nl'] = array( 'write by others' => 'write by others', 'execute/search by others' => 'execute/search by others', - 'Shortcuts' => 'Shortcuts', - 'Add New object' => 'Add New object', - 'Save Form' => 'Save Form', - 'Cancel saving form' => 'Cancel saving form', - 'Go to USER list' => 'Go to USER list', - 'Go to WEB list' => 'Go to WEB list', - 'Go to DNS list' => 'Go to DNS list', - 'Go to MAIL list' => 'Go to MAIL list', - 'Go to DB list' => 'Go to DB list', - 'Go to CRON list' => 'Go to CRON list', - 'Go to BACKUP list' => 'Go to BACKUP list', - 'Focus on search' => 'Focus on search', - 'Display/Close shortcuts' => 'Display/Close shortcuts', + 'Shortcuts' => 'Snelkoppelingen', + 'Add New object' => 'Nieuw object toevoegen', + 'Save Form' => 'Formulier opslaan', + 'Cancel saving form' => 'Annuleer opslaan', + 'Go to USER list' => 'Ga naar USER lijst', + 'Go to WEB list' => 'Ga naar WEB lijst', + 'Go to DNS list' => 'Ga naar DNS lijst', + 'Go to MAIL list' => 'Ga naar MAIL lijst', + 'Go to DB list' => 'Ga naar DB lijst', + 'Go to CRON list' => 'Ga naar CRON lijst', + 'Go to BACKUP list' => 'Ga naar BACKUP lijst', + 'Focus on search' => 'Focus op zoeken', + 'Display/Close shortcuts' => 'Snelkoppeling Laten zien/sluiten', 'Move backward through top menu' => 'Move backward through top menu', 'Move forward through top menu' => 'Move forward through top menu', 'Enter focused element' => 'Enter focused element', @@ -674,51 +675,51 @@ $LANG['nl'] = array( 'Move down through elements list' => 'Move down through elements list', 'Upload' => 'Upload', - 'New File' => 'New File', - 'New Folder' => 'New Folder', + 'New File' => 'Nieuw bestand', + 'New Folder' => 'Nieuwe map', 'Download' => 'Download', - 'Archive' => 'Archive', - 'Save File (in text editor)' => 'Save File (in text editor)', - 'Close Popup / Cancel' => 'Close Popup / Cancel', - 'Move Cursor Up' => 'Move Cursor Up', - 'Move Cursor Down' => 'Move Cursor Down', - 'Switch to Left Tab' => 'Switch to Left Tab', - 'Switch to Right Tab' => 'Switch to Right Tab', + 'Archive' => 'Inpakken', + 'Save File (in text editor)' => 'Bestand opslaan (in bestands editor)', + 'Close Popup / Cancel' => 'Sluit Popup / Annuleer', + 'Move Cursor Up' => 'Verplaats cursor omhoog', + 'Move Cursor Down' => 'Verplaats cursor omlaag', + 'Switch to Left Tab' => 'Switch naar linker tab', + 'Switch to Right Tab' => 'Switch naar rechter tab', 'Switch Tab' => 'Switch Tab', - 'Go to the Top of the File List' => 'Go to the Top of the File List', - 'Go to the Last File' => 'Go to the Last File', - 'Open File / Enter Directory' => 'Open File / Enter Directory', - 'Edit File' => 'Edit File', - 'Go to Parent Directory' => 'Go to Parent Directory', - 'Select Current File' => 'Select Current File', - 'Select Bunch of Files' => 'Select Bunch of Files', - 'Add File to the Current Selection' => 'Add File to the Current Selection', - 'Select All Files' => 'Select All Files', + 'Go to the Top of the File List' => 'Ga naar naar boven in de bestandslijst', + 'Go to the Last File' => 'Ga naar het laatste bestand', + 'Open File / Enter Directory' => 'Open bestand / Open map', + 'Edit File' => 'Bestand aanpassen', + 'Go to Parent Directory' => 'Ga naar bovenliggende map', + 'Select Current File' => 'Selecteer huidige bestand', + 'Select Bunch of Files' => 'Selecteer meerdere bestanden', + 'Add File to the Current Selection' => 'Bestand toevoegen aan de huidige selectie', + 'Select All Files' => 'Selecteer alle bestanden', 'shortcuts are inspired by magnificent GNU Midnight Commander file manager' => - 'shortcuts are inspired by magnificent GNU Midnight Commander file manager', + 'snelkoppelingen zijn geïnspireerd door GNU Midnight Commander bestands beheerder', - 'Licence Key' => 'Licence Key', - 'Enter License Key' => 'Enter License Key', - 'Buy Licence' => 'Buy Licence', - 'Buy Lifetime License' => 'Buy Lifetime License', - 'Disable and Cancel Licence' => 'Disable and Cancel Licence', - 'Licence Activated' => 'Licence Activated', - 'Licence Deactivated' => 'Licence Deactivated', - 'Restrict users so that they cannot use SSH and access only their home directory.' => 'Restrict users so that they cannot use SSH and access only their home directory.', - 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.', - 'This is a commercial module, you would need to purchace license key to enable it.' => 'This is a commercial module, you would need to purchace license key to enable it.', + 'Licence Key' => 'Licentie code', + 'Enter License Key' => 'Licentie code invoeren', + 'Buy Licence' => 'Licentie kopen', + 'Buy Lifetime License' => 'Koop levenslange licentie', + 'Disable and Cancel Licence' => 'Licentie uitschakelen en annuleren', + 'Licence Activated' => 'Licentie geactiveerd', + 'Licence Deactivated' => 'Licentie gedeactiveerd', + 'Restrict users so that they cannot use SSH and access only their home directory.' => 'SSH voor gebruikers beperken tot hun eigen home directory.', + 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Blader, kopieer, wijzig, bekijk, en verkrijg al je webbestanden met een volledige bestandsbeheerder.', + 'This is a commercial module, you would need to purchace license key to enable it.' => 'Dit is een commerciële module, je moet een licentie kopen om deze in te schakelen.', 'Minutes' => 'Minuten', 'Hourly' => 'Ieder Uur', 'Run Command' => 'Voer commando uit', 'every month' => 'elke maand', - 'every odd month' => 'every odd month', - 'every even month' => 'every even month', - 'every day' => 'every day', - 'every odd day' => 'every odd day', - 'every even day' => 'every even day', - 'weekdays (5 days)' => 'weekdays (5 days)', - 'weekend (2 days)' => 'weekend (2 days)', + 'every odd month' => 'elke oneven maand', + 'every even month' => 'elke even maand', + 'every day' => 'elke dag', + 'every odd day' => 'elke oneven dag', + 'every even day' => 'elke even dag', + 'weekdays (5 days)' => 'weekdagen (5 dagen)', + 'weekend (2 days)' => 'weekend (2 dagen)', 'Monday' => 'Maandag', 'Tuesday' => 'Dinsdag', 'Wednesday' => 'Woensdag', @@ -737,21 +738,21 @@ $LANG['nl'] = array( 'awstats' => 'awstats', 'Vesta SSL' => 'Vesta SSL', - 'SUBJECT' => 'SUBJECT', - 'ALIASES' => 'ALIASES', - 'NOT_BEFORE' => 'NOT_BEFORE', - 'NOT_AFTER' => 'NOT_AFTER', - 'SIGNATURE' => 'SIGNATURE', - 'PUB_KEY' => 'PUB_KEY', - 'ISSUER' => 'ISSUER', + 'SUBJECT' => 'ONDERWERP', + 'ALIASES' => 'ALIASSEN', + 'NOT_BEFORE' => 'NIET VOOR', + 'NOT_AFTER' => 'NIET NA', + 'SIGNATURE' => 'HANDTEKENING', + 'PUB_KEY' => 'PUBLIEKE SLEUTEL', + 'ISSUER' => 'UITGEVER', - 'Use server hostname' => 'Use server hostname', - 'Use domain hostname' => 'Use domain hostname', - 'Use STARTTLS' => 'Use STARTTLS', - 'Use SSL' => 'Use SSL', - 'No encryption' => 'No encryption', - 'Do not use encryption' => 'Do not use encryption', + 'Use server hostname' => 'Gebruik server hostnaam', + 'Use domain hostname' => 'Gebruik domein hostnaam', + 'Use STARTTLS' => 'Gebruik STARTTLS', + 'Use SSL' => 'Gebruik SSL', + 'No encryption' => 'Geen encryptie', + 'Do not use encryption' => 'Geen encryptie gebruiken', - 'maximum characters length, including prefix' => 'maximum %s characters length, including prefix', + 'maximum characters length, including prefix' => 'maximaal %s karakters lang, inclusief voorvoegsel', ); From e9ca075dd7e456059049027ea844d00b752caf18 Mon Sep 17 00:00:00 2001 From: dpeca Date: Tue, 27 Dec 2016 15:49:09 +0100 Subject: [PATCH 11/45] Adding border="1" for Apache process table It was impossible to see where what column begins... --- web/list/server/index.php | 1 + 1 file changed, 1 insertion(+) diff --git a/web/list/server/index.php b/web/list/server/index.php index c37448ae..b7150778 100644 --- a/web/list/server/index.php +++ b/web/list/server/index.php @@ -65,6 +65,7 @@ if (isset($_GET['web'])) { include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/list_server_info.html'); exec (VESTA_CMD.'v-list-sys-web-status', $output, $return_var); foreach($output as $file) { + $file=str_replace('border="0"', 'border="1"', $file); echo $file . "\n"; } echo " \n\n\n"; From 8bfe11b86ddd79e9a23d955f9fc0084796f23147 Mon Sep 17 00:00:00 2001 From: dpeca Date: Tue, 27 Dec 2016 16:58:37 +0100 Subject: [PATCH 12/45] Fixing missing mail._domainkey when adding domain Closing issue https://github.com/serghey-rodin/vesta/issues/990 --- bin/v-add-mail-domain | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bin/v-add-mail-domain b/bin/v-add-mail-domain index eedc02d9..325e319c 100755 --- a/bin/v-add-mail-domain +++ b/bin/v-add-mail-domain @@ -125,6 +125,9 @@ if [ ! -z "$DNS_SYSTEM" ] && [ "$dkim" = 'yes' ]; then policy="\"t=y; o=~;\"" $BIN/v-add-dns-record $user $domain $record TXT "$policy" + # Wait one second to avoid editing bind zone in the same unixtime second, because bind will not reload zone if new and last modification occur in the same unixtime second + sleep 1 + record='mail._domainkey' selector="\"k=rsa\; p=$p\"" $BIN/v-add-dns-record $user $domain $record TXT "$selector" From 61a12e4cd914f82a9add1c5dba8985879b2ce649 Mon Sep 17 00:00:00 2001 From: dpeca Date: Tue, 27 Dec 2016 17:21:00 +0100 Subject: [PATCH 13/45] Ubuntu fix when spamassassin isn't in startup list Patch is ported from Debian installer (old and tested). Fix for https://bugs.vestacp.com/issues/461 --- install/vst-install-ubuntu.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/install/vst-install-ubuntu.sh b/install/vst-install-ubuntu.sh index 6e334d28..19666573 100755 --- a/install/vst-install-ubuntu.sh +++ b/install/vst-install-ubuntu.sh @@ -1081,6 +1081,9 @@ if [ "$spamd" = 'yes' ]; then sed -i "s/ENABLED=0/ENABLED=1/" /etc/default/spamassassin service spamassassin start check_result $? "spamassassin start failed" + if [[ $(systemctl list-unit-files | grep spamassassin) =~ "disabled" ]]; then + systemctl enable spamassassin + fi fi From fbac2699a4dff117dad1c7b0e0b763d44874d223 Mon Sep 17 00:00:00 2001 From: dpeca Date: Tue, 27 Dec 2016 21:25:11 +0100 Subject: [PATCH 14/45] Removing AllowSupplementaryGroups for Ubuntu 16.10 The same already known issue as on all distributions... --- install/ubuntu/16.10/clamav/clamd.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/ubuntu/16.10/clamav/clamd.conf b/install/ubuntu/16.10/clamav/clamd.conf index ea982697..4e04356e 100644 --- a/install/ubuntu/16.10/clamav/clamd.conf +++ b/install/ubuntu/16.10/clamav/clamd.conf @@ -8,7 +8,7 @@ LocalSocketMode 666 # TemporaryDirectory is not set to its default /tmp here to make overriding # the default with environment variables TMPDIR/TMP/TEMP possible User clamav -AllowSupplementaryGroups true +# AllowSupplementaryGroups true ScanMail true ScanArchive true ArchiveBlockEncrypted false From 073c0164f1fdb585ef865b5369d7a43768ec47cf Mon Sep 17 00:00:00 2001 From: dpeca Date: Wed, 28 Dec 2016 15:04:51 +0100 Subject: [PATCH 15/45] Better soultion for DKIM DNS reloading --- bin/v-add-mail-domain | 5 +---- web/add/web/index.php | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/bin/v-add-mail-domain b/bin/v-add-mail-domain index 325e319c..788445cd 100755 --- a/bin/v-add-mail-domain +++ b/bin/v-add-mail-domain @@ -123,10 +123,7 @@ if [ ! -z "$DNS_SYSTEM" ] && [ "$dkim" = 'yes' ]; then p=$(cat $USER_DATA/mail/$domain.pub|grep -v ' KEY---'|tr -d '\n') record='_domainkey' policy="\"t=y; o=~;\"" - $BIN/v-add-dns-record $user $domain $record TXT "$policy" - - # Wait one second to avoid editing bind zone in the same unixtime second, because bind will not reload zone if new and last modification occur in the same unixtime second - sleep 1 + $BIN/v-add-dns-record $user $domain $record TXT "$policy" '' '' 'no' record='mail._domainkey' selector="\"k=rsa\; p=$p\"" diff --git a/web/add/web/index.php b/web/add/web/index.php index c0d6a9fa..486b5e12 100644 --- a/web/add/web/index.php +++ b/web/add/web/index.php @@ -126,7 +126,7 @@ if (!empty($_POST['ok'])) { // Add DNS domain if (($_POST['v_dns'] == 'on') && (empty($_SESSION['error_msg']))) { - exec (VESTA_CMD."v-add-dns-domain ".$user." ".$v_domain." ".$v_public_ip, $output, $return_var); + exec (VESTA_CMD."v-add-dns-domain ".$user." ".$v_domain." ".$v_public_ip." '' '' '' '' '' '' '' '' 'no'", $output, $return_var); check_return_code($return_var,$output); unset($output); } From 8dc4a82cfdf184dd2bcbacae4bd8c58ef21e0038 Mon Sep 17 00:00:00 2001 From: dpeca Date: Wed, 28 Dec 2016 15:41:39 +0100 Subject: [PATCH 16/45] Prevent reloading DNS for first DKIM record --- bin/v-add-mail-domain-dkim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/v-add-mail-domain-dkim b/bin/v-add-mail-domain-dkim index 4a71870c..62e27616 100755 --- a/bin/v-add-mail-domain-dkim +++ b/bin/v-add-mail-domain-dkim @@ -65,7 +65,7 @@ if [ ! -z "$DNS_SYSTEM" ] && [ -e "$USER_DATA/dns/$domain.conf" ]; then p=$(cat $USER_DATA/mail/$domain.pub |grep -v ' KEY---' |tr -d '\n') record="_domainkey.$domain_idn" policy="\"t=y; o=~;\"" - $BIN/v-add-dns-record $user $domain $record TXT "$policy" + $BIN/v-add-dns-record $user $domain $record TXT "$policy" '' '' 'no' record="mail._domainkey.$domain_idn" selector="\"k=rsa\; p=$p\"" From 7815539e915ec8f779c7158891261bdfaff41ee7 Mon Sep 17 00:00:00 2001 From: dpeca Date: Wed, 28 Dec 2016 17:11:41 +0100 Subject: [PATCH 17/45] Fix for DKIM key permission after restoring backup --- bin/v-restore-user | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/bin/v-restore-user b/bin/v-restore-user index f2d4408c..fa93482e 100755 --- a/bin/v-restore-user +++ b/bin/v-restore-user @@ -517,6 +517,13 @@ if [ "$mail" != 'no' ] && [ ! -z "$MAIL_SYSTEM" ]; then domains=$(echo "$backup_domains" |egrep -f $tmpdir/selected.txt) fi + # Checking exim username for later chowning + exim_user="exim"; + check_exim_username=$(grep -c '^Debian-exim:' /etc/passwd) + if [ "$check_exim_username" -eq 1 ]; then + exim_user="Debian-exim" + fi + # Restoring dns domain for domain in $domains; do echo -e "$(date "+%F %T") $domain" |tee -a $tmpdir/restore.log @@ -579,6 +586,11 @@ if [ "$mail" != 'no' ] && [ ! -z "$MAIL_SYSTEM" ]; then -exec chown -h $user:mail {} \; fi fi + + # Chowning mail conf files to exim user + find $HOMEDIR/$user/conf/mail/$domain_idn -user root \ + -exec chown $exim_user {} \; + done fi From 66ec02221e0c5dea49f77dbbddee09ef9a49a950 Mon Sep 17 00:00:00 2001 From: Alexandr Loskutov Date: Wed, 28 Dec 2016 21:31:52 +0200 Subject: [PATCH 18/45] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BF=D0=B5=D1=80=D0=B5=D0=B2=D0=BE?= =?UTF-8?q?=D0=B4=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Обновил украинский и русский переводы до последней версии --- web/inc/i18n/ru.php | 172 ++++++++++++++++++++++---------------------- web/inc/i18n/ua.php | 46 ++++++------ 2 files changed, 110 insertions(+), 108 deletions(-) diff --git a/web/inc/i18n/ru.php b/web/inc/i18n/ru.php index eb984d04..46f1eafb 100644 --- a/web/inc/i18n/ru.php +++ b/web/inc/i18n/ru.php @@ -3,6 +3,7 @@ * Vesta language file * ZonD80 (zond80@gmail.com) * skid (skid@vestacp.com) + * Alexandr Loskutov (alex_connor@icloud.com) */ $LANG['ru'] = array( @@ -13,7 +14,7 @@ $LANG['ru'] = array( 'Log' => 'Журнал', 'Server' => 'Сервер', 'Services' => 'Службы', - 'Firewall' => 'Фаервол', + 'Firewall' => 'Файрвол', 'Updates' => 'Обновления', 'Log in' => 'Войти', 'Log out' => 'Выйти', @@ -26,22 +27,22 @@ $LANG['ru'] = array( 'CRON' => 'CRON', 'BACKUP' => 'BACKUP', - 'LOGIN' => 'LOGIN', - 'RESET PASSWORD' => 'RESET PASSWORD', - 'SEARCH' => 'SEARCH', - 'PACKAGE' => 'PACKAGE', + 'LOGIN' => 'ВОЙТИ', + 'RESET PASSWORD' => 'СБРОСИТЬ ПАРОЛЬ', + 'SEARCH' => 'ПОИСК', + 'PACKAGE' => 'ПАКЕТ', 'RRD' => 'RRD', - 'STATS' => 'STATS', - 'LOG' => 'LOG', - 'UPDATES' => 'UPDATES', - 'FIREWALL' => 'FIREWALL', - 'SERVER' => 'SERVER', - 'MEMORY' => 'MEMORY', - 'DISK' => 'DISK', - 'NETWORK' => 'NETWORK', - 'Web Log Manager' => 'Web Log Manager', + 'STATS' => 'СТАТИСТИКА', + 'LOG' => 'ЖУРНАЛ', + 'UPDATES' => 'ОБНОВЛЕНИЯ', + 'FIREWALL' => 'ФАЙРВОЛ', + 'SERVER' => 'СЕРВЕР', + 'MEMORY' => 'ПАМЯТЬ', + 'DISK' => 'ДИСК', + 'NETWORK' => 'СЕТЬ', + 'Web Log Manager' => 'Менеджер Web журнала', - 'no notifications' => 'no notifications', + 'no notifications' => 'без оповещений', 'Add User' => 'Добавить аккаунт', 'Add Domain' => 'Добавить домен', @@ -62,10 +63,10 @@ $LANG['ru'] = array( 'Search' => 'Поиск', 'Add one more FTP Account' => 'Добавить еще один FTP аккаунт', 'Overall Statistics' => 'Сводная статистика', - 'Daily' => 'ежедневно', - 'Weekly' => 'еженедельно', - 'Monthly' => 'ежемесячно', - 'Yearly' => 'Ежегодные', + 'Daily' => 'Ежедневно', + 'Weekly' => 'Еженедельно', + 'Monthly' => 'Ежемесячно', + 'Yearly' => 'Ежегодно', 'Add' => 'Добавить', 'Back' => 'Назад', 'Save' => 'Сохранить', @@ -151,10 +152,10 @@ $LANG['ru'] = array( 'yes' => 'да', 'no' => 'нет', 'none' => 'нет', - 'pb' => 'пб', - 'tb' => 'тб', - 'gb' => 'гб', - 'mb' => 'мб', + 'pb' => 'Пб', + 'tb' => 'Тб', + 'gb' => 'Гб', + 'mb' => 'Мб', 'minute' => 'мин.', 'hour' => 'час', 'day' => 'дн.', @@ -201,7 +202,7 @@ $LANG['ru'] = array( 'Proxy Extensions' => 'Обработка Proxy', 'Web Statistics' => 'Статистика сайта', 'Additional FTP Account' => 'Дополнительный ftp', - 'Path' => 'Path', + 'Path' => 'Путь', 'SOA' => 'SOA', 'TTL' => 'TTL', 'Expire' => 'Истекает', @@ -247,16 +248,16 @@ $LANG['ru'] = array( 'Users' => 'Пользователи', 'Load Average' => 'Общая нагрузка', 'Memory Usage' => 'Использование памяти', - 'APACHE2 Usage' => 'APACHE2 Usage', - 'HTTPD Usage' => 'Веб сервер', - 'NGINX Usage' => 'Proxy', - 'MySQL Usage on localhost' => 'Сервер базы данных MySQL', - 'PostgreSQL Usage on localhost' => 'Сервер базы данных PostgreSQL', + 'APACHE2 Usage' => 'Использование APACHE2', + 'HTTPD Usage' => 'Использование HTTPd', + 'NGINX Usage' => 'Использование NGINX', + 'MySQL Usage on localhost' => 'Использование локальной MySQL', + 'PostgreSQL Usage on localhost' => 'Использование локальной PostgreSQL', 'Bandwidth Usage eth0' => 'Использование cети: eth0', 'Bandwidth Usage eth1' => 'Использование cети: eth1', - 'Exim Usage' => 'Exim Usage', - 'FTP Usage' => 'FTP сервер', - 'SSH Usage' => 'SSH сервер', + 'Exim Usage' => 'Использование Exim', + 'FTP Usage' => 'Использование FTP', + 'SSH Usage' => 'Использование SSH', 'reverse proxy' => 'обратный прокси', 'web server' => 'веб сервер', 'dns server' => 'сервер имен', @@ -267,8 +268,8 @@ $LANG['ru'] = array( 'database server' => 'сервер баз данных', 'ftp server' => 'ftp сервер', 'job scheduler' => 'планировщик заданий', - 'firewall' => 'firewall', - 'brute-force monitor' => 'brute-force monitor', + 'firewall' => 'файрвол', + 'brute-force monitor' => 'brute-force монитор', 'CPU' => 'Процессор', 'Memory' => 'Память', 'Uptime' => 'Запущен', @@ -297,7 +298,7 @@ $LANG['ru'] = array( 'Aliases' => 'Алиасы', 'SSL Certificate' => 'SSL сертификат', 'SSL Key' => 'Ключ SSL сертификата', - 'SSL Certificate Authority / Intermediate' => 'Центр сертификации SSL / Intermediate', + 'SSL Certificate Authority / Intermediate' => 'Центр сертификации SSL / Промежуточный', 'SSL CSR' => 'SSL CSR запрос', 'optional' => 'опционально', 'internal' => 'внутренний', @@ -399,15 +400,15 @@ $LANG['ru'] = array( 'VESTA' => 'VESTA', 'Add one more Name Server' => 'Добавить ещё один Сервер Имён', - 'web domain' => 'web domain', - 'dns domain' => 'dns domain', - 'dns record' => 'dns record', - 'mail domain' => 'mail domain', - 'mail account' => 'mail account', - 'cron job' => 'cron job', + 'web domain' => 'web домен', + 'dns domain' => 'dns домен', + 'dns record' => 'dns запись', + 'mail domain' => 'mail домен', + 'mail account' => 'mail аккаунт', + 'cron job' => 'cron задание', 'cron' => 'cron', - 'user dir' => 'user dir', + 'user dir' => 'пользовательская папка', 'unlimited' => 'неограничено', '1 account' => ' пользователей на странице: 1', @@ -424,8 +425,8 @@ $LANG['ru'] = array( '%s cron jobs' => 'заданий на странице: %s', '1 archive' => 'архивов на странице: 1', '%s archives' => 'архивов на странице: %s', - '1 item' => '1 item', - '%s items' => '%s items', + '1 item' => '1 элемент', + '%s items' => '%s элементы', '1 package' => 'пакетов на странице: 1', '%s packages' => 'пакетов на странице: %s', '1 IP address' => 'IP адресов на странице: 1', @@ -555,29 +556,30 @@ $LANG['ru'] = array( 'Web Server' => 'Web Server', 'Backend Server' => 'Backend Server', 'Backend Pool Mode' => 'Backend Pool Mode', - 'DNS Server' => 'DNS Server', - 'DNS Cluster' => 'DNS Cluster', - 'MAIL Server' => 'MAIL Server', - 'Antivirus' => 'Antivirus', - 'AntiSpam' => 'AntiSpam', + 'DNS Server' => 'DNS Сервер', + 'DNS Cluster' => 'DNS Кластер', + 'MAIL Server' => 'MAIL Сервер', + 'Antivirus' => 'Антивирус', + 'AntiSpam' => 'АнтиСпам', 'Webmail URL' => 'Webmail URL', - 'MySQL Support' => 'MySQL Support', + 'MySQL Support' => 'Поддержка MySQL', 'phpMyAdmin URL' => 'phpMyAdmin URL', - 'PostgreSQL Support' => 'PostgreSQL Support', + 'PostgreSQL Support' => 'Поддержка PostgreSQL', 'phpPgAdmin URL' => 'phpPgAdmin URL', - 'Maximum Number Of Databases' => 'Maximum Number Of Databases', - 'Current Number Of Databases' => 'Current Number Of Databases', - 'Local backup' => 'Local backup', - 'Compression level' => 'Compression level', - 'Directory' => 'Directory', - 'Remote backup' => 'Remote backup', + 'Maximum Number Of Databases' => 'Максимальное количество БД', + 'Current Number Of Databases' => 'Текущее количество БД', + 'Local backup' => 'Локальный архив', + 'Compression level' => 'Уровень сжатия', + 'Directory' => 'Каталог', + 'Remote backup' => 'Удаленное архив', 'ftp' => 'FTP', 'sftp' => 'SFTP', 'SFTP Chroot' => 'SFTP Chroot', - 'FileSystem Disk Quota' => 'FileSystem Disk Quota', - 'Vesta Control Panel Plugins' => 'Vesta Control Panel Плагины', - 'preview' => 'превью', - 'Reseller Role' => 'Ресселер', + 'FileSystem Disk Quota' => 'Дисковая квота файловой системы', + 'Vesta Control Panel Plugins' => 'Плагины Vesta Control Panel', + 'preview' => 'предпросмотр', + 'Reseller Role' => 'Реселлер', + 'Reseller Role' => 'Реселлер', 'Web Config Editor' => 'Веб Редактор Конфигов', 'Template Manager' => 'Менеджер Шаблонов', 'Backup Migration Manager' => 'Менеджер Миграции Бэкапов', @@ -595,7 +597,7 @@ $LANG['ru'] = array( 'size' => 'размер', 'date' => 'дата', 'name' => 'имя', - 'Initializing' => 'В процессе', + 'Initializing' => 'Инициализация', 'UPLOAD' => 'ЗАГРУЗИТЬ', 'NEW FILE' => 'ФАЙЛ', 'NEW DIR' => 'ПАПКА', @@ -607,7 +609,7 @@ $LANG['ru'] = array( 'ARCHIVE' => 'АРХИВ', 'EXTRACT' => 'РАСПАКОВАТЬ', 'DOWNLOAD' => 'СКАЧАТЬ', - 'Are you sure?' => 'Are you sure?', + 'Are you sure?' => 'Вы уверенны?', 'Hit' => 'Нажмите', 'to reload the page' => 'чтобы перегрузить страницу', 'Directory name cannot be empty' => 'Название директории не может быть пустым', @@ -629,10 +631,10 @@ $LANG['ru'] = array( 'Create' => 'Создать', 'Compress' => 'Запаковать', 'OK' => 'OK', - 'YOU ARE COPYING' => 'YOU ARE COPYING', - 'YOU ARE REMOVING' => 'YOU ARE REMOVING', - 'Delete items' => 'Delete items', - 'Copy files' => 'Copy files', + 'YOU ARE COPYING' => 'ВЫ КОПИРУЕТЕ', + 'YOU ARE REMOVING' => 'ВЫ УДАЛЯЕТЕ', + 'Delete items' => 'Удалить элементы', + 'Copy files' => 'Копировать файлы', 'Move files' => 'Переместить файлы', 'Are you sure you want to copy' => 'Вы уверены, что хотите скопировать', 'Are you sure you want to move' => 'Вы уверены, что хотите переместить', @@ -654,7 +656,7 @@ $LANG['ru'] = array( 'write by others' => 'запись для остальных', 'execute/search by others' => 'запуск/поиск для остальных', - 'Shortcuts' => 'Shortcuts', + 'Shortcuts' => 'Сокращения', 'Add New object' => 'Перейти к Форме Добавления', 'Save Form' => 'Сохрнанить Форму', 'Cancel saving form' => 'Отменить Сохранение', @@ -704,8 +706,8 @@ $LANG['ru'] = array( 'Disable and Cancel Licence' => 'Отключить и Закрыть Лицензию', 'Licence Activated' => 'Лицензия Активирована', 'Licence Deactivated' => 'Лицензия Отключена', - 'Restrict users so that they cannot use SSH and access only their home directory.' => 'Restrict users so that they cannot use SSH and access only their home directory.', - 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.', + 'Restrict users so that they cannot use SSH and access only their home directory.' => 'Ограничить пользователей, так что они не могут использовать SSH и имеют доступ только к домашней папке.', + 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Просмотр, копирование, редактирование, просмотр и использование всех файлов веб-доменов с помощью полнофункционального Файлового менеджера.', 'This is a commercial module, you would need to purchace license key to enable it.' => 'Это коммерческий модуль, чтобы включить его, вам необходимо приобрести лицензию.', 'Minutes' => 'по минутам', @@ -731,27 +733,27 @@ $LANG['ru'] = array( 'every minute' => 'каждую минуту', 'every two minutes' => 'каждые 2 минуты', 'every' => 'каждые', - 'Generate' => 'Generate', + 'Generate' => 'Генерировать', 'webalizer' => 'webalizer', 'awstats' => 'awstats', 'Vesta SSL' => 'Vesta SSL', - 'SUBJECT' => 'SUBJECT', - 'ALIASES' => 'ALIASES', - 'NOT_BEFORE' => 'NOT_BEFORE', - 'NOT_AFTER' => 'NOT_AFTER', - 'SIGNATURE' => 'SIGNATURE', - 'PUB_KEY' => 'PUB_KEY', - 'ISSUER' => 'ISSUER', + 'SUBJECT' => 'ОБЪЕКТ', + 'ALIASES' => 'АЛИАСЫ', + 'NOT_BEFORE' => 'НЕДОСТУПЕН ДО', + 'NOT_AFTER' => 'НЕДОСТУПЕН ПОСЛЕ', + 'SIGNATURE' => 'ПОДПИСЬ', + 'PUB_KEY' => 'ПУБЛИЧНЫЙ КЛЮЧ', + 'ISSUER' => 'ИЗДАТЕЛЬ', - 'Use server hostname' => 'Use server hostname', - 'Use domain hostname' => 'Use domain hostname', - 'Use STARTTLS' => 'Use STARTTLS', - 'Use SSL' => 'Use SSL', - 'No encryption' => 'No encryption', - 'Do not use encryption' => 'Do not use encryption', + 'Use server hostname' => 'Использовать серверное имя хоста', + 'Use domain hostname' => 'Использовать доменное имя хоста', + 'Use STARTTLS' => 'Использовать STARTTLS', + 'Use SSL' => 'Использовать SSL', + 'No encryption' => 'Без шифрования', + 'Do not use encryption' => 'Не использовать шифрование', - 'maximum characters length, including prefix' => 'maximum %s characters length, including prefix', + 'maximum characters length, including prefix' => 'максимальное %s количество символов, включая префикс', ); diff --git a/web/inc/i18n/ua.php b/web/inc/i18n/ua.php index 16fa107e..698f37be 100644 --- a/web/inc/i18n/ua.php +++ b/web/inc/i18n/ua.php @@ -13,7 +13,7 @@ $LANG['ua'] = array( 'Log' => 'Журнал', 'Server' => 'Сервер', 'Services' => 'Служби', - 'Firewall' => 'Брандмауер', + 'Firewall' => 'Файрвол', 'Updates' => 'Оновлення', 'Log in' => 'Увійти', 'Log out' => 'Вийти', @@ -41,7 +41,7 @@ $LANG['ua'] = array( 'NETWORK' => 'МЕРЕЖА', 'Web Log Manager' => 'Менеджер Web журналу', - 'no notifications' => 'no notifications', + 'no notifications' => 'без сповіщень', 'Add User' => 'Додати користувача', 'Add Domain' => 'Додати домен', @@ -194,14 +194,14 @@ $LANG['ua'] = array( 'template' => 'шаблон', 'SSL Support' => 'Підтримка SSL', 'SSL Home Directory' => 'Домашня тека SSL', - 'Lets Encrypt Support' => 'Lets Encrypt Support', + 'Lets Encrypt Support' => 'Підтримка Lets Encrypt', 'Lets Encrypt' => 'Lets Encrypt', - 'Your certificate will be automatically issued in 5 minutes' => 'Your certificate will be automatically issued in 5 minutes', + 'Your certificate will be automatically issued in 5 minutes' => 'Ваш сертифікат буде автоматично виданий протягом 5-ти хвилин', 'Proxy Support' => 'Підтримка Proxy', 'Proxy Extensions' => 'Розширення Proxy', 'Web Statistics' => 'Веб статистика', 'Additional FTP Account' => 'Додатковий FTP акаунт', - 'Path' => 'Path', + 'Path' => 'Шлях', 'SOA' => 'SOA', 'TTL' => 'TTL', 'Expire' => 'Спливає', @@ -215,7 +215,7 @@ $LANG['ua'] = array( 'Quota' => 'Квота', 'Autoreply' => 'Автовідповідач', 'Forward to' => 'Перенаправлення', - 'Do not store forwarded mail' => 'Не зберігати перенаправлені письма', + 'Do not store forwarded mail' => 'Не зберігати перенаправлені листи', 'IMAP hostname' => "Ім'я IMAP хоста", 'IMAP port' => 'Порт IMAP', 'IMAP security' => 'Безпека IMAP', @@ -424,8 +424,8 @@ $LANG['ua'] = array( '%s cron jobs' => '%s завдань', '1 archive' => '1 архів', '%s archives' => '%s архівів', - '1 item' => '1 item', - '%s items' => '%s items', + '1 item' => '1 елемент', + '%s items' => '%s елементи', '1 package' => '1 пакет', '%s packages' => '%s пакет', '1 IP address' => '1 IP адреса', @@ -589,7 +589,7 @@ $LANG['ua'] = array( 'Starred' => 'Вибране', 'Name' => "Ім'я", - 'save to favorites' => 'save to favorites', + 'save to favorites' => 'зберегти до улюблених', 'File Manager' => 'Файловий менеджер', 'size' => 'розмір', @@ -737,21 +737,21 @@ $LANG['ua'] = array( 'awstats' => 'awstats', 'Vesta SSL' => 'Vesta SSL', - 'SUBJECT' => 'SUBJECT', - 'ALIASES' => 'ALIASES', - 'NOT_BEFORE' => 'NOT_BEFORE', - 'NOT_AFTER' => 'NOT_AFTER', - 'SIGNATURE' => 'SIGNATURE', - 'PUB_KEY' => 'PUB_KEY', - 'ISSUER' => 'ISSUER', + 'SUBJECT' => "ОБ'ЄКТ", + 'ALIASES' => 'АЛІАСИ', + 'NOT_BEFORE' => 'НЕДОСТУПНИЙ ДО', + 'NOT_AFTER' => 'НЕДОСТУПНИЙ ПІСЛЯ', + 'SIGNATURE' => 'ПІДПИС', + 'PUB_KEY' => 'ПУБЛІЧНИЙ КЛЮЧ', + 'ISSUER' => 'ВИДАВЕЦЬ', - 'Use server hostname' => 'Use server hostname', - 'Use domain hostname' => 'Use domain hostname', - 'Use STARTTLS' => 'Use STARTTLS', - 'Use SSL' => 'Use SSL', - 'No encryption' => 'No encryption', - 'Do not use encryption' => 'Do not use encryption', + 'Use server hostname' => "Використовувати серверне ім'я хоста", + 'Use domain hostname' => "Використовувати доменне ім'я хоста", + 'Use STARTTLS' => 'Використовувати STARTTLS', + 'Use SSL' => 'Використовувати SSL', + 'No encryption' => 'Без шифрування', + 'Do not use encryption' => 'Не використовувати шифрування', - 'maximum characters length, including prefix' => 'maximum %s characters length, including prefix', + 'maximum characters length, including prefix' => 'максимальна %s кількість символів, включаючи префікс', ); From e44db3d2b04f128eba60ec74d867f5ee5982d3fa Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Wed, 4 Jan 2017 15:25:16 +0200 Subject: [PATCH 19/45] added verify_peer_name => false --- install/rhel/7/roundcube/vesta.php | 1 + 1 file changed, 1 insertion(+) diff --git a/install/rhel/7/roundcube/vesta.php b/install/rhel/7/roundcube/vesta.php index 4a8783e6..1e9523a5 100644 --- a/install/rhel/7/roundcube/vesta.php +++ b/install/rhel/7/roundcube/vesta.php @@ -48,6 +48,7 @@ class rcube_vesta_password $context = stream_context_create(); $result = stream_context_set_option($context, 'ssl', 'verify_peer', false); + $result = stream_context_set_option($context, 'ssl', 'verify_peer_name', false); $result = stream_context_set_option($context, 'ssl', 'verify_host', false); $result = stream_context_set_option($context, 'ssl', 'allow_self_signed', true); From 3b04e343f20d7fdbd8eb9dc1fb32fc2e2b15b10b Mon Sep 17 00:00:00 2001 From: Ekrem KAYA Date: Fri, 6 Jan 2017 09:09:10 +0200 Subject: [PATCH 20/45] No DNS record found DKIM check on https://www.mail-tester.com/spf-dkim-check Domain name: example.com DKIM Selector: mail._domainkey.example.com Results No DNS record found for mail._domainkey.example.com --- bin/v-add-mail-domain-dkim | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/bin/v-add-mail-domain-dkim b/bin/v-add-mail-domain-dkim index 62e27616..3b860b87 100755 --- a/bin/v-add-mail-domain-dkim +++ b/bin/v-add-mail-domain-dkim @@ -13,7 +13,6 @@ user=$1 domain=$(idn -t --quiet -u "$2" ) domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") dkim_size=${3-1024} # Includes @@ -63,12 +62,12 @@ fi # Adding dns records if [ ! -z "$DNS_SYSTEM" ] && [ -e "$USER_DATA/dns/$domain.conf" ]; then p=$(cat $USER_DATA/mail/$domain.pub |grep -v ' KEY---' |tr -d '\n') - record="_domainkey.$domain_idn" + record="_domainkey" policy="\"t=y; o=~;\"" $BIN/v-add-dns-record $user $domain $record TXT "$policy" '' '' 'no' - record="mail._domainkey.$domain_idn" - selector="\"k=rsa\; p=$p\"" + record="mail._domainkey" + selector="\"v=DKIM1\; k=rsa\; p=$p\"" $BIN/v-add-dns-record $user $domain $record TXT "$selector" fi From e82b96eb7cf22a177560ff85d7374503ab08f4a3 Mon Sep 17 00:00:00 2001 From: Ekrem KAYA Date: Fri, 6 Jan 2017 09:12:55 +0200 Subject: [PATCH 21/45] Added v=DKIM1; prefix --- bin/v-add-mail-domain | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/v-add-mail-domain b/bin/v-add-mail-domain index 788445cd..6828f2f1 100755 --- a/bin/v-add-mail-domain +++ b/bin/v-add-mail-domain @@ -126,7 +126,7 @@ if [ ! -z "$DNS_SYSTEM" ] && [ "$dkim" = 'yes' ]; then $BIN/v-add-dns-record $user $domain $record TXT "$policy" '' '' 'no' record='mail._domainkey' - selector="\"k=rsa\; p=$p\"" + selector="\"v=DKIM1\; k=rsa\; p=$p\"" $BIN/v-add-dns-record $user $domain $record TXT "$selector" fi fi From 419a9b0b1aa7d0ef5fc07106a5564648d6f51619 Mon Sep 17 00:00:00 2001 From: dpeca Date: Tue, 10 Jan 2017 12:43:28 +0100 Subject: [PATCH 22/45] Fix for DKIM key permission in v-change-domain-owner Fix is the same as for v-restore-backup - https://github.com/serghey-rodin/vesta/commit/7815539e915ec8f779c7158891261bdfaff41ee7 --- bin/v-change-domain-owner | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/bin/v-change-domain-owner b/bin/v-change-domain-owner index 7a0f265b..aba2eade 100755 --- a/bin/v-change-domain-owner +++ b/bin/v-change-domain-owner @@ -144,6 +144,16 @@ if [ ! -z "$mail_data" ]; then find $HOMEDIR/$user/mail/$domain -user $owner \ -exec chown -h $user {} \; + # Checking exim username for later chowning + exim_user="exim"; + check_exim_username=$(grep -c '^Debian-exim:' /etc/passwd) + if [ "$check_exim_username" -eq 1 ]; then + exim_user="Debian-exim" + fi + # Chowning mail conf files to exim user + find $HOMEDIR/$user/conf/mail/$domain_idn -user root \ + -exec chown $exim_user {} \; + # Rebuild config $BIN/v-unsuspend-mail-domain $user $domain no >> /dev/null 2>&1 $BIN/v-rebuild-mail-domains $owner no From b98abaf57222bf213874118e8758ddb1094e38c0 Mon Sep 17 00:00:00 2001 From: dpeca Date: Tue, 10 Jan 2017 13:15:32 +0100 Subject: [PATCH 23/45] Fix for wrong variable from previous commit --- bin/v-change-domain-owner | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/v-change-domain-owner b/bin/v-change-domain-owner index aba2eade..7f73e59e 100755 --- a/bin/v-change-domain-owner +++ b/bin/v-change-domain-owner @@ -151,7 +151,7 @@ if [ ! -z "$mail_data" ]; then exim_user="Debian-exim" fi # Chowning mail conf files to exim user - find $HOMEDIR/$user/conf/mail/$domain_idn -user root \ + find $HOMEDIR/$user/conf/mail/$domain -user root \ -exec chown $exim_user {} \; # Rebuild config From e5950d516d52fe4776c6527676d0823780a7f8d7 Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Wed, 11 Jan 2017 16:52:11 +0200 Subject: [PATCH 24/45] Code refactoring: domain_idn + new restart routine --- bin/v-add-dns-domain | 39 ++++++++++++---------------- bin/v-add-dns-record | 15 +++++------ bin/v-add-domain | 18 ++++++------- bin/v-add-mail-account | 11 +++++--- bin/v-add-mail-account-alias | 8 +++--- bin/v-add-mail-account-autoreply | 8 +++--- bin/v-add-mail-account-forward | 8 +++--- bin/v-add-mail-account-fwd-only | 8 +++--- bin/v-add-mail-domain | 14 ++++------ bin/v-add-mail-domain-antispam | 8 +++--- bin/v-add-mail-domain-antivirus | 8 +++--- bin/v-add-mail-domain-catchall | 8 +++--- bin/v-add-mail-domain-dkim | 8 +++--- bin/v-add-web-domain | 32 ++++++----------------- bin/v-add-web-domain-alias | 36 ++++++++++++------------- bin/v-add-web-domain-backend | 6 ++--- bin/v-add-web-domain-ftp | 7 +++-- bin/v-add-web-domain-proxy | 6 ++--- bin/v-add-web-domain-ssl | 19 +++++++------- bin/v-add-web-domain-stats | 7 +++-- bin/v-backup-user | 4 +-- bin/v-change-dns-domain-exp | 7 +++-- bin/v-change-dns-domain-ip | 13 +++++----- bin/v-change-dns-domain-soa | 13 +++++----- bin/v-change-dns-domain-tpl | 17 +++++------- bin/v-change-dns-domain-ttl | 13 +++++----- bin/v-change-dns-record | 17 +++++------- bin/v-change-dns-record-id | 14 +++++----- bin/v-change-mail-account-password | 8 +++--- bin/v-change-mail-account-quota | 8 +++--- bin/v-change-mail-domain-catchall | 11 ++++---- bin/v-change-sys-ip-nat | 6 ++--- bin/v-change-web-domain-backend-tpl | 20 +++++++------- bin/v-change-web-domain-ftp-password | 7 +++-- bin/v-change-web-domain-ftp-path | 7 +++-- bin/v-change-web-domain-ip | 22 ++++++---------- bin/v-change-web-domain-name | 9 +++---- bin/v-change-web-domain-proxy-tpl | 14 +++++----- bin/v-change-web-domain-sslcert | 19 +++++++------- bin/v-change-web-domain-sslhome | 19 +++++++------- bin/v-change-web-domain-stats | 7 +++-- bin/v-change-web-domain-tpl | 13 +++++----- bin/v-delete-dns-domain | 6 ++--- bin/v-delete-dns-domains | 6 ++--- bin/v-delete-dns-domains-src | 6 ++--- bin/v-delete-dns-on-web-alias | 13 ++++++---- bin/v-delete-dns-record | 13 +++++----- bin/v-delete-domain | 18 ++++++------- bin/v-delete-mail-account | 8 +++--- bin/v-delete-mail-account-alias | 8 +++--- bin/v-delete-mail-account-autoreply | 8 +++--- bin/v-delete-mail-account-forward | 12 ++++----- bin/v-delete-mail-account-fwd-only | 8 +++--- bin/v-delete-mail-domain | 7 +++-- bin/v-delete-mail-domain-antispam | 8 +++--- bin/v-delete-mail-domain-antivirus | 8 +++--- bin/v-delete-mail-domain-catchall | 8 +++--- bin/v-delete-web-domain | 22 +++++++--------- bin/v-delete-web-domain-alias | 12 +++------ bin/v-delete-web-domain-backend | 13 +++++----- bin/v-delete-web-domain-ftp | 7 +++-- bin/v-delete-web-domain-proxy | 13 +++++----- bin/v-delete-web-domain-ssl | 19 +++++++------- bin/v-delete-web-domain-stats | 7 +++-- bin/v-delete-web-domains | 12 +++------ bin/v-get-dns-domain-value | 7 +++-- bin/v-get-mail-account-value | 7 +++-- bin/v-get-mail-domain-value | 7 +++-- bin/v-insert-dns-domain | 6 ++--- bin/v-insert-dns-record | 6 ++--- bin/v-insert-dns-records | 6 ++--- bin/v-rebuild-cron-jobs | 6 ++--- bin/v-rebuild-dns-domain | 6 ++--- bin/v-rebuild-dns-domains | 6 ++--- bin/v-rebuild-web-domains | 12 +++------ bin/v-suspend-cron-job | 6 ++--- bin/v-suspend-cron-jobs | 6 ++--- bin/v-suspend-dns-domain | 7 +++-- bin/v-suspend-dns-record | 13 +++++----- bin/v-suspend-domain | 18 ++++++------- bin/v-suspend-mail-account | 8 +++--- bin/v-suspend-mail-accounts | 7 ++--- bin/v-suspend-mail-domain | 8 +++--- bin/v-suspend-user | 14 +++++----- bin/v-suspend-web-domain | 19 +++++++------- bin/v-suspend-web-domains | 12 +++------ bin/v-unsuspend-cron-job | 6 ++--- bin/v-unsuspend-cron-jobs | 6 ++--- bin/v-unsuspend-dns-domain | 8 +++--- bin/v-unsuspend-dns-record | 11 ++++---- bin/v-unsuspend-domain | 18 ++++++------- bin/v-unsuspend-mail-account | 8 +++--- bin/v-unsuspend-mail-accounts | 8 +++--- bin/v-unsuspend-mail-domain | 8 +++--- bin/v-unsuspend-user | 14 +++++----- bin/v-unsuspend-web-domain | 21 +++++++-------- bin/v-unsuspend-web-domains | 12 +++------ bin/v-update-mail-domain-disk | 8 +++--- bin/v-update-web-domain-disk | 7 +++-- bin/v-update-web-domain-ssl | 21 +++++++-------- bin/v-update-web-domain-stat | 7 +++-- bin/v-update-web-domain-traff | 7 +++-- bin/v-update-web-templates | 18 +++++-------- func/main.sh | 34 ++++++++++++++++++++++++ 104 files changed, 605 insertions(+), 588 deletions(-) diff --git a/bin/v-add-dns-domain b/bin/v-add-dns-domain index 09d5b571..f43891a6 100755 --- a/bin/v-add-dns-domain +++ b/bin/v-add-dns-domain @@ -15,15 +15,8 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | sed -e 's/\.*$//g' -e 's/^\.*//g') -if [[ "$domain" =~ [[:upper:]] ]]; then - domain=$(echo "$domain" |tr '[:upper:]' '[:lower:]') -fi -domain_idn="$domain" -if [[ "$domain" = *[![:ascii:]]* ]]; then - domain_idn=$(idn -t --quiet -a $domain) -fi +domain=$2 +domain_idn=$2 ip=$3 ns1=$4 ns2=$5 @@ -40,6 +33,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -56,37 +53,35 @@ template=$(get_user_value '$DNS_TEMPLATE') is_dns_template_valid $template if [ ! -z "$ns1" ]; then - ns1=$(echo $4 | sed -e 's/\.*$//g' -e 's/^\.*//g') + ns1=$(echo $4 |sed -e 's/\.*$//g' -e 's/^\.*//g') is_format_valid 'ns1' fi if [ ! -z "$ns2" ]; then - ns2=$(echo $5 | sed -e 's/\.*$//g' -e 's/^\.*//g') + ns2=$(echo $5 |sed -e 's/\.*$//g' -e 's/^\.*//g') is_format_valid 'ns2' fi - if [ ! -z "$ns3" ]; then - ns3=$(echo $6 | sed -e 's/\.*$//g' -e 's/^\.*//g') + ns3=$(echo $6 |sed -e 's/\.*$//g' -e 's/^\.*//g') is_format_valid 'ns3' fi if [ ! -z "$ns4" ]; then - ns4=$(echo $7 | sed -e 's/\.*$//g' -e 's/^\.*//g') + ns4=$(echo $7 |sed -e 's/\.*$//g' -e 's/^\.*//g') is_format_valid 'ns4' fi if [ ! -z "$ns5" ]; then - ns5=$(echo $8 | sed -e 's/\.*$//g' -e 's/^\.*//g') + ns5=$(echo $8 |sed -e 's/\.*$//g' -e 's/^\.*//g') is_format_valid 'ns5' fi if [ ! -z "$ns6" ]; then - ns6=$(echo $9 | sed -e 's/\.*$//g' -e 's/^\.*//g') + ns6=$(echo $9 |sed -e 's/\.*$//g' -e 's/^\.*//g') is_format_valid 'ns6' fi if [ ! -z "$ns7" ]; then - ns7=$(echo ${10} | sed -e 's/\.*$//g' -e 's/^\.*//g') + ns7=$(echo ${10} |sed -e 's/\.*$//g' -e 's/^\.*//g') is_format_valid 'ns7' fi - if [ ! -z "$ns8" ]; then - ns8=$(echo ${11} | sed -e 's/\.*$//g' -e 's/^\.*//g') + ns8=$(echo ${11} |sed -e 's/\.*$//g' -e 's/^\.*//g') is_format_valid 'ns8' fi @@ -203,10 +198,8 @@ increase_user_value "$user" '$U_DNS_DOMAINS' increase_user_value "$user" '$U_DNS_RECORDS' "$records" # Restart named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? "DNS restart failed" -fi +$BIN/v-restart-dns $restart +check_result $? "DNS restart failed" # Logging log_history "added dns domain $domain" diff --git a/bin/v-add-dns-record b/bin/v-add-dns-record index b785973c..3b6e6e95 100755 --- a/bin/v-add-dns-record +++ b/bin/v-add-dns-record @@ -26,11 +26,6 @@ if [ -z "$priority" ]; then priority=10 fi -domain_idn="$domain" -if [[ "$domain" = *[![:ascii:]]* ]]; then - domain_idn=$(idn -t --quiet -a $domain) -fi - # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh @@ -55,6 +50,10 @@ if [[ "$dvalue" =~ [\;[:space:]] ]]; then dvalue='"'"$dvalue"'"' fi +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -121,10 +120,8 @@ update_object_value 'dns' 'DOMAIN' "$domain" '$RECORDS' "$records" increase_user_value "$user" '$U_DNS_RECORDS' # Restart named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? $E_RESTART 'dns failed to restart' -fi +$BIN/v-restart-dns $restart +check_result $? $E_RESTART 'dns failed to restart' # Logging log_history "added $rtype dns record $record for $domain" diff --git a/bin/v-add-domain b/bin/v-add-domain index 49b105be..e383481a 100755 --- a/bin/v-add-domain +++ b/bin/v-add-domain @@ -64,16 +64,14 @@ if [ ! -z "$MAIL_SYSTEM" ]; then fi # Restarting services -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "can't restart web" > /dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "can't restart proxy" > /dev/null - fi - $BIN/v-restart-dns - check_result $? "can't restart dns" > /dev/null -fi +$BIN/v-restart-web $restart +check_result $? "can't restart web" > /dev/null + +$BIN/v-restart-proxy $restart +check_result $? "can't restart proxy" > /dev/null + +$BIN/v-restart-dns $restart +check_result $? "can't restart dns" > /dev/null #----------------------------------------------------------# diff --git a/bin/v-add-mail-account b/bin/v-add-mail-account index 586871a4..44925680 100755 --- a/bin/v-add-mail-account +++ b/bin/v-add-mail-account @@ -11,10 +11,8 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") -account=$(echo $3 | tr '[:upper:]' '[:lower:]') +domain=$2 +account=$3 password=$4; HIDE=4 quota=${5-unlimited} @@ -23,6 +21,11 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +if [[ "$account" =~ [[:upper:]] ]]; then + account=$(echo "$account" |tr '[:upper:]' '[:lower:]') +fi + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-add-mail-account-alias b/bin/v-add-mail-account-alias index 004e6e4d..03ecaec9 100755 --- a/bin/v-add-mail-account-alias +++ b/bin/v-add-mail-account-alias @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 malias=$4 @@ -22,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-add-mail-account-autoreply b/bin/v-add-mail-account-autoreply index 88070f7c..f8c8f62b 100755 --- a/bin/v-add-mail-account-autoreply +++ b/bin/v-add-mail-account-autoreply @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 autoreply=$4 @@ -29,6 +27,10 @@ else MAIL_USER=exim fi +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-add-mail-account-forward b/bin/v-add-mail-account-forward index 1a990a31..6be94b22 100755 --- a/bin/v-add-mail-account-forward +++ b/bin/v-add-mail-account-forward @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 forward=$4 @@ -22,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-add-mail-account-fwd-only b/bin/v-add-mail-account-fwd-only index 277776ba..02704cfb 100755 --- a/bin/v-add-mail-account-fwd-only +++ b/bin/v-add-mail-account-fwd-only @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 # Includes @@ -28,6 +26,10 @@ else MAIL_USER=exim fi +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-add-mail-domain b/bin/v-add-mail-domain index 788445cd..f72cf750 100755 --- a/bin/v-add-mail-domain +++ b/bin/v-add-mail-domain @@ -11,15 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | sed -e 's/\.*$//g' -e 's/^\.*//g') -if [[ "$domain" =~ [[:upper:]] ]]; then - domain=$(echo "$domain" |tr '[:upper:]' '[:lower:]') -fi -domain_idn="$domain" -if [[ "$domain" = *[![:ascii:]]* ]]; then - domain_idn=$(idn -t --quiet -a $domain) -fi +domain=$2 antispam=${3-yes} antivirus=${4-yes} dkim=${5-yes} @@ -37,6 +29,10 @@ else MAIL_USER=exim fi +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-add-mail-domain-antispam b/bin/v-add-mail-domain-antispam index 916f1540..4ca81f94 100755 --- a/bin/v-add-mail-domain-antispam +++ b/bin/v-add-mail-domain-antispam @@ -11,15 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-add-mail-domain-antivirus b/bin/v-add-mail-domain-antivirus index d18857cb..c0acd82d 100755 --- a/bin/v-add-mail-domain-antivirus +++ b/bin/v-add-mail-domain-antivirus @@ -11,15 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-add-mail-domain-catchall b/bin/v-add-mail-domain-catchall index 91dc0354..f827449f 100755 --- a/bin/v-add-mail-domain-catchall +++ b/bin/v-add-mail-domain-catchall @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 email="$3" # Includes @@ -21,6 +19,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-add-mail-domain-dkim b/bin/v-add-mail-domain-dkim index 62e27616..01ebbc8a 100755 --- a/bin/v-add-mail-domain-dkim +++ b/bin/v-add-mail-domain-dkim @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 dkim_size=${3-1024} # Includes @@ -28,6 +26,10 @@ else MAIL_USER=exim fi +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-add-web-domain b/bin/v-add-web-domain index 6313674f..62619a42 100755 --- a/bin/v-add-web-domain +++ b/bin/v-add-web-domain @@ -18,37 +18,23 @@ # Argument definition user=$1 domain=$2 +domain_idn=$2 ip=$3 restart=$4 # will be moved to the end soon aliases=$5 proxy_ext=$6 -# Additional argument formatting -if [[ "$domain" =~ [[:upper:]] ]]; then - domain=$(echo "$domain" |tr '[:upper:]' '[:lower:]') -fi -if [[ "$domain" =~ ^www\..* ]]; then - domain=$(echo "$domain" |sed -e "s/^www.//") -fi -if [[ "$domain" =~ .*\.$ ]]; then - domain=$(echo "$domain" |sed -e "s/\.$//") -fi -domain_idn="$domain" -if [[ "$domain" = *[![:ascii:]]* ]]; then - domain_idn=$(idn -t --quiet -a $domain) -fi -if [ ! -z "$aliases" ] && [ "$aliases" != 'none' ]; then - aliases=$(echo $aliases |tr '[:upper:]' '[:lower:]' |tr ',' '\n') - aliases=$(echo "$aliases" |sed -e "s/\.$//" |sort -u |grep -v www.$domain) - aliases=$(echo "$aliases" |sed -e "/^$/d" |tr '\n' ',' |sed -e "s/,$//") -fi - # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/func/ip.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn +format_aliases + #----------------------------------------------------------# # Verifications # @@ -178,10 +164,8 @@ $BIN/v-restart-web $restart check_result $? "Web restart failed" >/dev/null # Restarting proxy server -if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy $restart - check_result $? "Proxy restart failed" >/dev/null -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_history "added web domain $domain" diff --git a/bin/v-add-web-domain-alias b/bin/v-add-web-domain-alias index 59e077ca..932e1ffa 100755 --- a/bin/v-add-web-domain-alias +++ b/bin/v-add-web-domain-alias @@ -12,13 +12,8 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") -dom_alias=$(idn -t --quiet -u "$3" ) -dom_alias=$(echo $dom_alias | sed -e 's/\.*$//g' -e 's/^\.*//g') -dom_alias=$(echo $dom_alias | tr '[:upper:]' '[:lower:]') -dom_alias_idn=$(idn -t --quiet -a "$dom_alias" ) +domain=$2 +aliases=$3 restart="$4" # Includes @@ -27,6 +22,11 @@ source $VESTA/func/domain.sh source $VESTA/func/ip.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn +format_aliases + #----------------------------------------------------------# # Verifications # @@ -39,7 +39,7 @@ is_object_valid 'user' 'USER' "$user" is_object_unsuspended 'user' 'USER' "$user" is_object_valid 'web' 'DOMAIN' "$domain" is_object_unsuspended 'web' 'DOMAIN' "$domain" -is_domain_new 'web' "$dom_alias" +is_domain_new 'web' "$aliases" is_package_full 'WEB_ALIASES' @@ -53,9 +53,9 @@ get_domain_values 'web' # Preparing domain values for the template substitution local_ip=$(get_real_ip $IP) if [ -z "$ALIAS" ]; then - ALIAS="$dom_alias" + ALIAS="$aliases" else - ALIAS="$ALIAS,$dom_alias" + ALIAS="$ALIAS,$aliases" fi prepare_web_domain_values @@ -87,17 +87,15 @@ update_object_value 'web' 'DOMAIN' "$domain" '$ALIAS' "$ALIAS" increase_user_value "$user" '$U_WEB_ALIASES' # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +# Restarting proxy server +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null -log_history "added $dom_alias as alias for $domain" + +log_history "added $aliases for $domain" log_event "$OK" "$ARGUMENTS" exit diff --git a/bin/v-add-web-domain-backend b/bin/v-add-web-domain-backend index 301b10d6..1c415bb3 100755 --- a/bin/v-add-web-domain-backend +++ b/bin/v-add-web-domain-backend @@ -67,10 +67,8 @@ cat $WEBTPL/$WEB_BACKEND/$template.tpl |\ #----------------------------------------------------------# # Restart backend server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web-backend - check_result $? "Web backend restart failed" >/dev/null -fi +$BIN/v-restart-web-backend $restart +check_result $? "Web backend restart failed" >/dev/null # Logging log_history "added $WEB_BACKEND backend configuration for $domain" diff --git a/bin/v-add-web-domain-ftp b/bin/v-add-web-domain-ftp index 67afc644..1c118706 100755 --- a/bin/v-add-web-domain-ftp +++ b/bin/v-add-web-domain-ftp @@ -11,8 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 ftp_user=${1}_${3} password=$4; HIDE=4 ftp_path=$5 @@ -22,6 +21,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-add-web-domain-proxy b/bin/v-add-web-domain-proxy index ff6a12fa..9bd42746 100755 --- a/bin/v-add-web-domain-proxy +++ b/bin/v-add-web-domain-proxy @@ -72,10 +72,8 @@ update_object_value 'web' 'DOMAIN' "$domain" '$PROXY' "$template" update_object_value 'web' 'DOMAIN' "$domain" '$PROXY_EXT' "$extentions" # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null log_history "enabled proxy support for $domain" log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-add-web-domain-ssl b/bin/v-add-web-domain-ssl index fa8de5c6..e4d249b6 100755 --- a/bin/v-add-web-domain-ssl +++ b/bin/v-add-web-domain-ssl @@ -16,8 +16,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 ssl_dir=$3 ssl_home=${4-same} restart="$5" @@ -28,6 +27,10 @@ source $VESTA/func/domain.sh source $VESTA/func/ip.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -97,15 +100,11 @@ update_object_value 'web' 'DOMAIN' "$domain" '$SSL_HOME' "$SSL_HOME" update_object_value 'web' 'DOMAIN' "$domain" '$SSL' "yes" # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_history "enabled ssl support for $domain" diff --git a/bin/v-add-web-domain-stats b/bin/v-add-web-domain-stats index deec1646..60caf0c1 100755 --- a/bin/v-add-web-domain-stats +++ b/bin/v-add-web-domain-stats @@ -15,8 +15,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 type=$3 # Includes @@ -24,6 +23,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-backup-user b/bin/v-backup-user index 98995e9f..786941a9 100755 --- a/bin/v-backup-user +++ b/bin/v-backup-user @@ -137,7 +137,7 @@ if [ ! -z "$WEB_SYSTEM" ] && [ "$WEB" != '*' ]; then mkdir -p $tmpdir/web/$domain/vesta # Get domain variables - domain_idn=$(idn -t --quiet -a "$domain") + format_domain_idn get_domain_values 'web' # Backup web.conf @@ -286,7 +286,7 @@ if [ ! -z "$MAIL_SYSTEM" ] && [ "$MAIL" != '*' ]; then echo -e "$(date "+%F %T") $domain" |tee -a $BACKUP/$user.log mkdir -p $tmpdir/mail/$domain/conf mkdir -p $tmpdir/mail/$domain/vesta - domain_idn=$(idn -t --quiet -a "$domain") + format_domain_idn # Backup exim config if [[ "$MAIL_SYSTEM" =~ exim ]]; then diff --git a/bin/v-change-dns-domain-exp b/bin/v-change-dns-domain-exp index ec11acc9..e5b0c6a9 100755 --- a/bin/v-change-dns-domain-exp +++ b/bin/v-change-dns-domain-exp @@ -12,14 +12,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 exp=$3 # Includes source $VESTA/func/main.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-change-dns-domain-ip b/bin/v-change-dns-domain-ip index 47e01f42..fca3ecb7 100755 --- a/bin/v-change-dns-domain-ip +++ b/bin/v-change-dns-domain-ip @@ -11,8 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 ip=$3 restart=$4 @@ -21,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -71,10 +74,8 @@ fi #----------------------------------------------------------# # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? "DNS restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "DNS restart failed" >/dev/null # Logging log_history "changed dns ip for $domain to $ip" diff --git a/bin/v-change-dns-domain-soa b/bin/v-change-dns-domain-soa index 553bcfc9..e235a639 100755 --- a/bin/v-change-dns-domain-soa +++ b/bin/v-change-dns-domain-soa @@ -12,8 +12,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 soa=$(echo $3 | sed -e 's/\.*$//g' -e 's/^\.*//g') restart=$4 @@ -22,6 +21,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -65,10 +68,8 @@ fi #----------------------------------------------------------# # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? "DNS restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "DNS restart failed" >/dev/null # Logging log_history "changed soa record for $domain to $soa" diff --git a/bin/v-change-dns-domain-tpl b/bin/v-change-dns-domain-tpl index 8af190f5..63c71e41 100755 --- a/bin/v-change-dns-domain-tpl +++ b/bin/v-change-dns-domain-tpl @@ -13,20 +13,19 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) +domain=$2 template=$3 restart=$4 -domain_idn="$domain" -if [[ "$domain" = *[![:ascii:]]* ]]; then - domain_idn=$(idn -t --quiet -a $domain) -fi - # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -121,10 +120,8 @@ update_object_value 'dns' 'DOMAIN' "$domain" '$TPL' "$template" update_object_value 'dns' 'DOMAIN' "$domain" '$RECORDS' "$records" # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? "DNS restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "DNS restart failed" >/dev/null # Logging log_history "changed dns template for $domain to $template" '' 'admin' diff --git a/bin/v-change-dns-domain-ttl b/bin/v-change-dns-domain-ttl index 0e85391f..131b7930 100755 --- a/bin/v-change-dns-domain-ttl +++ b/bin/v-change-dns-domain-ttl @@ -11,8 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 ttl=$3 restart=$4 @@ -21,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -64,10 +67,8 @@ fi #----------------------------------------------------------# # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? "DNS restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "DNS restart failed" >/dev/null # Logging log_history "changed TTL for $domain to $ttl" diff --git a/bin/v-change-dns-record b/bin/v-change-dns-record index 505a8a1f..612ffc6c 100755 --- a/bin/v-change-dns-record +++ b/bin/v-change-dns-record @@ -11,22 +11,21 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) +domain=$2 id=$3 dvalue=$(idn -t --quiet -u "$4" ) priority=$5 restart=$6 -domain_idn="$domain" -if [[ "$domain" = *[![:ascii:]]* ]]; then - domain_idn=$(idn -t --quiet -a $domain) -fi - # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -105,10 +104,8 @@ fi #----------------------------------------------------------# # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? "DNS restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "DNS restart failed" >/dev/null # Logging log_history "changed dns record on $domain to $dvalue" diff --git a/bin/v-change-dns-record-id b/bin/v-change-dns-record-id index 4c321b0f..5dbcf299 100755 --- a/bin/v-change-dns-record-id +++ b/bin/v-change-dns-record-id @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 id=$3 newid=$4 restart=$5 @@ -23,6 +21,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -71,10 +73,8 @@ fi #----------------------------------------------------------# # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? "DNS restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "DNS restart failed" >/dev/null # Logging log_history "changed dns record id on $domain" diff --git a/bin/v-change-mail-account-password b/bin/v-change-mail-account-password index da6b788c..0540ac7b 100755 --- a/bin/v-change-mail-account-password +++ b/bin/v-change-mail-account-password @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 password=$4; HIDE=4 @@ -22,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-change-mail-account-quota b/bin/v-change-mail-account-quota index 0d4f8d53..edbbabab 100755 --- a/bin/v-change-mail-account-quota +++ b/bin/v-change-mail-account-quota @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 quota=$4 @@ -22,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-change-mail-domain-catchall b/bin/v-change-mail-domain-catchall index 25e0caaa..022dbf1d 100755 --- a/bin/v-change-mail-domain-catchall +++ b/bin/v-change-mail-domain-catchall @@ -11,16 +11,18 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") -email="$3" +domain=$2 +email=$3 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -53,7 +55,6 @@ fi # Change catchall in config update_object_value 'mail' 'DOMAIN' "$domain" '$CATCHALL' "$email" - # Logging log_history "changed catchall email for $domain to $email" log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-change-sys-ip-nat b/bin/v-change-sys-ip-nat index 8f681555..58232212 100755 --- a/bin/v-change-sys-ip-nat +++ b/bin/v-change-sys-ip-nat @@ -73,10 +73,8 @@ fi #----------------------------------------------------------# # Restart ftp server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-ftp - check_result $? "FTP restart failed" >/dev/null -fi +$BIN/v-restart-ftp $restart +check_result $? "FTP restart failed" >/dev/null # Logging log_history "changed associated nat address on $ip to $nat_ip" '' 'admin' diff --git a/bin/v-change-web-domain-backend-tpl b/bin/v-change-web-domain-backend-tpl index 67044d6d..36a15000 100755 --- a/bin/v-change-web-domain-backend-tpl +++ b/bin/v-change-web-domain-backend-tpl @@ -11,11 +11,9 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 template=$3 -restart="$4" - +restart=$4 # Includes source $VESTA/func/main.sh @@ -23,6 +21,10 @@ source $VESTA/func/domain.sh source $VESTA/func/ip.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -143,13 +145,11 @@ fi # Restarting web -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - $BIN/v-restart-web-backend - check_result $? "Web backend restart failed" >/dev/null -fi +$BIN/v-restart-web-backend $restart +check_result $? "Web backend restart failed" >/dev/null # Logging log_history "changed backend template for $domain to $template" diff --git a/bin/v-change-web-domain-ftp-password b/bin/v-change-web-domain-ftp-password index 1eabe0ef..c41fdde7 100755 --- a/bin/v-change-web-domain-ftp-password +++ b/bin/v-change-web-domain-ftp-password @@ -11,8 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 ftp_user=$3 password=$4; HIDE=4 @@ -21,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-change-web-domain-ftp-path b/bin/v-change-web-domain-ftp-path index 6ac0b7df..8cfefade 100755 --- a/bin/v-change-web-domain-ftp-path +++ b/bin/v-change-web-domain-ftp-path @@ -11,8 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 ftp_user=$3 ftp_path=$4 @@ -21,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-change-web-domain-ip b/bin/v-change-web-domain-ip index b3e19432..05fde851 100755 --- a/bin/v-change-web-domain-ip +++ b/bin/v-change-web-domain-ip @@ -21,6 +21,10 @@ source $VESTA/func/domain.sh source $VESTA/func/ip.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -44,12 +48,6 @@ is_ip_valid "$ip" "$user" get_domain_values 'web' old=$(get_real_ip $IP) new=$ip -if [[ "$domain" = *[![:ascii:]]* ]]; then - domain_idn=$(idn -t --quiet -a $domain) -else - domain_idn=$domain -fi - # Replacing vhost replace_web_config "$WEB_SYSTEM" "$TPL.tpl" @@ -78,15 +76,11 @@ decrease_ip_value "$old" update_object_value 'web' 'DOMAIN' "$domain" '$IP' "$3" # Restart web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "WEB restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "WEB restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_history "changed web domain $domain ip to $3" diff --git a/bin/v-change-web-domain-name b/bin/v-change-web-domain-name index 316c6a12..51215393 100755 --- a/bin/v-change-web-domain-name +++ b/bin/v-change-web-domain-name @@ -15,17 +15,16 @@ domain=$2 new_domain=$3 restart=$4 -domain_idn="$domain" -if [[ "$domain" = *[![:ascii:]]* ]]; then - domain_idn=$(idn -t --quiet -a $domain) -fi - # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/func/ip.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-change-web-domain-proxy-tpl b/bin/v-change-web-domain-proxy-tpl index cb51169b..c2be52f1 100755 --- a/bin/v-change-web-domain-proxy-tpl +++ b/bin/v-change-web-domain-proxy-tpl @@ -11,21 +11,23 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 template=$3 default_extentions="jpg,jpeg,gif,png,ico,svg,css,zip,tgz,gz,rar,bz2,doc,xls,\ exe,pdf,ppt,txt,odt,ods,odp,odf,tar,wav,bmp,rtf,js,mp3,avi,mpeg,flv,html,htm" extentions=${4-$default_extentions} restart="$5" - # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/func/ip.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -75,10 +77,8 @@ update_object_value 'web' 'DOMAIN' "$domain" '$PROXY' "$PROXY" update_object_value 'web' 'DOMAIN' "$domain" '$PROXY_EXT' "$extentions" # Restarting proxy -if [ "$restart" != 'no' ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_history "changed proxy template for $domain to $template" diff --git a/bin/v-change-web-domain-sslcert b/bin/v-change-web-domain-sslcert index 67c1e0eb..444510c7 100755 --- a/bin/v-change-web-domain-sslcert +++ b/bin/v-change-web-domain-sslcert @@ -12,8 +12,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 ssl_dir=$3 restart=$4 @@ -22,6 +21,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -71,15 +74,11 @@ fi #----------------------------------------------------------# # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_history "changed ssl certificate for $domain" diff --git a/bin/v-change-web-domain-sslhome b/bin/v-change-web-domain-sslhome index c5764629..f9768e32 100755 --- a/bin/v-change-web-domain-sslhome +++ b/bin/v-change-web-domain-sslhome @@ -7,8 +7,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 ssl_home=$3 restart=$4 @@ -17,6 +16,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -67,15 +70,11 @@ fi update_object_value 'web' 'DOMAIN' "$domain" '$SSL_HOME' "$SSL_HOME" # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_history "changed ssl home for $domain to $ssl_home" diff --git a/bin/v-change-web-domain-stats b/bin/v-change-web-domain-stats index fcd661ff..afaa7fe7 100755 --- a/bin/v-change-web-domain-stats +++ b/bin/v-change-web-domain-stats @@ -12,8 +12,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 type=$3 # Includes @@ -21,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-change-web-domain-tpl b/bin/v-change-web-domain-tpl index 93635230..ef88e7a4 100755 --- a/bin/v-change-web-domain-tpl +++ b/bin/v-change-web-domain-tpl @@ -12,8 +12,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 template=$3 restart=$4 @@ -23,6 +22,10 @@ source $VESTA/func/domain.sh source $VESTA/func/ip.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -68,10 +71,8 @@ fi update_object_value 'web' 'DOMAIN' "$domain" '$TPL' "$template" # Restarting web -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null -fi +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null # Logging log_history "changed web domain template for $domain to $template" '' 'admin' diff --git a/bin/v-delete-dns-domain b/bin/v-delete-dns-domain index 5281a10a..c82b0c00 100755 --- a/bin/v-delete-dns-domain +++ b/bin/v-delete-dns-domain @@ -72,10 +72,8 @@ decrease_user_value "$user" '$U_DNS_DOMAINS' decrease_user_value "$user" '$U_DNS_RECORDS' "$records" # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns $restart - check_result $? "Bind restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "Bind restart failed" >/dev/null # Logging log_history "deleted dns domain $domain" diff --git a/bin/v-delete-dns-domains b/bin/v-delete-dns-domains index f74b4e14..a98b3140 100755 --- a/bin/v-delete-dns-domains +++ b/bin/v-delete-dns-domains @@ -43,10 +43,8 @@ done #----------------------------------------------------------# # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? "Bind restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "Bind restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-delete-dns-domains-src b/bin/v-delete-dns-domains-src index 6f1958c6..85a6c147 100755 --- a/bin/v-delete-dns-domains-src +++ b/bin/v-delete-dns-domains-src @@ -44,10 +44,8 @@ done #----------------------------------------------------------# # Restart named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? "Bind restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "Bind restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-delete-dns-on-web-alias b/bin/v-delete-dns-on-web-alias index 74cc49f4..b74fc900 100755 --- a/bin/v-delete-dns-on-web-alias +++ b/bin/v-delete-dns-on-web-alias @@ -11,11 +11,10 @@ # Argument definition user=$1 -domain=$(echo $2 | sed -e 's/\.*$//g' -e 's/^\.*//g') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 dom_alias=$(idn -t --quiet -u "$3" ) -dom_alias=$(echo $dom_alias | sed -e 's/\.*$//g' -e 's/^\.*//g') -dom_alias=$(echo $dom_alias | tr '[:upper:]' '[:lower:]') +dom_alias=$(echo $dom_alias |sed -e 's/\.*$//g' -e 's/^\.*//g') +dom_alias=$(echo $dom_alias |tr '[:upper:]' '[:lower:]') dom_alias_idn=$(idn -t --quiet -a "$dom_alias" ) restart="$4" @@ -24,6 +23,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -63,7 +66,7 @@ else fi if [ ! -z "$rec" ]; then eval "$rec" - $BIN/v-delete-dns-record $user "$root" "$ID" + $BIN/v-delete-dns-record $user "$root" "$ID" $restart fi fi fi diff --git a/bin/v-delete-dns-record b/bin/v-delete-dns-record index 1c713d01..16bb2b46 100755 --- a/bin/v-delete-dns-record +++ b/bin/v-delete-dns-record @@ -11,8 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 id=$3 restart=$4 @@ -21,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -70,10 +73,8 @@ update_object_value 'dns' 'DOMAIN' "$domain" '$RECORDS' "$records" decrease_user_value "$user" '$U_DNS_RECORDS' # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? "Bind restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "Bind restart failed" >/dev/null # Logging log_history "deleted dns record $id on $domain" diff --git a/bin/v-delete-domain b/bin/v-delete-domain index a315d3a8..b6294679 100755 --- a/bin/v-delete-domain +++ b/bin/v-delete-domain @@ -69,16 +69,14 @@ if [ -z "$domain_found" ]; then fi # Restarting services -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "can't restart web" > /dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "can't restart proxy" > /dev/null - fi - $BIN/v-restart-dns - check_result $? "can't restart dns" > /dev/null -fi +$BIN/v-restart-web $restart +check_result $? "can't restart web" > /dev/null + +$BIN/v-restart-proxy $restart +check_result $? "can't restart proxy" > /dev/null + +$BIN/v-restart-dns $restart +check_result $? "can't restart dns" > /dev/null #----------------------------------------------------------# diff --git a/bin/v-delete-mail-account b/bin/v-delete-mail-account index a16829a6..ffc22114 100755 --- a/bin/v-delete-mail-account +++ b/bin/v-delete-mail-account @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 # Includes @@ -21,6 +19,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-delete-mail-account-alias b/bin/v-delete-mail-account-alias index 470fa859..230d0113 100755 --- a/bin/v-delete-mail-account-alias +++ b/bin/v-delete-mail-account-alias @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 malias=$4 @@ -22,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-delete-mail-account-autoreply b/bin/v-delete-mail-account-autoreply index 67e79d89..2169190a 100755 --- a/bin/v-delete-mail-account-autoreply +++ b/bin/v-delete-mail-account-autoreply @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 malias=$4 @@ -22,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-delete-mail-account-forward b/bin/v-delete-mail-account-forward index ff289e35..c690e9a4 100755 --- a/bin/v-delete-mail-account-forward +++ b/bin/v-delete-mail-account-forward @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 forward=$4 @@ -22,6 +20,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -38,9 +40,7 @@ is_object_valid "mail/$domain" 'ACCOUNT' "$account" is_object_unsuspended "mail/$domain" 'ACCOUNT' "$account" fwd=$(get_object_value "mail/$domain" 'ACCOUNT' "$account" '$FWD') if [ -z "$(echo $fwd | grep -w $forward)" ]; then - echo "Error: forward $forward doesn't exist" - log_event "$E_NOTEXIST $ARGUMENTS" - exit $E_NOTEXIST + check_result $E_NOTEXIST "forward $forward doesn't exist" fi diff --git a/bin/v-delete-mail-account-fwd-only b/bin/v-delete-mail-account-fwd-only index dbc9a727..f5147f9b 100755 --- a/bin/v-delete-mail-account-fwd-only +++ b/bin/v-delete-mail-account-fwd-only @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 # Includes @@ -21,6 +19,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-delete-mail-domain b/bin/v-delete-mail-domain index 4833e656..f128d752 100755 --- a/bin/v-delete-mail-domain +++ b/bin/v-delete-mail-domain @@ -12,14 +12,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-delete-mail-domain-antispam b/bin/v-delete-mail-domain-antispam index 8ba2cfd0..35568434 100755 --- a/bin/v-delete-mail-domain-antispam +++ b/bin/v-delete-mail-domain-antispam @@ -11,15 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-delete-mail-domain-antivirus b/bin/v-delete-mail-domain-antivirus index baea4575..e176a755 100755 --- a/bin/v-delete-mail-domain-antivirus +++ b/bin/v-delete-mail-domain-antivirus @@ -11,15 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-delete-mail-domain-catchall b/bin/v-delete-mail-domain-catchall index 549c5523..f5a7ddf8 100755 --- a/bin/v-delete-mail-domain-catchall +++ b/bin/v-delete-mail-domain-catchall @@ -11,15 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-delete-web-domain b/bin/v-delete-web-domain index 878ea472..6ef7280b 100755 --- a/bin/v-delete-web-domain +++ b/bin/v-delete-web-domain @@ -23,6 +23,10 @@ source $VESTA/func/domain.sh source $VESTA/func/ip.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -48,10 +52,6 @@ fi # Parsing domain values get_domain_values 'web' -domain_idn="$domain" -if [[ "$domain" = *[![:ascii:]]* ]]; then - domain_idn=$(idn -t --quiet -a $domain) -fi local_ip=$(get_real_ip $IP) # Deleting domain from web.conf @@ -121,16 +121,12 @@ if [ ! -z "$ALIAS" ]; then fi # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - # Restartinh proxy server - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +# Restartinh proxy server +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_history "deleted web domain $domain" diff --git a/bin/v-delete-web-domain-alias b/bin/v-delete-web-domain-alias index 2a218061..45bef00b 100755 --- a/bin/v-delete-web-domain-alias +++ b/bin/v-delete-web-domain-alias @@ -81,15 +81,11 @@ update_object_value 'web' 'DOMAIN' "$domain" '$ALIAS' "$ALIAS" decrease_user_value "$user" '$U_WEB_ALIASES' # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_history "deleted alias $dom_alias on $domain" diff --git a/bin/v-delete-web-domain-backend b/bin/v-delete-web-domain-backend index 4b9b24ba..5b548096 100755 --- a/bin/v-delete-web-domain-backend +++ b/bin/v-delete-web-domain-backend @@ -11,14 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -66,10 +69,8 @@ rm -f $pool/$backend_type.conf #----------------------------------------------------------# # Restarting backend server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web-backend - check_result $? "Backend restart failed" >/dev/null -fi +$BIN/v-restart-web-backend $restart +check_result $? "Backend restart failed" >/dev/null # Logging log_history "deleting backend support for $domain" diff --git a/bin/v-delete-web-domain-ftp b/bin/v-delete-web-domain-ftp index b53440c4..08130584 100755 --- a/bin/v-delete-web-domain-ftp +++ b/bin/v-delete-web-domain-ftp @@ -11,8 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 ftp_user=$3 # Includes @@ -20,6 +19,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-delete-web-domain-proxy b/bin/v-delete-web-domain-proxy index 558f67f4..215506cb 100755 --- a/bin/v-delete-web-domain-proxy +++ b/bin/v-delete-web-domain-proxy @@ -11,8 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 restart=$3 # Includes @@ -20,6 +19,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -58,10 +61,8 @@ update_object_value 'web' 'DOMAIN' "$domain" '$PROXY' '' update_object_value 'web' 'DOMAIN' "$domain" '$PROXY_EXT' '' # Restart proxy server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_history "disabled proxy support for $domain" diff --git a/bin/v-delete-web-domain-ssl b/bin/v-delete-web-domain-ssl index d5f0e35b..131feb23 100755 --- a/bin/v-delete-web-domain-ssl +++ b/bin/v-delete-web-domain-ssl @@ -11,8 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 restart=$3 # Includes @@ -20,6 +19,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -71,15 +74,11 @@ update_object_value 'web' 'DOMAIN' "$domain" '$SSL' 'no' decrease_user_value "$user" '$U_WEB_SSL' # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_history "disabled ssl support for $domain" diff --git a/bin/v-delete-web-domain-stats b/bin/v-delete-web-domain-stats index 34c35f56..00566999 100755 --- a/bin/v-delete-web-domain-stats +++ b/bin/v-delete-web-domain-stats @@ -12,14 +12,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-delete-web-domains b/bin/v-delete-web-domains index 1406abb9..8822ab0a 100755 --- a/bin/v-delete-web-domains +++ b/bin/v-delete-web-domains @@ -43,15 +43,11 @@ done #----------------------------------------------------------# # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-get-dns-domain-value b/bin/v-get-dns-domain-value index 1786e900..ec77df2f 100755 --- a/bin/v-get-dns-domain-value +++ b/bin/v-get-dns-domain-value @@ -11,13 +11,16 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 key=$(echo "$3"| tr '[:lower:]' '[:upper:]' | sed "s/^/$/") # Includes source $VESTA/func/main.sh +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-get-mail-account-value b/bin/v-get-mail-account-value index 556c61ce..f011875c 100755 --- a/bin/v-get-mail-account-value +++ b/bin/v-get-mail-account-value @@ -11,14 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 key=$(echo "$4"| tr '[:lower:]' '[:upper:]' | sed "s/^/$/") # Includes source $VESTA/func/main.sh +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-get-mail-domain-value b/bin/v-get-mail-domain-value index 616df282..e7ad584a 100755 --- a/bin/v-get-mail-domain-value +++ b/bin/v-get-mail-domain-value @@ -11,13 +11,16 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 key=$(echo "$3"| tr '[:lower:]' '[:upper:]' | sed "s/^/$/") # Includes source $VESTA/func/main.sh +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-insert-dns-domain b/bin/v-insert-dns-domain index 0a83c205..b767b576 100755 --- a/bin/v-insert-dns-domain +++ b/bin/v-insert-dns-domain @@ -74,10 +74,8 @@ chmod 660 $USER_DATA/dns.conf #----------------------------------------------------------# # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns $restart - check_result $? "Bind restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "Bind restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-insert-dns-record b/bin/v-insert-dns-record index 90205f61..1afdd520 100755 --- a/bin/v-insert-dns-record +++ b/bin/v-insert-dns-record @@ -45,10 +45,8 @@ echo "$data" >> $USER_DATA/dns/$domain.conf #----------------------------------------------------------# # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns $restart - check_result $? "Bind restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "Bind restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-insert-dns-records b/bin/v-insert-dns-records index 3ce767f8..52c72c66 100755 --- a/bin/v-insert-dns-records +++ b/bin/v-insert-dns-records @@ -48,10 +48,8 @@ fi #----------------------------------------------------------# # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? "Bind restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "Bind restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-rebuild-cron-jobs b/bin/v-rebuild-cron-jobs index 5acc830d..40192b63 100755 --- a/bin/v-rebuild-cron-jobs +++ b/bin/v-rebuild-cron-jobs @@ -41,10 +41,8 @@ sync_cron_jobs #----------------------------------------------------------# # Restarting crond -if [ "$restart" != 'no' ]; then - $BIN/v-restart-cron - check_result $? "Cron restart failed" >/dev/null -fi +$BIN/v-restart-cron $restart +check_result $? "Cron restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-rebuild-dns-domain b/bin/v-rebuild-dns-domain index 2aa34f6f..53639268 100755 --- a/bin/v-rebuild-dns-domain +++ b/bin/v-rebuild-dns-domain @@ -82,10 +82,8 @@ update_user_value "$user" '$U_DNS_RECORDS' "$user_records" update_user_value "$user" '$SUSPENDED_DNS' "$suspended_dns" # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns "$restart" - check_result $? "Bind restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "Bind restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-rebuild-dns-domains b/bin/v-rebuild-dns-domains index 4bb537ab..0b03e819 100755 --- a/bin/v-rebuild-dns-domains +++ b/bin/v-rebuild-dns-domains @@ -83,10 +83,8 @@ update_user_value "$user" '$U_DNS_RECORDS' "$user_records" update_user_value "$user" '$SUSPENDED_DNS' "$suspended_dns" # Restarting named -if [ "$restart" != 'no' ]; then - $BIN/v-restart-dns - check_result $? "Bind restart failed" >/dev/null -fi +$BIN/v-restart-dns $restart +check_result $? "Bind restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-rebuild-web-domains b/bin/v-rebuild-web-domains index 5ba9ef48..fafcf602 100755 --- a/bin/v-rebuild-web-domains +++ b/bin/v-rebuild-web-domains @@ -75,15 +75,11 @@ done $BIN/v-update-user-counters $user # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-suspend-cron-job b/bin/v-suspend-cron-job index 499c0772..43074ef1 100755 --- a/bin/v-suspend-cron-job +++ b/bin/v-suspend-cron-job @@ -47,10 +47,8 @@ sync_cron_jobs #----------------------------------------------------------# # Restarting crond -if [ "$restart" != 'no' ]; then - $BIN/v-restart-cron - check_result $? "Cron restart failed" >/dev/null -fi +$BIN/v-restart-cron $restart +check_result $? "Cron restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-suspend-cron-jobs b/bin/v-suspend-cron-jobs index 935347ad..8b3f4ad8 100755 --- a/bin/v-suspend-cron-jobs +++ b/bin/v-suspend-cron-jobs @@ -42,10 +42,8 @@ done #----------------------------------------------------------# # Restarting crond -if [ "$restart" != 'no' ]; then - $BIN/v-restart-cron - check_result $? "Cron restart failed" >/dev/null -fi +$BIN/v-restart-cron $restart +check_result $? "Cron restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-suspend-dns-domain b/bin/v-suspend-dns-domain index ebe45e3a..d016b786 100755 --- a/bin/v-suspend-dns-domain +++ b/bin/v-suspend-dns-domain @@ -11,14 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 restart="$3" # Includes source $VESTA/func/main.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-suspend-dns-record b/bin/v-suspend-dns-record index 0e9afa37..4de9ae40 100755 --- a/bin/v-suspend-dns-record +++ b/bin/v-suspend-dns-record @@ -11,20 +11,19 @@ # Argument definition user=$1 -domain="$2" +domain=$2 id=$3 -restart="$4" - -domain_idn="$domain" -if [[ "$domain" = *[![:ascii:]]* ]]; then - domain_idn=$(idn -t --quiet -a $domain) -fi +restart=$4 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-suspend-domain b/bin/v-suspend-domain index 6f017534..74e17f19 100755 --- a/bin/v-suspend-domain +++ b/bin/v-suspend-domain @@ -71,16 +71,14 @@ if [ -z "$domain_found" ]; then fi # Restarting services -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "can't restart web" > /dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "can't restart proxy" > /dev/null - fi - $BIN/v-restart-dns - check_result $? "can't restart dns" > /dev/null -fi +$BIN/v-restart-web $restat +check_result $? "can't restart web" > /dev/null + +$BIN/v-restart-proxy $restart +check_result $? "can't restart proxy" > /dev/null + +$BIN/v-restart-dns $restart +check_result $? "can't restart dns" > /dev/null #----------------------------------------------------------# diff --git a/bin/v-suspend-mail-account b/bin/v-suspend-mail-account index ba11c8e0..803594eb 100755 --- a/bin/v-suspend-mail-account +++ b/bin/v-suspend-mail-account @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 # Includes @@ -21,6 +19,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-suspend-mail-accounts b/bin/v-suspend-mail-accounts index a62069cf..bd282ca6 100755 --- a/bin/v-suspend-mail-accounts +++ b/bin/v-suspend-mail-accounts @@ -11,14 +11,15 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-suspend-mail-domain b/bin/v-suspend-mail-domain index afdc1f3d..66fe8152 100755 --- a/bin/v-suspend-mail-domain +++ b/bin/v-suspend-mail-domain @@ -11,15 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-suspend-user b/bin/v-suspend-user index 6d049056..6276ce5a 100755 --- a/bin/v-suspend-user +++ b/bin/v-suspend-user @@ -74,16 +74,14 @@ fi #----------------------------------------------------------# # Restarting system services -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - $BIN/v-restart-dns - check_result $? "DNS restart failed" >/dev/null +$BIN/v-restart-dns $restart +check_result $? "DNS restart failed" >/dev/null - $BIN/v-restart-cron - check_result $? "Cron restart failed" >/dev/null -fi +$BIN/v-restart-cron $restart +check_result $? "Cron restart failed" >/dev/null # Changing suspend value update_user_value "$user" '$SUSPENDED' 'yes' diff --git a/bin/v-suspend-web-domain b/bin/v-suspend-web-domain index c3179604..15dbe9c4 100755 --- a/bin/v-suspend-web-domain +++ b/bin/v-suspend-web-domain @@ -13,8 +13,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 restart=$3 # Includes @@ -23,6 +22,10 @@ source $VESTA/func/domain.sh source $VESTA/func/ip.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -76,15 +79,11 @@ update_object_value 'web' 'DOMAIN' "$domain" '$SUSPENDED' 'yes' increase_user_value "$user" '$SUSPENDED_WEB' # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-suspend-web-domains b/bin/v-suspend-web-domains index be480390..de8b178d 100755 --- a/bin/v-suspend-web-domains +++ b/bin/v-suspend-web-domains @@ -43,15 +43,11 @@ done #----------------------------------------------------------# # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-unsuspend-cron-job b/bin/v-unsuspend-cron-job index 108ddf90..0e40a6ec 100755 --- a/bin/v-unsuspend-cron-job +++ b/bin/v-unsuspend-cron-job @@ -47,10 +47,8 @@ sync_cron_jobs #----------------------------------------------------------# # Restarting crond -if [ "$restart" != 'no' ]; then - $BIN/v-restart-cron - check_result $? "Cron restart failed" >/dev/null -fi +$BIN/v-restart-cron $restart +check_result $? "Cron restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-unsuspend-cron-jobs b/bin/v-unsuspend-cron-jobs index bc4cfc4e..2f2d740e 100755 --- a/bin/v-unsuspend-cron-jobs +++ b/bin/v-unsuspend-cron-jobs @@ -42,10 +42,8 @@ done #----------------------------------------------------------# # Restarting crond -if [ "$restart" != 'no' ]; then - $BIN/v-restart-cron - check_result $? "Cron restart failed" >/dev/null -fi +$BIN/v-restart-cron $restart +check_result $? "Cron restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-unsuspend-dns-domain b/bin/v-unsuspend-dns-domain index 49a54091..e845b6a8 100755 --- a/bin/v-unsuspend-dns-domain +++ b/bin/v-unsuspend-dns-domain @@ -11,14 +11,16 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") -restart="$3" +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-unsuspend-dns-record b/bin/v-unsuspend-dns-record index 35b2d7b4..c84e7744 100755 --- a/bin/v-unsuspend-dns-record +++ b/bin/v-unsuspend-dns-record @@ -13,18 +13,17 @@ user=$1 domain=$2 id=$3 -restart="$4" - -domain_idn="$domain" -if [[ "$domain" = *[![:ascii:]]* ]]; then - domain_idn=$(idn -t --quiet -a $domain) -fi +restart=$4 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-unsuspend-domain b/bin/v-unsuspend-domain index 294b485c..a0a3b459 100755 --- a/bin/v-unsuspend-domain +++ b/bin/v-unsuspend-domain @@ -70,16 +70,14 @@ if [ -z "$domain_found" ]; then fi # Restarting services -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "can't restart web" > /dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "can't restart proxy" > /dev/null - fi - $BIN/v-restart-dns - check_result $? "can't restart dns" > /dev/null -fi +$BIN/v-restart-web $restart +check_result $? "can't restart web" > /dev/null + +$BIN/v-restart-proxy $restart +check_result $? "can't restart proxy" > /dev/null + +$BIN/v-restart-dns $restart +check_result $? "can't restart dns" > /dev/null #----------------------------------------------------------# diff --git a/bin/v-unsuspend-mail-account b/bin/v-unsuspend-mail-account index 0137f865..2e9a887f 100755 --- a/bin/v-unsuspend-mail-account +++ b/bin/v-unsuspend-mail-account @@ -11,9 +11,7 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 account=$3 # Includes @@ -21,6 +19,10 @@ source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-unsuspend-mail-accounts b/bin/v-unsuspend-mail-accounts index 5ad6285d..2c651b2c 100755 --- a/bin/v-unsuspend-mail-accounts +++ b/bin/v-unsuspend-mail-accounts @@ -11,14 +11,16 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-unsuspend-mail-domain b/bin/v-unsuspend-mail-domain index ad9df12e..9c688d6f 100755 --- a/bin/v-unsuspend-mail-domain +++ b/bin/v-unsuspend-mail-domain @@ -11,15 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-unsuspend-user b/bin/v-unsuspend-user index 1d3feecd..17c6683d 100755 --- a/bin/v-unsuspend-user +++ b/bin/v-unsuspend-user @@ -77,16 +77,14 @@ update_user_value "$user" '$SUSPENDED' 'no' decrease_user_value 'admin' '$SUSPENDED_USERS' # Restarting system services -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - $BIN/v-restart-dns - check_result $? "DNS restart failed" >/dev/null +$BIN/v-restart-dns $restart +check_result $? "DNS restart failed" >/dev/null - $BIN/v-restart-cron - check_result $? "Cron restart failed" >/dev/null -fi +$BIN/v-restart-cron $restart +check_result $? "Cron restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-unsuspend-web-domain b/bin/v-unsuspend-web-domain index 3b21248e..b47b67f4 100755 --- a/bin/v-unsuspend-web-domain +++ b/bin/v-unsuspend-web-domain @@ -11,9 +11,8 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") -restart="$3" +domain=$2 +restart=$3 # Includes source $VESTA/func/main.sh @@ -21,6 +20,10 @@ source $VESTA/func/domain.sh source $VESTA/func/ip.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -74,15 +77,11 @@ update_object_value 'web' 'DOMAIN' "$domain" '$SUSPENDED' 'no' decrease_user_value "$user" '$SUSPENDED_WEB' # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-unsuspend-web-domains b/bin/v-unsuspend-web-domains index b9f4d1e4..2d2676d0 100755 --- a/bin/v-unsuspend-web-domains +++ b/bin/v-unsuspend-web-domains @@ -44,15 +44,11 @@ done #----------------------------------------------------------# # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_event "$OK" "$ARGUMENTS" diff --git a/bin/v-update-mail-domain-disk b/bin/v-update-mail-domain-disk index 68d58a61..a1b6b3f4 100755 --- a/bin/v-update-mail-domain-disk +++ b/bin/v-update-mail-domain-disk @@ -11,14 +11,16 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain=$(echo $domain | tr '[:upper:]' '[:lower:]') -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-update-web-domain-disk b/bin/v-update-web-domain-disk index 5317b3f0..252fac3c 100755 --- a/bin/v-update-web-domain-disk +++ b/bin/v-update-web-domain-disk @@ -11,14 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-update-web-domain-ssl b/bin/v-update-web-domain-ssl index 6dffc281..8a3381a9 100755 --- a/bin/v-update-web-domain-ssl +++ b/bin/v-update-web-domain-ssl @@ -14,10 +14,9 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 ssl_dir=$3 -restart="$4" +restart=$4 # Includes source $VESTA/func/main.sh @@ -25,6 +24,10 @@ source $VESTA/func/domain.sh source $VESTA/func/ip.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # @@ -74,15 +77,11 @@ fi #----------------------------------------------------------# # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "Web restart failed" >/dev/null +$BIN/v-restart-web $restart +check_result $? "Web restart failed" >/dev/null - if [ ! -z "$PROXY_SYSTEM" ]; then - $BIN/v-restart-proxy - check_result $? "Proxy restart failed" >/dev/null - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "Proxy restart failed" >/dev/null # Logging log_history "update ssl certificate for $domain" diff --git a/bin/v-update-web-domain-stat b/bin/v-update-web-domain-stat index 56dfc93a..24eba8cf 100755 --- a/bin/v-update-web-domain-stat +++ b/bin/v-update-web-domain-stat @@ -11,14 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-update-web-domain-traff b/bin/v-update-web-domain-traff index fda546cc..299bafd2 100755 --- a/bin/v-update-web-domain-traff +++ b/bin/v-update-web-domain-traff @@ -11,14 +11,17 @@ # Argument definition user=$1 -domain=$(idn -t --quiet -u "$2" ) -domain_idn=$(idn -t --quiet -a "$domain") +domain=$2 # Includes source $VESTA/func/main.sh source $VESTA/func/domain.sh source $VESTA/conf/vesta.conf +# Additional argument formatting +format_domain +format_domain_idn + #----------------------------------------------------------# # Verifications # diff --git a/bin/v-update-web-templates b/bin/v-update-web-templates index a526e0d4..3196c8b4 100755 --- a/bin/v-update-web-templates +++ b/bin/v-update-web-templates @@ -65,19 +65,13 @@ done #----------------------------------------------------------# # Restarting web server -if [ "$restart" != 'no' ]; then - $BIN/v-restart-web - check_result $? "restart" >/dev/null 2>&1 +$BIN/v-restart-web $restart +check_result $? "restart" >/dev/null 2>&1 - if [ ! -z "$PROXY_SYSTTEM" ]; then - $BIN/v-restart-proxy - check_result $? "restart" >/dev/null 2>&1 - fi +$BIN/v-restart-proxy $restart +check_result $? "restart" >/dev/null 2>&1 - if [ ! -z "$WEB_BACKEND" ]; then - $BIN/v-restart-proxy - check_result $? "restart" >/dev/null 2>&1 - fi -fi +$BIN/v-restart-proxy $restart +check_result $? "restart" >/dev/null 2>&1 exit diff --git a/func/main.sh b/func/main.sh index 99fb90b2..b1761fd8 100644 --- a/func/main.sh +++ b/func/main.sh @@ -843,3 +843,37 @@ is_format_valid() { fi done } + +# Domain argument formatting +format_domain() { + if [[ "$domain" = *[![:ascii:]]* ]]; then + if [[ "$domain" =~ [[:upper:]] ]]; then + domain=$(echo "$domain" |sed 's/[[:upper:]].*/\L&/') + fi + else + if [[ "$domain" =~ [[:upper:]] ]]; then + domain=$(echo "$domain" |tr '[:upper:]' '[:lower:]') + fi + fi + if [[ "$domain" =~ ^www\..* ]]; then + domain=$(echo "$domain" |sed -e "s/^www.//") + fi + if [[ "$domain" =~ .*\.$ ]]; then + domain=$(echo "$domain" |sed -e "s/\.$//") + fi +} + +format_domain_idn() { + if [[ "$domain_idn" = *[![:ascii:]]* ]]; then + domain_idn=$(idn -t --quiet -a $domain_idn) + fi +} + +format_aliases() { + if [ ! -z "$aliases" ] && [ "$aliases" != 'none' ]; then + aliases=$(echo $aliases |tr '[:upper:]' '[:lower:]' |tr ',' '\n') + aliases=$(echo "$aliases" |sed -e "s/\.$//" |sort -u) + aliases=$(echo "$aliases" |grep -v www.$domain |sed -e "/^$/d") + aliases=$(echo "$aliases" |tr '\n' ',' |sed -e "s/,$//") + fi +} From 3a2cfa20fe0883d1ed9583a6735ca857ba6ab349 Mon Sep 17 00:00:00 2001 From: dpeca Date: Fri, 13 Jan 2017 17:03:02 +0100 Subject: [PATCH 25/45] added verify_peer_name => false (Roundcube driver, Debian) --- install/debian/8/roundcube/vesta.php | 1 + 1 file changed, 1 insertion(+) diff --git a/install/debian/8/roundcube/vesta.php b/install/debian/8/roundcube/vesta.php index 3261f656..b3dd167f 100644 --- a/install/debian/8/roundcube/vesta.php +++ b/install/debian/8/roundcube/vesta.php @@ -46,6 +46,7 @@ class rcube_vesta_password { $context = stream_context_create(); $result = stream_context_set_option($context, 'ssl', 'verify_peer', false); + $result = stream_context_set_option($context, 'ssl', 'verify_peer_name', false); $result = stream_context_set_option($context, 'ssl', 'verify_host', false); $result = stream_context_set_option($context, 'ssl', 'allow_self_signed', true); From c8f63642b04feea2d96af50529d94683a3010576 Mon Sep 17 00:00:00 2001 From: dpeca Date: Fri, 13 Jan 2017 17:09:02 +0100 Subject: [PATCH 26/45] Roundcube driver fix for self-signed SSL (Ubuntu 16.10) --- install/ubuntu/16.10/roundcube/vesta.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/install/ubuntu/16.10/roundcube/vesta.php b/install/ubuntu/16.10/roundcube/vesta.php index 8fb202a4..99e1d4bc 100644 --- a/install/ubuntu/16.10/roundcube/vesta.php +++ b/install/ubuntu/16.10/roundcube/vesta.php @@ -40,7 +40,16 @@ $send .= PHP_EOL; $send .= $postdata . PHP_EOL . PHP_EOL; - $fp = fsockopen('ssl://' . $vesta_host, $vesta_port); + //$fp = fsockopen('ssl://' . $vesta_host, $vesta_port); + $errno = ""; + $errstr = ""; + $context = stream_context_create(); + $result = stream_context_set_option($context, 'ssl', 'verify_peer', false); + $result = stream_context_set_option($context, 'ssl', 'verify_peer_name', false); + $result = stream_context_set_option($context, 'ssl', 'verify_host', false); + $result = stream_context_set_option($context, 'ssl', 'allow_self_signed', true); + + $fp = stream_socket_client('ssl://' . $vesta_host . ':'.$vesta_port, $errno, $errstr, 60, STREAM_CLIENT_CONNECT, $context); fputs($fp, $send); $result = fread($fp, 2048); fclose($fp); From f137ec0f7ba729aa88eee48369a59e00f7490150 Mon Sep 17 00:00:00 2001 From: dpeca Date: Fri, 13 Jan 2017 17:27:20 +0100 Subject: [PATCH 27/45] Roundcube driver fix for self-signed SSL (Ubuntu 16.04) --- install/ubuntu/16.04/roundcube/vesta.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/install/ubuntu/16.04/roundcube/vesta.php b/install/ubuntu/16.04/roundcube/vesta.php index 8fb202a4..99e1d4bc 100644 --- a/install/ubuntu/16.04/roundcube/vesta.php +++ b/install/ubuntu/16.04/roundcube/vesta.php @@ -40,7 +40,16 @@ $send .= PHP_EOL; $send .= $postdata . PHP_EOL . PHP_EOL; - $fp = fsockopen('ssl://' . $vesta_host, $vesta_port); + //$fp = fsockopen('ssl://' . $vesta_host, $vesta_port); + $errno = ""; + $errstr = ""; + $context = stream_context_create(); + $result = stream_context_set_option($context, 'ssl', 'verify_peer', false); + $result = stream_context_set_option($context, 'ssl', 'verify_peer_name', false); + $result = stream_context_set_option($context, 'ssl', 'verify_host', false); + $result = stream_context_set_option($context, 'ssl', 'allow_self_signed', true); + + $fp = stream_socket_client('ssl://' . $vesta_host . ':'.$vesta_port, $errno, $errstr, 60, STREAM_CLIENT_CONNECT, $context); fputs($fp, $send); $result = fread($fp, 2048); fclose($fp); From a50fa85ef0a77dac99de8a3009afeeadec648c8b Mon Sep 17 00:00:00 2001 From: dpeca Date: Fri, 13 Jan 2017 17:33:36 +0100 Subject: [PATCH 28/45] added verify_peer_name => false (Roundcube driver, CentOS 6) --- install/rhel/6/roundcube/vesta.php | 1 + 1 file changed, 1 insertion(+) diff --git a/install/rhel/6/roundcube/vesta.php b/install/rhel/6/roundcube/vesta.php index 4a8783e6..fee26078 100644 --- a/install/rhel/6/roundcube/vesta.php +++ b/install/rhel/6/roundcube/vesta.php @@ -48,6 +48,7 @@ class rcube_vesta_password $context = stream_context_create(); $result = stream_context_set_option($context, 'ssl', 'verify_peer', false); + result = stream_context_set_option($context, 'ssl', 'verify_peer_name', false); $result = stream_context_set_option($context, 'ssl', 'verify_host', false); $result = stream_context_set_option($context, 'ssl', 'allow_self_signed', true); From 649c04d650d67d656b98541a1311527aa49968f1 Mon Sep 17 00:00:00 2001 From: Joe Mattos Date: Mon, 16 Jan 2017 16:59:10 -0500 Subject: [PATCH 29/45] Fix for v-change-user-package too many arguments v-change-user-package: line 46: [: too many arguments --- bin/v-change-user-package | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/v-change-user-package b/bin/v-change-user-package index bb0b21d8..d0de98db 100755 --- a/bin/v-change-user-package +++ b/bin/v-change-user-package @@ -43,7 +43,7 @@ is_package_avalable() { check_result $E_LIMIT "Package doesn't cover WEB_DOMAIN usage" fi fi - if [ "$DNS_DOMAINS" ! = 'unlimited' ]; then + if [ "$DNS_DOMAINS" != 'unlimited' ]; then if [ "$DNS_DOMAINS" -lt "$U_DNS_DOMAINS" ]; then check_result $E_LIMIT "Package doesn't cover DNS_DOMAIN usage" fi From 310a3797052f49044f6060bd3b1936b89f2e87cb Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Mon, 16 Jan 2017 13:57:19 +0200 Subject: [PATCH 30/45] LetsEncrypt on apache-only fix for #966 --- bin/v-check-letsencrypt-domain | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bin/v-check-letsencrypt-domain b/bin/v-check-letsencrypt-domain index e46c7ea2..cc8c15af 100755 --- a/bin/v-check-letsencrypt-domain +++ b/bin/v-check-letsencrypt-domain @@ -97,7 +97,8 @@ if [ "$WEB_SYSTEM" = 'nginx' ] || [ "$PROXY_SYSTEM" = 'nginx' ]; then fi else acme="$HOMEDIR/$user/web/$r_domain/public_html/.well-known/acme-challenge" - echo "$token" > $acme/$token.$thumb + mkdir -p $acme + echo "$token.$thumb" > $acme/$token chown -R $user:$user $HOMEDIR/$user/web/$r_domain/public_html/.well-known fi From d37ef80bf417c624c45a57096d6e4bde24489b91 Mon Sep 17 00:00:00 2001 From: Maksim Usmanov | Maks Date: Thu, 19 Jan 2017 23:41:06 +0100 Subject: [PATCH 31/45] Add unrar This is need for v-extract-fs-archive, unrar is available in debian but not in centos. Maybe is better idea not support unrar because not is available in all OS --- install/vst-install-debian.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/install/vst-install-debian.sh b/install/vst-install-debian.sh index 25973e94..d0672f9d 100755 --- a/install/vst-install-debian.sh +++ b/install/vst-install-debian.sh @@ -29,7 +29,7 @@ if [ "$release" -eq 8 ]; then mysql-client postgresql postgresql-contrib phppgadmin phpMyAdmin mc flex whois rssh git idn zip sudo bc ftp lsof ntpdate rrdtool quota e2fslibs bsdutils e2fsprogs curl imagemagick fail2ban dnsutils - bsdmainutils cron vesta vesta-nginx vesta-php expect libmail-dkim-perl" + bsdmainutils cron vesta vesta-nginx vesta-php expect libmail-dkim-perl unrar" else software="nginx apache2 apache2-utils apache2.2-common apache2-suexec-custom libapache2-mod-ruid2 @@ -41,7 +41,7 @@ else mysql-client postgresql postgresql-contrib phppgadmin phpMyAdmin mc flex whois rssh git idn zip sudo bc ftp lsof ntpdate rrdtool quota e2fslibs bsdutils e2fsprogs curl imagemagick fail2ban dnsutils - bsdmainutils cron vesta vesta-nginx vesta-php expect" + bsdmainutils cron vesta vesta-nginx vesta-php expect unrar" fi # Defining help function From a2dab6c94a523fb390d25fed2dbbc3fbd23108de Mon Sep 17 00:00:00 2001 From: dpeca Date: Wed, 25 Jan 2017 14:24:49 +0100 Subject: [PATCH 32/45] To avoid chowning mail conf folder if it does not exists --- bin/v-change-domain-owner | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/bin/v-change-domain-owner b/bin/v-change-domain-owner index 7f73e59e..e16c8629 100755 --- a/bin/v-change-domain-owner +++ b/bin/v-change-domain-owner @@ -151,8 +151,10 @@ if [ ! -z "$mail_data" ]; then exim_user="Debian-exim" fi # Chowning mail conf files to exim user - find $HOMEDIR/$user/conf/mail/$domain -user root \ - -exec chown $exim_user {} \; + if [ -d "$HOMEDIR/$user/conf/mail/$domain" ]; then + find $HOMEDIR/$user/conf/mail/$domain -user root \ + -exec chown $exim_user {} \; + fi # Rebuild config $BIN/v-unsuspend-mail-domain $user $domain no >> /dev/null 2>&1 From 2f73044746976c397265ffab43fc5bbb587d3a32 Mon Sep 17 00:00:00 2001 From: dpeca Date: Wed, 25 Jan 2017 14:47:32 +0100 Subject: [PATCH 33/45] Wrong order of steps in v-change-domain-owner, fixed --- bin/v-change-domain-owner | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/bin/v-change-domain-owner b/bin/v-change-domain-owner index e16c8629..8f267307 100755 --- a/bin/v-change-domain-owner +++ b/bin/v-change-domain-owner @@ -144,6 +144,11 @@ if [ ! -z "$mail_data" ]; then find $HOMEDIR/$user/mail/$domain -user $owner \ -exec chown -h $user {} \; + # Rebuild config + $BIN/v-unsuspend-mail-domain $user $domain no >> /dev/null 2>&1 + $BIN/v-rebuild-mail-domains $owner no + $BIN/v-rebuild-mail-domains $user + # Checking exim username for later chowning exim_user="exim"; check_exim_username=$(grep -c '^Debian-exim:' /etc/passwd) @@ -155,11 +160,6 @@ if [ ! -z "$mail_data" ]; then find $HOMEDIR/$user/conf/mail/$domain -user root \ -exec chown $exim_user {} \; fi - - # Rebuild config - $BIN/v-unsuspend-mail-domain $user $domain no >> /dev/null 2>&1 - $BIN/v-rebuild-mail-domains $owner no - $BIN/v-rebuild-mail-domains $user fi # Update counters From 092b135181164b597d009132d9d7267fffeb3b44 Mon Sep 17 00:00:00 2001 From: Pavel Galkin Date: Sun, 29 Jan 2017 01:56:05 +0300 Subject: [PATCH 34/45] full bulgarian translation full bulgarian translation for VestaCP by kronz (https://forum.vestacp.com/memberlist.php?mode=viewprofile&u=9167) --- web/inc/i18n/bg.php | 1305 +++++++++++++++++++++---------------------- 1 file changed, 652 insertions(+), 653 deletions(-) diff --git a/web/inc/i18n/bg.php b/web/inc/i18n/bg.php index cb92158e..64fec6a6 100644 --- a/web/inc/i18n/bg.php +++ b/web/inc/i18n/bg.php @@ -1,733 +1,731 @@ 'Пакет', + 'Packages' => 'Пакети', 'IP' => 'IP', 'Graphs' => 'Графики', 'Statistics' => 'Статистика', 'Log' => 'Логове', 'Server' => 'Сървър', 'Services' => 'Услуги', - 'Firewall' => 'Firewall', - 'Updates' => 'Обновяване', + 'Firewall' => 'Защитна стена', + 'Updates' => 'Обновления', 'Log in' => 'Вход', 'Log out' => 'Изход', - 'USER' => 'Клиенти', - 'WEB' => 'WEB', + 'USER' => 'ПОТРЕБИТЕЛ', + 'WEB' => 'УЕБ', 'DNS' => 'DNS', - 'MAIL' => 'Мейл', - 'DB' => 'Бази Данни', + 'MAIL' => 'ПОЩА', + 'DB' => 'БАЗА ДАННИ', 'CRON' => 'CRON', - 'BACKUP' => 'Архив', + 'BACKUP' => 'РЕЗЕРВНО КОПИЕ', - 'LOGIN' => 'Вход', - 'RESET PASSWORD' => 'Забравена парола', - 'SEARCH' => 'Търси', - 'PACKAGE' => 'Пакет', + 'LOGIN' => 'ВХОД', + 'RESET PASSWORD' => 'ЗАБРАВЕНА ПАРОЛА', + 'SEARCH' => 'ТЪРСЕНЕ', + 'PACKAGE' => 'ПАКЕТ', 'RRD' => 'RRD', - 'STATS' => 'Статистика', - 'LOG' => 'Логове', - 'UPDATES' => 'Обновяване', - 'FIREWALL' => 'FIREWALL', - 'SERVER' => 'Сървър', - 'MEMORY' => 'Памет', - 'DISK' => 'Диск', - 'NETWORK' => 'Мрежа', - 'Web Log Manager' => 'Web Log Manager', - - 'no notifications' => 'no notifications', + 'STATS' => 'СТАТИСТИКА', + 'LOG' => 'ЛОГОВЕ', + 'UPDATES' => 'ОБНОВЛЕНИЯ', + 'FIREWALL' => 'ЗАЩИТНА СТЕНА', + 'SERVER' => 'СЪРВЪР', + 'MEMORY' => 'ПАМЕТ', + 'DISK' => 'ДИСК', + 'NETWORK' => 'МРЕЖА', + 'Web Log Manager' => 'МЕНИДЖЪР НА УЕБ ЛОГОВЕ', 'Add User' => 'Добави потребител', 'Add Domain' => 'Добави домейн', - 'Add Web Domain' => 'Добави домейн', - 'Add DNS Domain' => 'Добави DNS', + 'Add Web Domain' => 'Добави уеб домейн', + 'Add DNS Domain' => 'Добави DNS домейн', 'Add DNS Record' => 'Добави DNS запис', - 'Add Mail Domain' => 'Добави мейл', - 'Add Mail Account' => 'Добави мейл адрес', - 'Add Database' => 'Добави база', - 'Add Cron Job' => 'Добави задача', - 'Create Backup' => 'Направи архив', - 'Configure' => 'Конфигурация', - 'Restore All' => 'Възстанови всички', + 'Add Mail Domain' => 'Добави пощенски домейн', + 'Add Mail Account' => 'Добави пощенски акаунт', + 'Add Database' => 'Добави база данни', + 'Add Cron Job' => 'Добави Cron Job', + 'Create Backup' => 'Създай резервно копие', + 'Configure' => 'Конфигурирай', + 'Restore All' => 'Възобнови всичко', 'Add Package' => 'Добави пакет', - 'Add IP' => 'Добави IP', + 'Add IP' => 'Добави IP адрес', 'Add Rule' => 'Добави правило', - 'Ban IP Address' => 'Бан IP Address', - 'Search' => 'Търси', - 'Add one more FTP Account' => 'Добави FTP потребител', - 'Overall Statistics' => 'Статистика', - 'Daily' => 'Дневно', - 'Weekly' => 'Седмица', - 'Monthly' => 'Месец', - 'Yearly' => 'Година', + 'Ban IP Address' => 'Блокирай IP адрес', + 'Search' => 'Търсене', + 'Add one more FTP Account' => 'Добави допълнителен FTP акаунт', + 'Overall Statistics' => 'Обща статистика', + 'Daily' => 'Всеки ден', + 'Weekly' => 'Всяка седмица', + 'Monthly' => 'Всеки месец', + 'Yearly' => 'Всяка година', 'Add' => 'Добави', 'Back' => 'Назад', 'Save' => 'Запази', - 'Submit' => 'Изпрати', + 'Submit' => 'Вложи', - 'toggle all' => 'Избери всички', - 'apply to selected' => 'изпълни маркираните', - 'rebuild' => 'поправи', - 'rebuild web' => 'поправи web', - 'rebuild dns' => 'поправи dns', - 'rebuild mail' => 'поправи mail', - 'rebuild db' => 'поправи db', - 'rebuild cron' => 'поправи cron', - 'update counters' => 'оибнови брочи', - 'suspend' => 'Забрани', - 'unsuspend' => 'Разреши', - 'delete' => 'изтриване', - 'show per user' => 'покажи за всеки', - 'login as' => 'Влез като', - 'logout' => 'Изход', - 'edit' => 'Редакция', - 'open webstats' => 'отвори статистика', - 'view logs' => 'виж логовете', - 'list records' => 'list %s records', - 'add record' => 'нов запис', - 'list accounts' => 'list %s accounts', - 'add account' => 'add account', - 'open webmail' => 'open webmail', - 'list fail2ban' => 'list fail2ban', - 'open %s' => 'open %s', - 'download' => 'сваляне', - 'restore' => 'възстанови', - 'configure restore settings' => 'configure restore settings', + 'toggle all' => 'избери всичко', + 'apply to selected' => 'приложи за избраните', + 'rebuild' => 'възстанови', + 'rebuild web' => 'възстанови уеб', + 'rebuild dns' => 'възстанови dns', + 'rebuild mail' => 'възстанови поща', + 'rebuild db' => 'възстанови база данни', + 'rebuild cron' => 'възстанови cron', + 'update counters' => 'обнови броячите', + 'suspend' => 'спри', + 'unsuspend' => 'активирай', + 'delete' => 'изтрий', + 'show per user' => 'покажи за потребителя', + 'login as' => 'влез като', + 'logout' => 'излез', + 'edit' => 'редактирай', + 'open webstats' => 'отвори уеб статистика', + 'view logs' => 'прегледай логове', + 'list records' => 'покажи списък с %s записи', + 'add record' => 'добави запис', + 'list accounts' => 'покажи списък с %s акаунта', + 'add account' => 'добави акаунт', + 'open webmail' => 'oтвори уеб поща', + 'list fail2ban' => 'покажи fail2ban списък', + 'open %s' => 'отвори %s', + 'download' => 'изтегли', + 'restore' => 'възобнови', + 'configure restore settings' => 'конфигурирай настройките за възобновяване', 'stop' => 'стоп', 'start' => 'старт', 'restart' => 'рестарт', 'update' => 'обнови', - 'generate' => 'generate', - 'Generate CSR' => 'Generate CSR', - 'reread IP' => 'reread IP', - 'enable autoupdate' => 'enable autoupdate', - 'disable autoupdate' => 'disable autoupdate', - 'turn on notifications' => 'turn on notifications', - 'turn off notifications' => 'turn off notifications', - 'configure' => 'configure', + 'generate' => 'генерирай', + 'Generate CSR' => 'Генерирай CSR', + 'reread IP' => 'зареди наново IP адреса', + 'enable autoupdate' => 'позволи автоматичното обновяване', + 'disable autoupdate' => 'забрани автоматичното обновяване', + 'turn on notifications' => 'включи известията', + 'turn off notifications' => 'изключи известията', - 'Adding User' => 'Adding User', - 'Editing User' => 'Editing User', - 'Adding Domain' => 'Adding Domain', - 'Editing Domain' => 'Editing Domain', - 'Adding DNS Domain' => 'Adding DNS Domain', - 'Editing DNS Domain' => 'Editing DNS Domain', - 'Adding DNS Record' => 'Adding DNS Record', - 'Editing DNS Record' => 'Editing DNS Record', - 'Adding Mail Domain' => 'Adding Mail Domain', - 'Editing Mail Domain' => 'Editing Mail Domain', - 'Adding Mail Account' => 'Adding Mail Account', - 'Editing Mail Account' => 'Editing Mail Account', - 'Adding database' => 'Adding database', - 'Editing Cron Job' => 'Editing Cron Job', - 'Adding Cron Job' => 'Adding Cron Job', - 'Editing Database' => 'Editing Database', - 'Adding Package' => 'Adding Package', - 'Editing Package' => 'Editing Package', - 'Adding IP address' => 'Adding IP address', - 'Editing IP Address' => 'Editing IP Address', - 'Editing Backup Exclusions' => 'Editing Backup Exclusions', - 'Generating CSR' => 'Generating CSR', - 'Listing' => 'Listing', - 'Search Results' => 'Search Results', - 'Adding Firewall Rule' => 'Adding Firewall Rule', - 'Editing Firewall Rule' => 'Editing Firewall Rule', - 'Adding IP Address to Banlist' => 'Adding IP Address to Banlist', + 'Adding User' => 'Добавяне на потребител', + 'Editing User' => 'Редактиране на потребител', + 'Adding Domain' => 'Добавяне на домейн', + 'Editing Domain' => 'Редактиране на домейн', + 'Adding DNS Domain' => 'Добавяне на DNS домейн', + 'Editing DNS Domain' => 'Редактиране на DNS домейн', + 'Adding DNS Record' => 'Добавяне на DNS запис', + 'Editing DNS Record' => 'Редактиране на DNS запис', + 'Adding Mail Domain' => 'Добавяне на пощенски домейн', + 'Editing Mail Domain' => 'Редактиране на пощенски домейн', + 'Adding Mail Account' => 'Добавяне на пощенски акаунт', + 'Editing Mail Account' => 'Редактиране на пощенски акаунт', + 'Adding database' => 'Добавяне на база данни', + 'Editing Cron Job' => 'Добавяне на Cron Job', + 'Adding Cron Job' => 'Редактиране на Cron Job', + 'Editing Database' => 'Редактиране на база данни', + 'Adding Package' => 'Добавяне на пакет', + 'Editing Package' => 'Редактиране на пакет', + 'Adding IP address' => 'Добавяне на IP адрес', + 'Editing IP Address' => 'Редактиране на IP адрес', + 'Editing Backup Exclusions' => 'Редактиране на изключения от резервно копие', + 'Generating CSR' => 'Генериране на CSR', + 'Listing' => 'Показване на списък', + 'Search Results' => 'Търси резултати', + 'Adding Firewall Rule' => 'Добавяне на правило за защитната стена', + 'Editing Firewall Rule' => 'Редактиране на правилото за защитната стена', + 'Adding IP Address to Banlist' => 'Добавяне на IP адрес към черния списък', + 'active' => 'активен', + 'spnd' => 'деактивиран', + 'suspended' => 'деактивиран', + 'running' => 'работещ', + 'stopped' => 'спрян', + 'outdated' => 'неактуален', + 'updated' => 'актуален', - 'active' => 'active', - 'spnd' => 'suspended', - 'suspended' => 'suspended', - 'running' => 'running', - 'stopped' => 'stopped', - 'outdated' => 'outdated', - 'updated' => 'updated', - - 'yes' => 'yes', - 'no' => 'no', - 'none' => 'none', + 'yes' => 'да', + 'no' => 'не', + 'none' => 'няма', 'pb' => 'pb', 'tb' => 'tb', 'gb' => 'gb', 'mb' => 'mb', - 'minute' => 'minute', - 'hour' => 'hour', - 'day' => 'day', - 'days' => 'days', - 'hours' => 'hours', - 'minutes' => 'minutes', - 'month' => 'month', - 'package' => 'package', - 'Bandwidth' => 'Bandwidth', - 'Disk' => 'Disk', - 'Web' => 'Web', - 'Mail' => 'Mail', - 'Databases' => 'Databases', - 'User Directories' => 'User Directories', - 'Template' => 'Template', - 'Web Template' => 'Web Template', - 'Backend Template' => 'Backend Template', - 'Proxy Template' =>'Proxy Template', - 'DNS Template' => 'DNS Template', - 'Web Domains' => 'Web Domains', - 'SSL Domains' => 'SSL Domains', - 'Web Aliases' => 'Web Aliases', - 'per domain' => 'per domain', - 'DNS Domains' => 'DNS Domains', - 'DNS domains' => 'DNS domains', - 'DNS records' => 'DNS records', - 'Name Servers' => 'Name Servers', - 'Mail Domains' => 'Mail Domains', - 'Mail Accounts' => 'Mail Accounts', + 'minute' => 'минута', + 'hour' => 'час', + 'day' => 'ден', + 'days' => 'дни', + 'hours' => 'часове', + 'minutes' => 'минути', + 'month' => 'месец', + 'package' => 'пакет', + 'Bandwidth' => 'Трафик', + 'Disk' => 'Диск', + 'Web' => 'Уеб', + 'Mail' => 'Поща', + 'Databases' => 'Бази данни', + 'User Directories' => 'Потребителски директории', + 'Template' => 'Шаблон', + 'Web Template' => 'Уеб шаблон', + 'Backend Template' => 'Готов шаблон', + 'Proxy Template' =>'Прокси шаблон', + 'DNS Template' => 'DNS шаблон', + 'Web Domains' => 'Уеб домейни', + 'SSL Domains' => 'SSL домейни', + 'Web Aliases' => 'Уеб наименувания', + 'per domain' => 'на домейн', + 'DNS Domains' => 'DNS Домейни', + 'DNS domains' => 'DNS домейни', + 'DNS records' => 'DNS записи', + 'Name Servers' => 'Сървъри за имена', + 'Mail Domains' => 'Пощенски домейни', + 'Mail Accounts' => 'Пощенски акаунти', 'Cron Jobs' => 'Cron Jobs', - 'SSH Access' => 'SSH Access', - 'IP Address' => 'IP Address', - 'IP Addresses' => 'IP Addresses', - 'Backups' => 'Backups', - 'Backup System' => 'Backup System', - 'backup exclusions' => 'backup exclusions', - 'template' => 'template', - 'SSL Support' => 'SSL Support', - 'SSL Home Directory' => 'SSL Home', - 'Lets Encrypt Support' => 'Lets Encrypt Support', + 'SSH Access' => 'SSH достъп', + 'IP Address' => 'IP адрес', + 'IP Addresses' => 'IP адреси', + 'Backups' => 'Резервни копия', + 'Backup System' => 'Система за резервни копия', + 'backup exclusions' => 'Резервни копия - изключения', + 'template' => 'шаблон', + 'SSL Support' => 'SSL поддръжка', + 'SSL Home Directory' => 'SSL начало', + 'Lets Encrypt Support' => 'Lets Encrypt поддръжка', 'Lets Encrypt' => 'Lets Encrypt', - 'Your certificate will be automatically issued in 5 minutes' => 'Your certificate will be automatically issued in 5 minutes', - 'Proxy Support' => 'Proxy Support', - 'Proxy Extensions' => 'Proxy Extensions', - 'Web Statistics' => 'Web Statistics', - 'Additional FTP Account' => 'Additional FTP', - 'Path' => 'Path', + 'Proxy Support' => 'Прокси поддръжка', + 'Proxy Extensions' => 'Прокси разширения', + 'Web Statistics' => 'Уеб статистики', + 'Additional FTP Account' => 'Допълнителни FTP акаунти', + 'Path' => 'Път', 'SOA' => 'SOA', 'TTL' => 'TTL', - 'Expire' => 'Expire', - 'Records' => 'Records', - 'Serial' => 'Serial', - 'Catchall email' => 'Catchall email', - 'AntiVirus Support' => 'AntiVirus Support', - 'AntiSpam Support' => 'AntiSpam Support', - 'DKIM Support' => 'DKIM Support', - 'Accounts' => 'Accounts', - 'Quota' => 'Quota', - 'Autoreply' => 'Autoreply', - 'Forward to' => 'Forward to', - 'Do not store forwarded mail' => 'Do not store forwarded mail', - 'IMAP hostname' => 'IMAP hostname', - 'IMAP port' => 'IMAP port', - 'IMAP security' => 'IMAP security', - 'IMAP auth method' => 'IMAP auth method', - 'SMTP hostname' => 'SMTP hostname', - 'SMTP port' => 'SMTP port', - 'SMTP security' => 'SMTP security', - 'SMTP auth method' => 'SMTP auth method', + 'Expire' => 'Изтича', + 'Records' => 'Записи', + 'Serial' => 'Сериен', + 'Catchall email' => 'Универсална поща', + 'AntiVirus Support' => 'Антивирусна поддръжка', + 'AntiSpam Support' => 'Антиспам поддръжка', + 'DKIM Support' => 'DKIM поддръжка', + 'Accounts' => 'Акаунти', + 'Quota' => 'Квота', + 'Autoreply' => 'Автоматичен отговор', + 'Forward to' => 'Препрати до', + 'Do not store forwarded mail' => 'Не съхранявай препратена поща', + 'IMAP hostname' => 'IMAP име на хост', + 'IMAP port' => 'IMAP порт', + 'IMAP security' => 'IMAP защита', + 'IMAP auth method' => 'IMAP идентификация', + 'SMTP hostname' => 'SMTP име на хост', + 'SMTP port' => 'SMTP порт', + 'SMTP security' => 'SMTP защита', + 'SMTP auth method' => 'SMTP идентификация', 'STARTTLS' => 'STARTTLS', - 'Normal password' => 'Normal password', - 'database' => 'database', - 'User' => 'User', - 'Host' => 'Host', - 'Charset' => 'Charset', - 'Min' => 'Min', - 'Hour' => 'Hour', - 'Day' => 'Day', - 'Month' => 'Month', - 'Day of week' => 'Day of week', - 'local' => 'local', - 'Run Time' => 'Run Time', - 'Backup Size' => 'Backup Size', + 'Normal password' => 'Нормална парола', + 'database' => 'база данни', + 'User' => 'Потребител', + 'Host' => 'Хост', + 'Charset' => 'Символи', + 'Min' => 'Минути', + 'Hour' => 'Час', + 'Day' => 'Ден', + 'Month' => 'Месец', + 'Day of week' => 'Ден от седмицата', + 'local' => 'локално', + 'Run Time' => 'Време на изпълнение', + 'Backup Size' => 'Размер на резервното копие', 'SYS' => 'SYS', - 'Domains' => 'Domains', - 'Status' => 'Status', - 'shared' => 'shared', - 'dedicated' => 'dedicated', - 'Owner' => 'Owner', - 'Users' => 'Users', - 'Load Average' => 'Load Average', - 'Memory Usage' => 'Memory Usage', - 'APACHE2 Usage' => 'APACHE2 Usage', - 'HTTPD Usage' => 'HTTPD Usage', - 'NGINX Usage' => 'NGINX Usage', - 'MySQL Usage on localhost' => 'MySQL Usage on localhost', - 'PostgreSQL Usage on localhost' => 'PostgreSQL Usage on localhost', - 'Bandwidth Usage eth0' => 'Bandwidth Usage eth0', - 'Bandwidth Usage eth1' => 'Bandwidth Usage eth1', - 'Exim Usage' => 'Exim Usage', - 'FTP Usage' => 'FTP Usage', - 'SSH Usage' => 'SSH Usage', - 'reverse proxy' => 'reverse proxy', - 'web server' => 'web server', - 'dns server' => 'dns server', - 'mail server' => 'mail server', - 'pop/imap server' => 'pop/imap server', - 'email antivirus' => 'email antivirus', - 'email antispam' => 'email antispam', - 'database server' => 'database server', - 'ftp server' => 'ftp server', - 'job scheduler' => 'job scheduler', - 'firewall' => 'firewall', - 'brute-force monitor' => 'brute-force monitor', - 'CPU' => 'CPU', - 'Memory' => 'Memory', - 'Uptime' => 'Uptime', - 'core package' => 'core package', - 'php interpreter' => 'php interpreter', - 'internal web server' => 'internal web server', - 'Version' => 'Version', - 'Release' => 'Release', - 'Architecture' => 'Architecture', - 'Object' => 'Object', - 'Username' => 'Username', - 'Password' => 'Password', + 'Domains' => 'Домейни', + 'Status' => 'Статус', + 'shared' => 'споделен', + 'dedicated' => 'отдаден', + 'Owner' => 'Собственик', + 'Users' => 'Потребители', + 'Load Average' => 'Общи данни', + 'Memory Usage' => 'Използване на памет', + 'APACHE2 Usage' => 'Използване на APACHE2', + 'HTTPD Usage' => 'Използване на HTTPD', + 'NGINX Usage' => 'Използване на NGINX', + 'MySQL Usage on localhost' => 'Използване на MySQL на локалната машина', + 'PostgreSQL Usage on localhost' => 'Използване на PostgreSQL на локалната машина', + 'Bandwidth Usage eth0' => 'Използване на честотна лента eth0', + 'Bandwidth Usage eth1' => 'Използване на честотна лента eth1', + 'Exim Usage' => 'Използване на Exim', + 'FTP Usage' => 'Използване на FTP', + 'SSH Usage' => 'Използване на SSH', + 'reverse proxy' => 'обърни прокси', + 'web server' => 'уеб сървър', + 'dns server' => 'dns сървър', + 'mail server' => 'пощенски сървър', + 'pop/imap server' => 'pop/imap сървър', + 'email antivirus' => 'email антивирус', + 'email antispam' => 'email антиспам', + 'database server' => 'сървър на база данни', + 'ftp server' => 'ftp сървър', + 'job scheduler' => 'органайзер за работа', + 'firewall' => 'защитна стена', + 'brute-force monitor' => 'brute-force монитор', + 'CPU' => 'Процесор', + 'Memory' => 'Памет', + 'Uptime' => 'Време на работа', + 'core package' => 'пакет на ядрото', + 'php interpreter' => 'php интерпретатор', + 'internal web server' => 'вътрешен уеб сървър', + 'Version' => 'Версия', + 'Release' => 'Рилийз', + 'Architecture' => 'Архитектура', + 'Object' => 'Обект', + 'Username' => 'Потребителско име', + 'Password' => 'Парола', 'Email' => 'Email', - 'Package' => 'Package', - 'Language' => 'Language', - 'First Name' => 'First Name', - 'Last Name' => 'Last Name', - 'Send login credentials to email address' => 'Send login credentials to email address', - 'Default Template' => 'Default Template', - 'Default Name Servers' => 'Default Name Servers', - 'Domain' => 'Domain', - 'DNS Support' => 'DNS Support', - 'Mail Support' => 'Mail Support', - 'Advanced options' => 'Advanced options', - 'Basic options' => 'Basic options', - 'Aliases' => 'Aliases', - 'SSL Certificate' => 'SSL Certificate', - 'SSL Key' => 'SSL Key', - 'SSL Certificate Authority / Intermediate' => 'SSL Certificate Authority / Intermediate', + 'Package' => 'Пакет', + 'Language' => 'Език', + 'First Name' => 'Име', + 'Last Name' => 'Фамилив', + 'Send login credentials to email address' => 'Изпращай информация за вписвания на email', + 'Default Template' => 'Шаблон по подразбиране', + 'Default Name Servers' => 'Име на сървър по подразбиране', + 'Domain' => 'Домейн', + 'DNS Support' => 'DNS поддръжка', + 'Mail Support' => 'Поддръжка на поща', + 'Advanced options' => 'Разширени настройки', + 'Basic options' => 'Стандартни настройки', + 'Aliases' => 'Псевдоними', + 'SSL Certificate' => 'SSL сертификат', + 'SSL Key' => 'SSL ключ', + 'SSL Certificate Authority / Intermediate' => 'SSL сертификат / средно ниво', 'SSL CSR' => 'SSL CSR', - 'optional' => 'optional', - 'internal' => 'internal', - 'Statistics Authorization' => 'Statistics Authorization', - 'Statistics Auth' => 'Statistics Auth', - 'Account' => 'Account', - 'Prefix will be automaticaly added to username' => 'Prefix %s will be automaticaly added to username', - 'Send FTP credentials to email' => 'Send FTP credentials to email', - 'Expiration Date' => 'Expiration Date', - 'YYYY-MM-DD' => 'YYYY-MM-DD', - 'Name servers' => 'Name servers', - 'Record' => 'Record', - 'IP or Value' => 'IP or Value', - 'Priority' => 'Priority', - 'Record Number' => 'Record Number', - 'in megabytes' => 'in megabytes', - 'Message' => 'Message', - 'use local-part' => 'use local-part', - 'one or more email addresses' => 'one or more email addresses', - 'Prefix will be automaticaly added to database name and database user' => 'Prefix %s will be automaticaly added to database name and database user.', - 'Database' => 'Database', - 'Type' => 'Type', - 'Minute' => 'Minute', - 'Command' => 'Command', - 'Package Name' => 'Package Name', + 'optional' => 'незадължителен', + 'internal' => 'вътрешвн', + 'Statistics Authorization' => 'Идентификация за статистики', + 'Statistics Auth' => 'Идентификация за статистики', + 'Account' => 'Акаунт', + 'Prefix will be automaticaly added to username' => 'Префикс %s ще бъде автоматично добавен към потребителското име', + 'Send FTP credentials to email' => 'Изпращай информация относно FTP на email', + 'Expiration Date' => 'Крайна дата', + 'YYYY-MM-DD' => 'ГГГГ-ММ-ДД', + 'Name servers' => 'Сървъри с имена', + 'Record' => 'Запис', + 'IP or Value' => 'IP или стойност', + 'Priority' => 'Приоритет', + 'Record Number' => 'Запиши номер', + 'in megabytes' => 'в мегабайти', + 'Message' => 'Съобщение', + 'use local-part' => 'използвай local-part', + 'one or more email addresses' => 'един или повече email адреса', + 'Prefix will be automaticaly added to database name and database user' => 'Префикс %s ще бъде автоматично добавен към името на базата данни и потребителското име.', + 'Database' => 'База данни', + 'Type' => 'Въведи', + 'Minute' => 'Минута', + 'Command' => 'Команда', + 'Package Name' => 'Номер на пакет', 'Netmask' => 'Netmask', - 'Interface' => 'Interface', - 'Shared' => 'Shared', - 'Assigned user' => 'Assigned user', - 'Assigned domain' => 'Assigned domain', - 'NAT IP association' => 'NAT IP association', + 'Interface' => 'Интерфейс', + 'Shared' => 'Споделен', + 'Assigned user' => 'Назначен потребител', + 'Assigned domain' => 'Назначен домейн', + 'NAT IP association' => 'NAT IP асоциация', 'shell' => 'shell', - 'web domains' => 'web domains', - 'web aliases' => 'web aliases', - 'dns records' => 'dns records', - 'mail domains' => 'mail domains', - 'mail accounts' => 'mail accounts', - 'accounts' => 'accounts', - 'databases' => 'databases', + 'web domains' => 'уеб домейни', + 'web aliases' => 'уеб псевдоними', + 'dns records' => 'dns записи', + 'mail domains' => 'пощенски домейни', + 'mail accounts' => 'пощенски акаунти', + 'accounts' => 'акаунти', + 'databases' => 'бази данни', 'cron jobs' => 'cron jobs', - 'backups' => 'backups', - 'quota' => 'quota', - 'day of week' => 'day of week', + 'backups' => 'резервни копия', + 'quota' => 'квота', + 'day of week' => 'ден от седмицата', 'cmd' => 'cmd', - 'users' => 'users', - 'domains' => 'domains', - 'aliases' => 'aliases', - 'records' => 'records', - 'jobs' => 'jobs', - 'username' => 'username', - 'password' => 'password', - 'type' => 'type', - 'charset' => 'charset', - 'domain' => 'domain', + 'users' => 'потребители', + 'domains' => 'домейни', + 'aliases' => 'псевдоними', + 'records' => 'записи', + 'jobs' => 'работа', + 'username' => 'потребителско име', + 'password' => 'парола', + 'type' => 'тип', + 'charset' => 'символи', + 'domain' => 'домейн', 'ip' => 'ip', - 'ip address' => 'ip address', - 'IP address' => 'IP address', + 'ip address' => 'ip адрес', + 'IP address' => 'IP адрес', 'netmask' => 'netmask', - 'interface' => 'interface', - 'assigned user' => 'assigned user', + 'interface' => 'интерфейс', + 'assigned user' => 'назначен потребител', 'ns1' => 'ns1', 'ns2' => 'ns2', - 'user' => 'user', + 'user' => 'потребител', 'email' => 'email', - 'first name' => 'first name', - 'last name' => 'last name', - 'account' => 'account', - 'ssl certificate' => 'ssl certificate', - 'ssl key' => 'ssl key', - 'stats user password' => 'stats user password', - 'stats username' => 'stats username', - 'stats password' => 'stats password', - 'ftp user password' => 'ftp user password', - 'ftp user' => 'ftp user', - 'Last 70 lines of %s.%s.log' => 'Last 70 lines of %s.%s.log', + 'first name' => 'име', + 'last name' => 'фамилия', + 'account' => 'акаунт', + 'ssl certificate' => 'ssl сертификат', + 'ssl key' => 'ssl ключ', + 'stats user password' => 'статистика за потребителска парола', + 'stats username' => 'статистика за потребителско име', + 'stats password' => 'статистика за парола', + 'ftp user password' => 'ftp потребителска парола', + 'ftp user' => 'ftp потребител', + 'Last 70 lines of %s.%s.log' => 'Последните 70 реда от лога за %s.%', 'AccessLog' => 'AccessLog', 'ErrorLog' => 'ErrorLog', - 'Download AccessLog' => 'Download AccessLog', - 'Download ErrorLog' => 'Download ErrorLog', - 'Country' => 'Country', - '2 letter code' => '2 letter code', - 'State / Province' => 'State / Province', - 'City / Locality' => 'City / Locality', - 'Organization' => 'Organization', - 'Action' => 'Action', - 'Protocol' => 'Protocol', - 'Port' => 'Port', - 'Comment' => 'Comment', - 'Banlist' => 'Banlist', - 'ranges are acceptable' => 'ranges are acceptable', - 'CIDR format is supported' => 'CIDR format is supported', - 'ACCEPT' => 'ACCEPT', - 'DROP' => 'DROP', + 'Download AccessLog' => 'Изтегли AccessLog', + 'Download ErrorLog' => 'Изтегли ErrorLog', + 'Country' => 'Страна', + '2 letter code' => '2-буквен код', + 'State / Province' => 'Щат / Провинция', + 'City / Locality' => 'Град / Местност', + 'Organization' => 'Организация', + 'Action' => 'Начало', + 'Protocol' => 'Протокол', + 'Port' => 'Порт', + 'Comment' => 'Коментар', + 'Banlist' => 'Черен списък', + 'ranges are acceptable' => 'стойностите са приемливи', + 'CIDR format is supported' => 'CIDR форматът се поддържа', + 'ACCEPT' => 'ПРИЕМИ', + 'DROP' => 'ПУСНИ', 'TCP' => 'TCP', 'UDP' => 'UDP', 'ICMP' => 'ICMP', 'SSH' => 'SSH', 'FTP' => 'FTP', 'VESTA' => 'VESTA', - 'Add one more Name Server' => 'Add one more Name Server', + 'Add one more Name Server' => 'Добави допълнителен сървър за имена', - 'web domain' => 'web domain', - 'dns domain' => 'dns domain', - 'dns record' => 'dns record', - 'mail domain' => 'mail domain', - 'mail account' => 'mail account', + 'web domain' => 'уеб домейн', + 'dns domain' => 'dns домейн', + 'dns record' => 'dns запис', + 'mail domain' => 'пощенски домейн', + 'mail account' => 'пощенски акаунт', 'cron job' => 'cron job', 'cron' => 'cron', - 'user dir' => 'user dir', + 'user dir' => 'потребителска директория', - 'unlimited' => 'unlimited', - '1 account' => '1 account', - '%s accounts' => '%s accounts', - '1 domain' => '1 domain', - '%s domains' => '%s domains', - '1 record' => '1 record', - '%s records' => '%s records', - '1 mail account' => '1 mail account', - '%s mail accounts' => '%s mail accounts', - '1 database' => '1 database', - '%s databases' => '%s databases', + 'unlimited' => 'неограничен', + '1 account' => '1 акаунт', + '%s accounts' => '%s акаунта', + '1 domain' => '1 домейн', + '%s domains' => '%s домейна', + '1 record' => '1 запис', + '%s records' => '%s записи', + '1 mail account' => '1 пощенски акаунт', + '%s mail accounts' => '%s пощенски акаунта', + '1 database' => '1 база данни', + '%s databases' => '%s бази данни', '1 cron job' => '1 cron job', '%s cron jobs' => '%s cron jobs', - '1 archive' => '1 archive', - '%s archives' => '%s archives', - '1 item' => '1 item', - '%s items' => '%s items', - '1 package' => '1 package', - '%s packages' => '%s packages', - '1 IP address' => '1 IP address', - '%s IP addresses' => '%s IP addresses', - '1 month' => '1 month', - '%s months' => '%s months', - '1 log record' => '1 log record', - '%s log records' => '%s log records', - '1 object' => '1 object', - '%s objects' => '%s objects', - 'no exclusions' => 'no exclusions', - '1 rule' => '1 rule', - '%s rules' => '%s rules', - 'There are no currently banned IP' => 'There are no currently banned IP', + '1 archive' => '1 архив', + '%s archives' => '%s архива', + '1 item' => '1 артикул', + '%s items' => '%s артикула', + '1 package' => '1 пакет', + '%s packages' => '%s пакета', + '1 IP address' => '1 IP адрес', + '%s IP addresses' => '%s IP адреса', + '1 month' => '1 месец', + '%s months' => '%s месеца', + '1 log record' => '1 log запис', + '%s log records' => '%s log записа', + '1 object' => '1 обект', + '%s objects' => '%s обекта', + 'no exclusions' => 'без изключения', + '1 rule' => '1 правило', + '%s rules' => '%s правила', + 'There are no currently banned IP' => 'Няма блокирани IP-та', - 'USER_CREATED_OK' => 'User %s has been created successfully.', - 'WEB_DOMAIN_CREATED_OK' => 'Domain %s has been created successfully.', - 'DNS_DOMAIN_CREATED_OK' => 'DNS domain %s has been created successfully.', - 'DNS_RECORD_CREATED_OK' => 'Record %s.%s has been created successfully.', - 'MAIL_DOMAIN_CREATED_OK' => 'Mail domain %s has been created successfully.', - 'MAIL_ACCOUNT_CREATED_OK' => 'Mail account %s@%s has been created successfully.', - 'DATABASE_CREATED_OK' => 'Database %s has been created successfully.', - 'CRON_CREATED_OK' => 'Cron job has been created successfully.', - 'IP_CREATED_OK' => 'IP address %s has been created successfully.', - 'PACKAGE_CREATED_OK' => 'Package %s has been created successfully.', - 'SSL_GENERATED_OK' => 'Certificate has been generated successfully.', - 'RULE_CREATED_OK' => 'Rule has been created successfully.', - 'BANLIST_CREATED_OK' => 'IP address has been banned successfully', - 'Autoupdate has been successfully enabled' => 'Autoupdate has been successfully enabled.', - 'Autoupdate has been successfully disabled' => 'Autoupdate has been successfully disabled.', - 'Cronjob email reporting has been successfully enabled' => 'Cronjob email reporting has been successfully enabled', - 'Cronjob email reporting has been successfully disabled' => 'Cronjob email reporting has been successfully disabled', - 'Changes has been saved.' => 'Changes have been saved.', - 'Confirmation' => 'Confirmation', - 'DELETE_USER_CONFIRMATION' => 'Are you sure you want to delete user %s?', - 'SUSPEND_USER_CONFIRMATION' => 'Are you sure you want to suspend user %s?', - 'UNSUSPEND_USER_CONFIRMATION' => 'Are you sure you want to unsuspend user %s?', - 'DELETE_DOMAIN_CONFIRMATION' => 'Are you sure you want to delete domain %s?', - 'SUSPEND_DOMAIN_CONFIRMATION' => 'Are you sure you want to suspend domain %s?', - 'UNSUSPEND_DOMAIN_CONFIRMATION' => 'Are you sure you want to unsuspend domain %s?', - 'DELETE_RECORD_CONFIRMATION' => 'Are you sure you want to delete record %s?', - 'SUSPEND_RECORD_CONFIRMATION' => 'Are you sure you want to suspend record %s?', - 'UNSUSPEND_RECORD_CONFIRMATION' => 'Are you sure you want to unsuspend record %s?', - 'DELETE_MAIL_ACCOUNT_CONFIRMATION' => 'Are you sure you want to delete %s?', - 'SUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Are you sure you want to suspend %s?', - 'UNSUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Are you sure you want to unsuspend %s?', - 'DELETE_DATABASE_CONFIRMATION' => 'Are you sure you want to delete database %s?', - 'SUSPEND_DATABASE_CONFIRMATION' => 'Are you sure you want to suspend database %s?', - 'UNSUSPEND_DATABASE_CONFIRMATION' => 'Are you sure you want to unsuspend database %s?', - 'DELETE_CRON_CONFIRMATION' => 'Are you sure you want to delete cron job?', - 'SUSPEND_CRON_CONFIRMATION' => 'Are you sure you want to suspend cron job?', - 'UNSUSPEND_CRON_CONFIRMATION' => 'Are you sure you want to unsuspend cron job?', - 'DELETE_BACKUP_CONFIRMATION' => 'Are you sure you want to delete %s backup?', - 'DELETE_EXCLUSION_CONFIRMATION' => 'Are you sure you want to delete %s exclusion?', - 'DELETE_PACKAGE_CONFIRMATION' => 'Are you sure you want to delete package %s?', - 'DELETE_IP_CONFIRMATION' => 'Are you sure you want to delete IP address %s?', - 'DELETE_RULE_CONFIRMATION' => 'Are you sure you want to delete rule #%s?', - 'SUSPEND_RULE_CONFIRMATION' => 'Are you sure you want to suspend rule #%s?', - 'UNSUSPEND_RULE_CONFIRMATION' => 'Are you sure you want to unsuspend rule #%s?', - 'LEAVE_PAGE_CONFIRMATION' => 'Leave Page?', - 'RESTART_CONFIRMATION' => 'Are you sure you want to restart %s?', - 'Welcome' => 'Welcome', - 'LOGGED_IN_AS' => 'Logged in as user %s', - 'Error' => 'Error', - 'Invalid username or password' => 'Invalid username or password.', - 'Invalid username or code' => 'Invalid username or code.', - 'Passwords not match' => 'Passwords do not match.', - 'Please enter valid email address.' => 'Please enter a valid email address.', - 'Field "%s" can not be blank.' => 'Field "%s" can not be blank.', - 'Password is too short.' => 'Password is too short (minimum is 6 characters)', - 'Error code:' => 'Error code: %s', - 'SERVICE_ACTION_FAILED' => '"%s" "%s" failed', - 'IP address is in use' => 'IP address is in use', - 'BACKUP_SCHEDULED' => 'Task has been added to the queue. You will receive an email notification when your backup is ready for download.', - 'BACKUP_EXISTS' => 'An existing backup is already running. Please wait for that backup to finish.', - 'RESTORE_SCHEDULED' => 'Task has been added to the queue. You will receive an email notification when your restore has been completed.', - 'RESTORE_EXISTS' => 'An existing restoration task is already running. Please wait for it to finish before launching it again.', + 'USER_CREATED_OK' => 'Потребител %s беше създаден успешно.', + 'WEB_DOMAIN_CREATED_OK' => 'Домейн %s беше създаден успешно .', + 'DNS_DOMAIN_CREATED_OK' => 'DNS домейн %s беше създаден успешно.', + 'DNS_RECORD_CREATED_OK' => 'Запис %s.%s беше създаден успешно.', + 'MAIL_DOMAIN_CREATED_OK' => 'Пощенски домейн %s беше създаден успешно.', + 'MAIL_ACCOUNT_CREATED_OK' => 'Пощенски акаунт %s@%s беше създаден успешно.', + 'DATABASE_CREATED_OK' => 'База данни %s беше създадена успешно.', + 'CRON_CREATED_OK' => 'Cron job беше създаден успешно.', + 'IP_CREATED_OK' => 'IP адрес %s беше създаден успешно.', + 'PACKAGE_CREATED_OK' => 'Пакет %s беше създаден успешно.', + 'SSL_GENERATED_OK' => 'Сертификатът беше генериран успешно.', + 'RULE_CREATED_OK' => 'Правилото беше създадено успешно.', + 'BANLIST_CREATED_OK' => 'IP адресът беше блокиран успешно', // I'm not sure about this text + 'Autoupdate has been successfully enabled' => 'Автоматичното обновяване беше включено успешно.', + 'Autoupdate has been successfully disabled' => 'Автоматичното обновяване беше изключено успешно.', + 'Cronjob email reporting has been successfully enabled' => 'Cronjob email reporting беше включен успешно', + 'Cronjob email reporting has been successfully disabled' => 'Cronjob email reporting беше изключен успешно', + 'Changes has been saved.' => 'Промените бяха запазени.', + 'Confirmation' => 'Потвърждение', + 'DELETE_USER_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете потребител %s?', + 'SUSPEND_USER_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате потребител %s?', + 'UNSUSPEND_USER_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате потребител %s?', + 'DELETE_DOMAIN_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете домейн %s?', + 'SUSPEND_DOMAIN_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате домейн %s?', + 'UNSUSPEND_DOMAIN_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате домейн %s?', + 'DELETE_RECORD_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете запис %s?', + 'SUSPEND_RECORD_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате запис %s?', + 'UNSUSPEND_RECORD_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате запис %s?', + 'DELETE_MAIL_ACCOUNT_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете %s?', + 'SUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате %s?', + 'UNSUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате %s?', + 'DELETE_DATABASE_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете база данни %s?', + 'SUSPEND_DATABASE_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате база данни %s?', + 'UNSUSPEND_DATABASE_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате база данни %s?', + 'DELETE_CRON_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете cron job?', + 'SUSPEND_CRON_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате cron job?', + 'UNSUSPEND_CRON_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате cron job?', + 'DELETE_BACKUP_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете %s резервното копие?', + 'DELETE_EXCLUSION_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете %s изключението?', + 'DELETE_PACKAGE_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете пакет %s?', + 'DELETE_IP_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете IP адрес %s?', + 'DELETE_RULE_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете правило #%s?', + 'SUSPEND_RULE_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате правило #%s?', + 'UNSUSPEND_RULE_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате правило #%s?', + 'LEAVE_PAGE_CONFIRMATION' => 'Напускане на страницата?', + 'RESTART_CONFIRMATION' => 'Сигурни ли сте, че искате да рестартирате %s?', + 'Welcome' => 'Добре дошли', + 'LOGGED_IN_AS' => 'Вписани сте като %s', + 'Error' => 'Грешка', + 'Invalid username or password' => 'Невалидно потребителско име или парола.', + 'Invalid username or code' => 'Невалидно потребителско име или код.', + 'Passwords not match' => 'Паролите не съвпадат.', + 'Please enter valid email address.' => 'Моля, въведете валиден email адрес.', + 'Field "%s" can not be blank.' => 'Поле "%s" е задължително.', + 'Password is too short.' => 'Паролата е твърде къса (минимум 6 символа)', + 'Error code:' => 'Код на грешката: %s', + 'SERVICE_ACTION_FAILED' => '"%s" "%s" отказа', + 'IP address is in use' => 'IP адресът се използва в момента', + 'BACKUP_SCHEDULED' => 'Задачата е на изчакване. Ще бъдете уведомени по email веднага щом резервното копие стане достъпно за изтегляне.', + 'BACKUP_EXISTS' => 'Друго резервно копие е в действие. Моля, изчакайте приключване.', + 'RESTORE_SCHEDULED' => 'Задачата е на изчакване. Ще бъдете уведомени по email веднага щом възстановяването приключи.', + 'RESTORE_EXISTS' => 'Друго възстановяване е в действие. Моля, изчакайте приключване преди повторно зареждане.', - 'WEB_EXCLUSIONS' => 'Type domain name, one per line. To exclude all domains use *. To exclude specific dirs use following format: domain.com:public_html/cache:public_html/tmp', - 'DNS_EXCLUSIONS' => 'Type domain name, one per line. To exclude all domains use *', - 'MAIL_EXCLUSIONS' => 'Type domain name, one per line. To exclude all domains use *. To exclude specific accounts use following format: domain.com:info:support:postmaster', - 'DB_EXCLUSIONS' => 'Type full database name, one per line. To exclude all databases use *', - 'CRON_EXCLUSIONS' => 'To exclude all jobs use *', - 'USER_EXCLUSIONS' => 'Type directory name, one per line. To exlude all dirs use *', + 'WEB_EXCLUSIONS' => 'Въведете име на домейн, по едно на ред. За да изключите използването всички домейни *. За изключване на конкретни директории: domain.com:public_html/cache:public_html/tmp', + 'DNS_EXCLUSIONS' => 'Въведете име на домейн, по едно на ред. За да изключите използването всички домейни *', + 'MAIL_EXCLUSIONS' => 'Въведете име на домейн, по едно на ред. За да изключите използването всички домейни *. За изключване на конкретни акаунти, използвайте: domain.com:info:support:postmaster', + 'DB_EXCLUSIONS' => 'Въведете пълно име на база данни, по едно на ред. За да изключите всички бази данни, използвайте *', + 'CRON_EXCLUSIONS' => 'За да изключите всички задачи, използвайте *', + 'USER_EXCLUSIONS' => 'Въведете име на директория, по едно на ред. За да изключите всички директории, използвайте *', - 'Welcome to Vesta Control Panel' => 'Welcome to Vesta Control Panel', - 'MAIL_FROM' => 'Vesta Control Panel ', - 'GREETINGS_GORDON_FREEMAN' => "Hello, %s %s,\n", - 'GREETINGS' => "Hello,\n", - 'ACCOUNT_READY' => "Your account has been created and is ready for use.\n\nhttps://%s/login/\nUsername: %s\nPassword: %s\n\n--\nVesta Control Panel\n", + 'Welcome to Vesta Control Panel' => 'Добре дошли във Контролния панел на Vesta', + 'MAIL_FROM' => 'Контролният панел на Vesta ', + 'GREETINGS_GORDON_FREEMAN' => "Здравейте, %s %s,\n", + 'GREETINGS' => "Здравейте,\n", + 'ACCOUNT_READY' => "Акаунтът ви беше създаден успешно и вече е готов за употреба.\n\nhttps://%s/login/\nUsername: %s\nPassword: %s\n\n--\nVesta Control Panel\n", + 'FTP login credentials' => 'Данни за FTP вход', + 'FTP_ACCOUNT_READY' => "FTP акаунтът ви беше създаден успешно и вече е готов за употреба.\n\nHostname: %s\nUsername: %s_%s\nPassword: %s\n\n--\nVesta Control Panel\n", - 'FTP login credentials' => 'FTP login credentials', - 'FTP_ACCOUNT_READY' => "FTP account has been created and is ready for use.\n\nHostname: %s\nUsername: %s_%s\nPassword: %s\n\n--\nVesta Control Panel\n", + 'Database Credentials' => 'Информация за база дснни', + 'DATABASE_READY' => "Базата данни беше създадена успешно.\n\nDatabase: %s\nUser: %s\nPassword: %s\n%s\n\n--\nVesta Control Panel\n", - 'Database Credentials' => 'Database Credentials', - 'DATABASE_READY' => "Database has been created successfully.\n\nDatabase: %s\nUser: %s\nPassword: %s\n%s\n\n--\nVesta Control Panel\n", + 'forgot password' => 'забравена парола', + 'Confirm' => 'Потвърди', + 'New Password' => 'Нова парола', + 'Confirm Password' => 'Потвърди паролата', + 'Reset' => 'Възстанови', + 'Reset Code' => 'Код за възстановяване', + 'RESET_NOTICE' => '', // should we add something here? I don't think it's needed. + 'RESET_CODE_SENT' => 'Кодът за възстановяване на паролата беше изпратен успешно на вашия email
', + 'MAIL_RESET_SUBJECT' => 'Паролата е възстановена на %s', + 'PASSWORD_RESET_REQUEST' => "За да възстановите паролата за контролния панел, моля използвайте следния линк:\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\nAlternatively, you may go to https://%s/reset/?action=code&user=%s and enter the following reset code:\n%s\n\nIf you did not request password reset, please ignore this message and accept our apologies.\n\n--\nVesta Control Panel\n", - 'forgot password' => 'forgot password', - 'Confirm' => 'Confirm', - 'New Password' => 'New Password', - 'Confirm Password' => 'Confirm Password', - 'Reset' => 'Reset', - 'Reset Code' => 'Reset Code', - 'RESET_NOTICE' => '', - 'RESET_CODE_SENT' => 'Password reset code has been sent to your email address
', - 'MAIL_RESET_SUBJECT' => 'Password Reset at %s', - 'PASSWORD_RESET_REQUEST' => "To reset your control panel password, please follow this link:\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\nAlternatively, you may go to https://%s/reset/?action=code&user=%s and enter the following reset code:\n%s\n\nIf you did not request password reset, please ignore this message and accept our apologies.\n\n--\nVesta Control Panel\n", + 'Jan' => 'Януари', + 'Feb' => 'Февруари', + 'Mar' => 'Март', + 'Apr' => 'Април', + 'May' => 'Май', + 'Jun' => 'Юни', + 'Jul' => 'Юли', + 'Aug' => 'Август', + 'Sep' => 'Септември', + 'Oct' => 'Октомври', + 'Nov' => 'Ноември', + 'Dec' => 'Декември', - 'Jan' => 'Jan', - 'Feb' => 'Feb', - 'Mar' => 'Mar', - 'Apr' => 'Apr', - 'May' => 'May', - 'Jun' => 'Jun', - 'Jul' => 'Jul', - 'Aug' => 'Aug', - 'Sep' => 'Sep', - 'Oct' => 'Oct', - 'Nov' => 'Nov', - 'Dec' => 'Dec', - - 'Configuring Server' => 'Configuring Server', - 'Hostname' => 'Hostname', - 'Time Zone' => 'Time Zone', - 'Default Language' => 'Default Language', - 'Proxy Server' => 'Proxy Server', - 'Web Server' => 'Web Server', - 'Backend Server' => 'Backend Server', - 'Backend Pool Mode' => 'Backend Pool Mode', - 'DNS Server' => 'DNS Server', - 'DNS Cluster' => 'DNS Cluster', - 'MAIL Server' => 'MAIL Server', - 'Antivirus' => 'Antivirus', - 'AntiSpam' => 'AntiSpam', - 'Webmail URL' => 'Webmail URL', - 'MySQL Support' => 'MySQL Support', - 'phpMyAdmin URL' => 'phpMyAdmin URL', - 'PostgreSQL Support' => 'PostgreSQL Support', - 'phpPgAdmin URL' => 'phpPgAdmin URL', - 'Maximum Number Of Databases' => 'Maximum Number Of Databases', - 'Current Number Of Databases' => 'Current Number Of Databases', - 'Local backup' => 'Local backup', - 'Compression level' => 'Compression level', - 'Directory' => 'Directory', - 'Remote backup' => 'Remote backup', + 'Configuring Server' => 'Конфигуриране на сървъра', + 'Hostname' => 'Име на хост', + 'Time Zone' => 'Часова зона', + 'Default Language' => 'Език по подразбиране', + 'Proxy Server' => 'Прокси сървър', + 'Web Server' => 'Уеб сървър', + 'Backend Server' => 'Бекенд сървър', + 'Backend Pool Mode' => 'Backend Pool режим', + 'DNS Server' => 'DNS сървър', + 'DNS Cluster' => 'DNS клъстър', + 'MAIL Server' => 'Пощенски сървър', + 'Antivirus' => 'Антивирус', + 'AntiSpam' => 'Антиспам', + 'Webmail URL' => 'Уебмейл адрес', + 'MySQL Support' => 'MySQL поддръжкс', + 'phpMyAdmin URL' => 'phpMyAdmin адрес', + 'PostgreSQL Support' => 'PostgreSQL поддръжка', + 'phpPgAdmin URL' => 'phpPgAdmin адрес', + 'Maximum Number Of Databases' => 'Максимален брой бази данни', + 'Current Number Of Databases' => 'Текущ брой бази данни', + 'Local backup' => 'Местно резервно копие', + 'Compression level' => 'Ниво на компресия', + 'Directory' => 'Директория', + 'Remote backup' => 'Отдалечено резервно копие', 'ftp' => 'FTP', 'sftp' => 'SFTP', 'SFTP Chroot' => 'SFTP Chroot', - 'FileSystem Disk Quota' => 'FileSystem Disk Quota', - 'Vesta Control Panel Plugins' => 'Vesta Control Panel Plugins', - 'preview' => 'preview', - 'Reseller Role' => 'Reseller Role', - 'Web Config Editor' => 'Web Config Editor', - 'Template Manager' => 'Template Manager', - 'Backup Migration Manager' => 'Backup Migration Manager', - 'FileManager' => 'FileManager', - 'show: CPU / MEM / NET / DISK' => 'show: CPU / MEM / NET / DISK', + 'FileSystem Disk Quota' => 'Квота на файловата система на диска', + 'Vesta Control Panel Plugins' => 'Допълнения за контролния панел на Vesta', + 'preview' => 'преглед', + 'Reseller Role' => 'Reseller роля', + 'Web Config Editor' => 'Web Config редактор', + 'Template Manager' => 'Мениджър на шаблони', + 'Backup Migration Manager' => 'Мениджър на преминаването към резервни копия', + 'FileManager' => 'Файлов мениджър', + 'show: CPU / MEM / NET / DISK' => 'покажи: CPU / MEM / NET / DISK', - 'sort by' => 'sort by', - 'Date' => 'Date', - 'Starred' => 'Starred', - 'Name' => 'Name', + 'sort by' => 'подреди по', + 'Date' => 'Дата', + 'Starred' => 'Използвани', + 'Name' => 'Име', - 'save to favorites' => 'save to favorites', + 'save to favorites' => 'запази в любими', - 'File Manager' => 'File Manager', - 'size' => 'size', - 'date' => 'date', - 'name' => 'name', - 'Initializing' => 'Initializing', - 'UPLOAD' => 'UPLOAD', - 'NEW FILE' => 'NEW FILE', - 'NEW DIR' => 'NEW DIR', - 'DELETE' => 'DELETE', - 'RENAME' => 'RENAME', - 'MOVE' => 'MOVE', - 'RIGHTS' => 'RIGHTS', - 'COPY' => 'COPY', - 'ARCHIVE' => 'ARCHIVE', - 'EXTRACT' => 'EXTRACT', - 'DOWNLOAD' => 'DOWNLOAD', - 'Are you sure?' => 'Are you sure?', - 'Hit' => 'Hit', - 'to reload the page' => 'to reload the page', - 'Directory name cannot be empty' => 'Directory name cannot be empty', - 'File name cannot be empty' => 'File name cannot be empty', - 'No file selected' => 'No file selected', - 'No file or folder selected' => 'No file or folder selected', - 'File type not supported' => 'File type not supported', - 'Directory download not available in current version' => 'Directory download not available in current version', - 'Directory not available' => 'Directory not available', - 'Done' => 'Done', - 'Close' => 'Close', - 'Copy' => 'Copy', - 'Cancel' => 'Cancel', - 'Rename' => 'Rename', - 'Move' => 'Move', - 'Change Rights' => 'Change Rights', - 'Delete' => 'Delete', - 'Extract' => 'Extract', - 'Create' => 'Create', - 'Compress' => 'Compress', + 'File Manager' => 'Файлов мениджър', + 'size' => 'размер', + 'date' => 'дата', + 'name' => 'име', + 'Initializing' => 'инициализиране', + 'UPLOAD' => 'КАЧИ', + 'NEW FILE' => 'НОВ ФАЙЛ', + 'NEW DIR' => 'НОВА ДИРЕКТОРИЯ', + 'DELETE' => 'ИЗТРИЙ', + 'RENAME' => 'ПРЕИМЕНУВАЙ', + 'MOVE' => 'ПРЕМЕСТИ', + 'RIGHTS' => 'ПРАВА', + 'COPY' => 'КОПИРАЙ', + 'ARCHIVE' => 'АРХИВИРАЙ', + 'EXTRACT' => 'ИЗВЛЕЧИ', + 'DOWNLOAD' => 'ИЗТЕГЛИ', + 'Are you sure?' => 'Сигурни ли сте?', // unused? + 'Hit' => 'Натисни', + 'to reload the page' => 'за да презаредите страницата', + 'Directory name cannot be empty' => 'Въведете име на директорията', + 'File name cannot be empty' => 'Въведете име на файла', + 'No file selected' => 'Не е избран файл', + 'No file or folder selected' => 'Не са избрани папка или файл', + 'File type not supported' => 'Този формат не се поддържа', + 'Directory download not available in current version' => 'Изтегляне на директория не се поддържа в тази версия', + 'Directory not available' => 'Директорията не е налична', + 'Done' => 'Готово', + 'Close' => 'Затвори', + 'Copy' => 'Копирай', + 'Cancel' => 'Отмени', + 'Rename' => 'Преименувай', + 'Move' => 'Премести', + 'Change Rights' => 'Смени правата', + 'Delete' => 'Изтрий', + 'Extract' => 'Извлечи', + 'Create' => 'Създай', + 'Compress' => 'Компресирай', 'OK' => 'OK', - 'YOU ARE COPYING' => 'YOU ARE COPYING', - 'YOU ARE REMOVING' => 'YOU ARE REMOVING', - 'Delete items' => 'Delete items', - 'Copy files' => 'Copy files', - 'Move files' => 'Move files', - 'Are you sure you want to copy' => 'Are you sure you want to copy', - 'Are you sure you want to move' => 'Are you sure you want to move', - 'Are you sure you want to delete' => 'Are you sure you want to delete', - 'into' => 'into', - 'existing files will be replaced' => 'existing files will be replaced', - 'Original name' => 'Original name', - 'File' => 'File', - 'already exists' => 'already exists', - 'Create file' => 'Create file', - 'Create directory' => 'Create directory', - 'read by owner' => 'read by owner', - 'write by owner' => 'write by owner', - 'execute/search by owner' => 'execute/search by owner', - 'read by group' => 'read by group', - 'write by group' => 'write by group', - 'execute/search by group' => 'execute/search by group', - 'read by others' => 'read by others', - 'write by others' => 'write by others', - 'execute/search by others' => 'execute/search by others', + 'YOU ARE COPYING' => 'ВИЕ КОПИРАТЕ', // unused? + 'YOU ARE REMOVING' => 'ВИЕ ПРЕМАХВАТЕ', + 'Delete items' => 'Изтрий избраните', + 'Copy files' => 'Копирай файловете', + 'Move files' => 'Премести файловете', + 'Are you sure you want to copy' => 'Сигурни ли сте, че искате да копирате', + 'Are you sure you want to move' => 'Сигурни ли сте, че искате да преместите', + 'Are you sure you want to delete' => 'Сигурни ли сте, че искате да премахнете', + 'into' => 'въведение', + 'existing files will be replaced' => 'съществуващите файлове ще бъдат заменени', + 'Original name' => 'Първоначално име', + 'File' => 'Файл', + 'already exists' => 'вече съществува', + 'Create file' => 'Създай файл', + 'Create directory' => 'Създай директория', + 'read by owner' => 'чети като собственик', + 'write by owner' => 'пиши като собственик', + 'execute/search by owner' => 'изпълни/търси като собственик', + 'read by group' => 'чети като група', + 'write by group' => 'пиши като група', + 'execute/search by group' => 'изпълни/търси като група', + 'read by others' => 'чети като други', + 'write by others' => 'пиши като други', + 'execute/search by others' => 'изпълни/търси като други', - 'Shortcuts' => 'Shortcuts', - 'Add New object' => 'Add New object', - 'Save Form' => 'Save Form', - 'Cancel saving form' => 'Cancel saving form', - 'Go to USER list' => 'Go to USER list', - 'Go to WEB list' => 'Go to WEB list', - 'Go to DNS list' => 'Go to DNS list', - 'Go to MAIL list' => 'Go to MAIL list', - 'Go to DB list' => 'Go to DB list', - 'Go to CRON list' => 'Go to CRON list', - 'Go to BACKUP list' => 'Go to BACKUP list', - 'Focus on search' => 'Focus on search', - 'Display/Close shortcuts' => 'Display/Close shortcuts', - 'Move backward through top menu' => 'Move backward through top menu', - 'Move forward through top menu' => 'Move forward through top menu', - 'Enter focused element' => 'Enter focused element', - 'Move up through elements list' => 'Move up through elements list', - 'Move down through elements list' => 'Move down through elements list', + 'Shortcuts' => 'Преки пътища', + 'Add New object' => 'Добави нов обект', + 'Save Form' => 'Запази формата', + 'Cancel saving form' => 'Отмени запазването на формата', + 'Go to USER list' => 'Отиди в USER списъка', + 'Go to WEB list' => 'Отиди в WEB списъка', + 'Go to DNS list' => 'Отиди в DNS списъка', + 'Go to MAIL list' => 'Отиди в MAIL списъка', + 'Go to DB list' => 'Отиди в DB списъка', + 'Go to CRON list' => 'Отиди в CRON списъка', + 'Go to BACKUP list' => 'Отиди в BACKUP списъка', + 'Focus on search' => 'Фокус при търсене', + 'Display/Close shortcuts' => 'Покажи/Скрий преките пътища', + 'Move backward through top menu' => 'Върни се назад в главното меню', + 'Move forward through top menu' => 'Напред към следващото меню', + 'Enter focused element' => 'Добави елемент на фокус', + 'Move up through elements list' => 'Придвижи се нагоре в списъка с елементи', + 'Move down through elements list' => 'Придвижи се надолу в списъка с елементи', - 'Upload' => 'Upload', - 'New File' => 'New File', - 'New Folder' => 'New Folder', - 'Download' => 'Download', - 'Archive' => 'Archive', - 'Save File (in text editor)' => 'Save File (in text editor)', - 'Close Popup / Cancel' => 'Close Popup / Cancel', - 'Move Cursor Up' => 'Move Cursor Up', - 'Move Cursor Down' => 'Move Cursor Down', - 'Switch to Left Tab' => 'Switch to Left Tab', - 'Switch to Right Tab' => 'Switch to Right Tab', - 'Switch Tab' => 'Switch Tab', - 'Go to the Top of the File List' => 'Go to the Top of the File List', - 'Go to the Last File' => 'Go to the Last File', - 'Open File / Enter Directory' => 'Open File / Enter Directory', - 'Edit File' => 'Edit File', - 'Go to Parent Directory' => 'Go to Parent Directory', - 'Select Current File' => 'Select Current File', - 'Select Bunch of Files' => 'Select Bunch of Files', - 'Add File to the Current Selection' => 'Add File to the Current Selection', - 'Select All Files' => 'Select All Files', - 'shortcuts are inspired by magnificent GNU Midnight Commander file manager' => - 'shortcuts are inspired by magnificent GNU Midnight Commander file manager', - - 'Licence Key' => 'Licence Key', - 'Enter License Key' => 'Enter License Key', - 'Buy Licence' => 'Buy Licence', - 'Buy Lifetime License' => 'Buy Lifetime License', - 'Disable and Cancel Licence' => 'Disable and Cancel Licence', - 'Licence Activated' => 'Licence Activated', - 'Licence Deactivated' => 'Licence Deactivated', - 'Restrict users so that they cannot use SSH and access only their home directory.' => 'Restrict users so that they cannot use SSH and access only their home directory.', - 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.', - 'This is a commercial module, you would need to purchace license key to enable it.' => 'This is a commercial module, you would need to purchace license key to enable it.', - - 'Minutes' => 'Minutes', - 'Hourly' => 'Hourly', - 'Run Command' => 'Run Command', - 'every month' => 'every month', - 'every odd month' => 'every odd month', - 'every even month' => 'every even month', - 'every day' => 'every day', - 'every odd day' => 'every odd day', - 'every even day' => 'every even day', - 'weekdays (5 days)' => 'weekdays (5 days)', - 'weekend (2 days)' => 'weekend (2 days)', - 'Monday' => 'Monday', - 'Tuesday' => 'Tuesday', - 'Wednesday' => 'Wednesday', - 'Thursday' => 'Thursday', - 'Friday' => 'Friday', - 'Saturday' => 'Saturday', - 'Sunday' => 'Sunday', - 'every hour' => 'every hour', - 'every two hours' => 'every two hours', - 'every minute' => 'every minute', - 'every two minutes' => 'every two minutes', - 'every' => 'every', - 'Generate' => 'Generate', + 'Upload' => 'Качи', + 'New File' => 'Нов файл', + 'New Folder' => 'Нова папка', + 'Download' => 'Изтегляне', + 'Archive' => 'Архивиране', + 'Save File (in text editor)' => 'Запази файла (в текстов редактор)', + 'Close Popup / Cancel' => 'Затвори изскачащия прозорец / Отмени', + 'Move Cursor Up' => 'Премести курсора нагоре', + 'Move Cursor Down' => 'Премести курсора надолу', + 'Switch to Left Tab' => 'Премини в левия раздел', + 'Switch to Right Tab' => 'Премини в десния раздел', + 'Switch Tab' => 'Смени раздел', + 'Go to the Top of the File List' => 'Отиди в началото на файловия списък', + 'Go to the Last File' => 'Кум последната страница', + 'Open File / Enter Directory' => 'Отвори файл / Влез в директория', + 'Edit File' => 'Редактирай файл', + 'Go to Parent Directory' => 'Към главната директория', + 'Select Current File' => 'Избери текущ файл', + 'Select Bunch of Files' => 'Избери няколко файла', + 'Add File to the Current Selection' => 'Добави файла към текущата селекция', + 'Select All Files' => 'Избери всички файлове', + 'shortcuts are inspired by magnificent GNU Midnight Commander файлов мениджър' => + 'преките пътища са вдъхновени от великолепният GNU Midnight Commander файлов мениджър', + 'Licence Key' => 'Лицензен ключ', + 'Enter License Key' => 'Въведете лицензен ключ', + 'Buy Licence' => 'Купете лиценз', + 'Buy Lifetime License' => 'Купете доживотен лиценз', + 'Disable and Cancel Licence' => 'Деактивирайте и отменете лиценз', + 'Licence Activated' => 'Лицензът е активиран', + 'Licence Deactivated' => 'Лицензът е деактивиран', + 'Restrict users so that they cannot use SSH and access only their home directory.' => 'Ограничавайте потребителите от използването на SSH, давайки им достъп единствено до личните им директории.', + 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Разглеждайте, копирайте, редактирайте, показвайте и извличайте всички уеб домейн файлове, използвайки напълно функциониращия ни файлов мениджър.', + 'This is a commercial module, you would need to purchace license key to enable it.' => 'Това е комерсиален модул, за чиито ползване е нужно да поръчате лицензионен ключ.', + 'Minutes' => 'Минути', + 'Hourly' => 'Всеки час', + 'Daily' => 'Всеки ден ', + 'Weekly' => 'Всяка седмица', + 'Monthly' => 'Всеки месец', + 'Run Command' => 'Изпълни команда', + 'every month' => 'всеки месец', + 'every odd month' => 'всеки нечетен месец', + 'every even month' => 'всеки четен месец', + 'every day' => 'всеки ден', + 'every odd day' => 'всеки нечетен ден', + 'every even day' => 'всеки четен ден', + 'weekdays (5 days)' => 'делници (5 дни)', + 'weekend (2 days)' => 'уикенд (2 дни)', + 'Monday' => 'Понеделник', + 'Tuesday' => 'Вторник', + 'Wednesday' => 'Сряда', + 'Thursday' => 'Четвъртък', + 'Friday' => 'Петък', + 'Saturday' => 'Събота', + 'Sunday' => 'Неделя', + 'every hour' => 'на всеки час', + 'every two hours' => 'на всеки два часа', + 'every minute' => 'всяка минута', + 'every two minutes' => 'всеки две минути', + 'every' => 'всеки', + 'Generate' => 'Генерирай', 'webalizer' => 'webalizer', 'awstats' => 'awstats', @@ -741,13 +739,14 @@ $LANG['bg'] = array( 'PUB_KEY' => 'PUB_KEY', 'ISSUER' => 'ISSUER', - 'Use server hostname' => 'Use server hostname', - 'Use domain hostname' => 'Use domain hostname', - 'Use STARTTLS' => 'Use STARTTLS', - 'Use SSL' => 'Use SSL', - 'No encryption' => 'No encryption', - 'Do not use encryption' => 'Do not use encryption', + 'Use server hostname' => 'Използвай сървърното хост име', + 'Use domain hostname' => 'Използвай хост името на домейн', + 'Use STARTTLS' => 'Използвай STARTTLS', + 'Use SSL' => 'Използвай SSL', + 'No encryption' => 'Без криптиране', + 'Do not use encryption' => 'Не използвай криптиране', - 'maximum characters length, including prefix' => 'maximum %s characters length, including prefix', + 'maximum characters length, including prefix' => 'максималната дължина е %s символа, включително префикса', ); + From 0ff8375d4da3812e33bad54e67b57726f19309d7 Mon Sep 17 00:00:00 2001 From: Pavel Galkin Date: Sun, 29 Jan 2017 01:59:48 +0300 Subject: [PATCH 35/45] Revert "full bulgarian translation" This reverts commit 092b135181164b597d009132d9d7267fffeb3b44. --- web/inc/i18n/bg.php | 1305 ++++++++++++++++++++++--------------------- 1 file changed, 653 insertions(+), 652 deletions(-) diff --git a/web/inc/i18n/bg.php b/web/inc/i18n/bg.php index 64fec6a6..cb92158e 100644 --- a/web/inc/i18n/bg.php +++ b/web/inc/i18n/bg.php @@ -1,731 +1,733 @@ 'Пакети', + 'Packages' => 'Пакет', 'IP' => 'IP', 'Graphs' => 'Графики', 'Statistics' => 'Статистика', 'Log' => 'Логове', 'Server' => 'Сървър', 'Services' => 'Услуги', - 'Firewall' => 'Защитна стена', - 'Updates' => 'Обновления', + 'Firewall' => 'Firewall', + 'Updates' => 'Обновяване', 'Log in' => 'Вход', 'Log out' => 'Изход', - 'USER' => 'ПОТРЕБИТЕЛ', - 'WEB' => 'УЕБ', + 'USER' => 'Клиенти', + 'WEB' => 'WEB', 'DNS' => 'DNS', - 'MAIL' => 'ПОЩА', - 'DB' => 'БАЗА ДАННИ', + 'MAIL' => 'Мейл', + 'DB' => 'Бази Данни', 'CRON' => 'CRON', - 'BACKUP' => 'РЕЗЕРВНО КОПИЕ', + 'BACKUP' => 'Архив', - 'LOGIN' => 'ВХОД', - 'RESET PASSWORD' => 'ЗАБРАВЕНА ПАРОЛА', - 'SEARCH' => 'ТЪРСЕНЕ', - 'PACKAGE' => 'ПАКЕТ', + 'LOGIN' => 'Вход', + 'RESET PASSWORD' => 'Забравена парола', + 'SEARCH' => 'Търси', + 'PACKAGE' => 'Пакет', 'RRD' => 'RRD', - 'STATS' => 'СТАТИСТИКА', - 'LOG' => 'ЛОГОВЕ', - 'UPDATES' => 'ОБНОВЛЕНИЯ', - 'FIREWALL' => 'ЗАЩИТНА СТЕНА', - 'SERVER' => 'СЪРВЪР', - 'MEMORY' => 'ПАМЕТ', - 'DISK' => 'ДИСК', - 'NETWORK' => 'МРЕЖА', - 'Web Log Manager' => 'МЕНИДЖЪР НА УЕБ ЛОГОВЕ', + 'STATS' => 'Статистика', + 'LOG' => 'Логове', + 'UPDATES' => 'Обновяване', + 'FIREWALL' => 'FIREWALL', + 'SERVER' => 'Сървър', + 'MEMORY' => 'Памет', + 'DISK' => 'Диск', + 'NETWORK' => 'Мрежа', + 'Web Log Manager' => 'Web Log Manager', + + 'no notifications' => 'no notifications', 'Add User' => 'Добави потребител', 'Add Domain' => 'Добави домейн', - 'Add Web Domain' => 'Добави уеб домейн', - 'Add DNS Domain' => 'Добави DNS домейн', + 'Add Web Domain' => 'Добави домейн', + 'Add DNS Domain' => 'Добави DNS', 'Add DNS Record' => 'Добави DNS запис', - 'Add Mail Domain' => 'Добави пощенски домейн', - 'Add Mail Account' => 'Добави пощенски акаунт', - 'Add Database' => 'Добави база данни', - 'Add Cron Job' => 'Добави Cron Job', - 'Create Backup' => 'Създай резервно копие', - 'Configure' => 'Конфигурирай', - 'Restore All' => 'Възобнови всичко', + 'Add Mail Domain' => 'Добави мейл', + 'Add Mail Account' => 'Добави мейл адрес', + 'Add Database' => 'Добави база', + 'Add Cron Job' => 'Добави задача', + 'Create Backup' => 'Направи архив', + 'Configure' => 'Конфигурация', + 'Restore All' => 'Възстанови всички', 'Add Package' => 'Добави пакет', - 'Add IP' => 'Добави IP адрес', + 'Add IP' => 'Добави IP', 'Add Rule' => 'Добави правило', - 'Ban IP Address' => 'Блокирай IP адрес', - 'Search' => 'Търсене', - 'Add one more FTP Account' => 'Добави допълнителен FTP акаунт', - 'Overall Statistics' => 'Обща статистика', - 'Daily' => 'Всеки ден', - 'Weekly' => 'Всяка седмица', - 'Monthly' => 'Всеки месец', - 'Yearly' => 'Всяка година', + 'Ban IP Address' => 'Бан IP Address', + 'Search' => 'Търси', + 'Add one more FTP Account' => 'Добави FTP потребител', + 'Overall Statistics' => 'Статистика', + 'Daily' => 'Дневно', + 'Weekly' => 'Седмица', + 'Monthly' => 'Месец', + 'Yearly' => 'Година', 'Add' => 'Добави', 'Back' => 'Назад', 'Save' => 'Запази', - 'Submit' => 'Вложи', + 'Submit' => 'Изпрати', - 'toggle all' => 'избери всичко', - 'apply to selected' => 'приложи за избраните', - 'rebuild' => 'възстанови', - 'rebuild web' => 'възстанови уеб', - 'rebuild dns' => 'възстанови dns', - 'rebuild mail' => 'възстанови поща', - 'rebuild db' => 'възстанови база данни', - 'rebuild cron' => 'възстанови cron', - 'update counters' => 'обнови броячите', - 'suspend' => 'спри', - 'unsuspend' => 'активирай', - 'delete' => 'изтрий', - 'show per user' => 'покажи за потребителя', - 'login as' => 'влез като', - 'logout' => 'излез', - 'edit' => 'редактирай', - 'open webstats' => 'отвори уеб статистика', - 'view logs' => 'прегледай логове', - 'list records' => 'покажи списък с %s записи', - 'add record' => 'добави запис', - 'list accounts' => 'покажи списък с %s акаунта', - 'add account' => 'добави акаунт', - 'open webmail' => 'oтвори уеб поща', - 'list fail2ban' => 'покажи fail2ban списък', - 'open %s' => 'отвори %s', - 'download' => 'изтегли', - 'restore' => 'възобнови', - 'configure restore settings' => 'конфигурирай настройките за възобновяване', + 'toggle all' => 'Избери всички', + 'apply to selected' => 'изпълни маркираните', + 'rebuild' => 'поправи', + 'rebuild web' => 'поправи web', + 'rebuild dns' => 'поправи dns', + 'rebuild mail' => 'поправи mail', + 'rebuild db' => 'поправи db', + 'rebuild cron' => 'поправи cron', + 'update counters' => 'оибнови брочи', + 'suspend' => 'Забрани', + 'unsuspend' => 'Разреши', + 'delete' => 'изтриване', + 'show per user' => 'покажи за всеки', + 'login as' => 'Влез като', + 'logout' => 'Изход', + 'edit' => 'Редакция', + 'open webstats' => 'отвори статистика', + 'view logs' => 'виж логовете', + 'list records' => 'list %s records', + 'add record' => 'нов запис', + 'list accounts' => 'list %s accounts', + 'add account' => 'add account', + 'open webmail' => 'open webmail', + 'list fail2ban' => 'list fail2ban', + 'open %s' => 'open %s', + 'download' => 'сваляне', + 'restore' => 'възстанови', + 'configure restore settings' => 'configure restore settings', 'stop' => 'стоп', 'start' => 'старт', 'restart' => 'рестарт', 'update' => 'обнови', - 'generate' => 'генерирай', - 'Generate CSR' => 'Генерирай CSR', - 'reread IP' => 'зареди наново IP адреса', - 'enable autoupdate' => 'позволи автоматичното обновяване', - 'disable autoupdate' => 'забрани автоматичното обновяване', - 'turn on notifications' => 'включи известията', - 'turn off notifications' => 'изключи известията', + 'generate' => 'generate', + 'Generate CSR' => 'Generate CSR', + 'reread IP' => 'reread IP', + 'enable autoupdate' => 'enable autoupdate', + 'disable autoupdate' => 'disable autoupdate', + 'turn on notifications' => 'turn on notifications', + 'turn off notifications' => 'turn off notifications', + 'configure' => 'configure', - 'Adding User' => 'Добавяне на потребител', - 'Editing User' => 'Редактиране на потребител', - 'Adding Domain' => 'Добавяне на домейн', - 'Editing Domain' => 'Редактиране на домейн', - 'Adding DNS Domain' => 'Добавяне на DNS домейн', - 'Editing DNS Domain' => 'Редактиране на DNS домейн', - 'Adding DNS Record' => 'Добавяне на DNS запис', - 'Editing DNS Record' => 'Редактиране на DNS запис', - 'Adding Mail Domain' => 'Добавяне на пощенски домейн', - 'Editing Mail Domain' => 'Редактиране на пощенски домейн', - 'Adding Mail Account' => 'Добавяне на пощенски акаунт', - 'Editing Mail Account' => 'Редактиране на пощенски акаунт', - 'Adding database' => 'Добавяне на база данни', - 'Editing Cron Job' => 'Добавяне на Cron Job', - 'Adding Cron Job' => 'Редактиране на Cron Job', - 'Editing Database' => 'Редактиране на база данни', - 'Adding Package' => 'Добавяне на пакет', - 'Editing Package' => 'Редактиране на пакет', - 'Adding IP address' => 'Добавяне на IP адрес', - 'Editing IP Address' => 'Редактиране на IP адрес', - 'Editing Backup Exclusions' => 'Редактиране на изключения от резервно копие', - 'Generating CSR' => 'Генериране на CSR', - 'Listing' => 'Показване на списък', - 'Search Results' => 'Търси резултати', - 'Adding Firewall Rule' => 'Добавяне на правило за защитната стена', - 'Editing Firewall Rule' => 'Редактиране на правилото за защитната стена', - 'Adding IP Address to Banlist' => 'Добавяне на IP адрес към черния списък', - 'active' => 'активен', - 'spnd' => 'деактивиран', - 'suspended' => 'деактивиран', - 'running' => 'работещ', - 'stopped' => 'спрян', - 'outdated' => 'неактуален', - 'updated' => 'актуален', + 'Adding User' => 'Adding User', + 'Editing User' => 'Editing User', + 'Adding Domain' => 'Adding Domain', + 'Editing Domain' => 'Editing Domain', + 'Adding DNS Domain' => 'Adding DNS Domain', + 'Editing DNS Domain' => 'Editing DNS Domain', + 'Adding DNS Record' => 'Adding DNS Record', + 'Editing DNS Record' => 'Editing DNS Record', + 'Adding Mail Domain' => 'Adding Mail Domain', + 'Editing Mail Domain' => 'Editing Mail Domain', + 'Adding Mail Account' => 'Adding Mail Account', + 'Editing Mail Account' => 'Editing Mail Account', + 'Adding database' => 'Adding database', + 'Editing Cron Job' => 'Editing Cron Job', + 'Adding Cron Job' => 'Adding Cron Job', + 'Editing Database' => 'Editing Database', + 'Adding Package' => 'Adding Package', + 'Editing Package' => 'Editing Package', + 'Adding IP address' => 'Adding IP address', + 'Editing IP Address' => 'Editing IP Address', + 'Editing Backup Exclusions' => 'Editing Backup Exclusions', + 'Generating CSR' => 'Generating CSR', + 'Listing' => 'Listing', + 'Search Results' => 'Search Results', + 'Adding Firewall Rule' => 'Adding Firewall Rule', + 'Editing Firewall Rule' => 'Editing Firewall Rule', + 'Adding IP Address to Banlist' => 'Adding IP Address to Banlist', - 'yes' => 'да', - 'no' => 'не', - 'none' => 'няма', + 'active' => 'active', + 'spnd' => 'suspended', + 'suspended' => 'suspended', + 'running' => 'running', + 'stopped' => 'stopped', + 'outdated' => 'outdated', + 'updated' => 'updated', + + 'yes' => 'yes', + 'no' => 'no', + 'none' => 'none', 'pb' => 'pb', 'tb' => 'tb', 'gb' => 'gb', 'mb' => 'mb', - 'minute' => 'минута', - 'hour' => 'час', - 'day' => 'ден', - 'days' => 'дни', - 'hours' => 'часове', - 'minutes' => 'минути', - 'month' => 'месец', - 'package' => 'пакет', - 'Bandwidth' => 'Трафик', - 'Disk' => 'Диск', - 'Web' => 'Уеб', - 'Mail' => 'Поща', - 'Databases' => 'Бази данни', - 'User Directories' => 'Потребителски директории', - 'Template' => 'Шаблон', - 'Web Template' => 'Уеб шаблон', - 'Backend Template' => 'Готов шаблон', - 'Proxy Template' =>'Прокси шаблон', - 'DNS Template' => 'DNS шаблон', - 'Web Domains' => 'Уеб домейни', - 'SSL Domains' => 'SSL домейни', - 'Web Aliases' => 'Уеб наименувания', - 'per domain' => 'на домейн', - 'DNS Domains' => 'DNS Домейни', - 'DNS domains' => 'DNS домейни', - 'DNS records' => 'DNS записи', - 'Name Servers' => 'Сървъри за имена', - 'Mail Domains' => 'Пощенски домейни', - 'Mail Accounts' => 'Пощенски акаунти', + 'minute' => 'minute', + 'hour' => 'hour', + 'day' => 'day', + 'days' => 'days', + 'hours' => 'hours', + 'minutes' => 'minutes', + 'month' => 'month', + 'package' => 'package', + 'Bandwidth' => 'Bandwidth', + 'Disk' => 'Disk', + 'Web' => 'Web', + 'Mail' => 'Mail', + 'Databases' => 'Databases', + 'User Directories' => 'User Directories', + 'Template' => 'Template', + 'Web Template' => 'Web Template', + 'Backend Template' => 'Backend Template', + 'Proxy Template' =>'Proxy Template', + 'DNS Template' => 'DNS Template', + 'Web Domains' => 'Web Domains', + 'SSL Domains' => 'SSL Domains', + 'Web Aliases' => 'Web Aliases', + 'per domain' => 'per domain', + 'DNS Domains' => 'DNS Domains', + 'DNS domains' => 'DNS domains', + 'DNS records' => 'DNS records', + 'Name Servers' => 'Name Servers', + 'Mail Domains' => 'Mail Domains', + 'Mail Accounts' => 'Mail Accounts', 'Cron Jobs' => 'Cron Jobs', - 'SSH Access' => 'SSH достъп', - 'IP Address' => 'IP адрес', - 'IP Addresses' => 'IP адреси', - 'Backups' => 'Резервни копия', - 'Backup System' => 'Система за резервни копия', - 'backup exclusions' => 'Резервни копия - изключения', - 'template' => 'шаблон', - 'SSL Support' => 'SSL поддръжка', - 'SSL Home Directory' => 'SSL начало', - 'Lets Encrypt Support' => 'Lets Encrypt поддръжка', + 'SSH Access' => 'SSH Access', + 'IP Address' => 'IP Address', + 'IP Addresses' => 'IP Addresses', + 'Backups' => 'Backups', + 'Backup System' => 'Backup System', + 'backup exclusions' => 'backup exclusions', + 'template' => 'template', + 'SSL Support' => 'SSL Support', + 'SSL Home Directory' => 'SSL Home', + 'Lets Encrypt Support' => 'Lets Encrypt Support', 'Lets Encrypt' => 'Lets Encrypt', - 'Proxy Support' => 'Прокси поддръжка', - 'Proxy Extensions' => 'Прокси разширения', - 'Web Statistics' => 'Уеб статистики', - 'Additional FTP Account' => 'Допълнителни FTP акаунти', - 'Path' => 'Път', + 'Your certificate will be automatically issued in 5 minutes' => 'Your certificate will be automatically issued in 5 minutes', + 'Proxy Support' => 'Proxy Support', + 'Proxy Extensions' => 'Proxy Extensions', + 'Web Statistics' => 'Web Statistics', + 'Additional FTP Account' => 'Additional FTP', + 'Path' => 'Path', 'SOA' => 'SOA', 'TTL' => 'TTL', - 'Expire' => 'Изтича', - 'Records' => 'Записи', - 'Serial' => 'Сериен', - 'Catchall email' => 'Универсална поща', - 'AntiVirus Support' => 'Антивирусна поддръжка', - 'AntiSpam Support' => 'Антиспам поддръжка', - 'DKIM Support' => 'DKIM поддръжка', - 'Accounts' => 'Акаунти', - 'Quota' => 'Квота', - 'Autoreply' => 'Автоматичен отговор', - 'Forward to' => 'Препрати до', - 'Do not store forwarded mail' => 'Не съхранявай препратена поща', - 'IMAP hostname' => 'IMAP име на хост', - 'IMAP port' => 'IMAP порт', - 'IMAP security' => 'IMAP защита', - 'IMAP auth method' => 'IMAP идентификация', - 'SMTP hostname' => 'SMTP име на хост', - 'SMTP port' => 'SMTP порт', - 'SMTP security' => 'SMTP защита', - 'SMTP auth method' => 'SMTP идентификация', + 'Expire' => 'Expire', + 'Records' => 'Records', + 'Serial' => 'Serial', + 'Catchall email' => 'Catchall email', + 'AntiVirus Support' => 'AntiVirus Support', + 'AntiSpam Support' => 'AntiSpam Support', + 'DKIM Support' => 'DKIM Support', + 'Accounts' => 'Accounts', + 'Quota' => 'Quota', + 'Autoreply' => 'Autoreply', + 'Forward to' => 'Forward to', + 'Do not store forwarded mail' => 'Do not store forwarded mail', + 'IMAP hostname' => 'IMAP hostname', + 'IMAP port' => 'IMAP port', + 'IMAP security' => 'IMAP security', + 'IMAP auth method' => 'IMAP auth method', + 'SMTP hostname' => 'SMTP hostname', + 'SMTP port' => 'SMTP port', + 'SMTP security' => 'SMTP security', + 'SMTP auth method' => 'SMTP auth method', 'STARTTLS' => 'STARTTLS', - 'Normal password' => 'Нормална парола', - 'database' => 'база данни', - 'User' => 'Потребител', - 'Host' => 'Хост', - 'Charset' => 'Символи', - 'Min' => 'Минути', - 'Hour' => 'Час', - 'Day' => 'Ден', - 'Month' => 'Месец', - 'Day of week' => 'Ден от седмицата', - 'local' => 'локално', - 'Run Time' => 'Време на изпълнение', - 'Backup Size' => 'Размер на резервното копие', + 'Normal password' => 'Normal password', + 'database' => 'database', + 'User' => 'User', + 'Host' => 'Host', + 'Charset' => 'Charset', + 'Min' => 'Min', + 'Hour' => 'Hour', + 'Day' => 'Day', + 'Month' => 'Month', + 'Day of week' => 'Day of week', + 'local' => 'local', + 'Run Time' => 'Run Time', + 'Backup Size' => 'Backup Size', 'SYS' => 'SYS', - 'Domains' => 'Домейни', - 'Status' => 'Статус', - 'shared' => 'споделен', - 'dedicated' => 'отдаден', - 'Owner' => 'Собственик', - 'Users' => 'Потребители', - 'Load Average' => 'Общи данни', - 'Memory Usage' => 'Използване на памет', - 'APACHE2 Usage' => 'Използване на APACHE2', - 'HTTPD Usage' => 'Използване на HTTPD', - 'NGINX Usage' => 'Използване на NGINX', - 'MySQL Usage on localhost' => 'Използване на MySQL на локалната машина', - 'PostgreSQL Usage on localhost' => 'Използване на PostgreSQL на локалната машина', - 'Bandwidth Usage eth0' => 'Използване на честотна лента eth0', - 'Bandwidth Usage eth1' => 'Използване на честотна лента eth1', - 'Exim Usage' => 'Използване на Exim', - 'FTP Usage' => 'Използване на FTP', - 'SSH Usage' => 'Използване на SSH', - 'reverse proxy' => 'обърни прокси', - 'web server' => 'уеб сървър', - 'dns server' => 'dns сървър', - 'mail server' => 'пощенски сървър', - 'pop/imap server' => 'pop/imap сървър', - 'email antivirus' => 'email антивирус', - 'email antispam' => 'email антиспам', - 'database server' => 'сървър на база данни', - 'ftp server' => 'ftp сървър', - 'job scheduler' => 'органайзер за работа', - 'firewall' => 'защитна стена', - 'brute-force monitor' => 'brute-force монитор', - 'CPU' => 'Процесор', - 'Memory' => 'Памет', - 'Uptime' => 'Време на работа', - 'core package' => 'пакет на ядрото', - 'php interpreter' => 'php интерпретатор', - 'internal web server' => 'вътрешен уеб сървър', - 'Version' => 'Версия', - 'Release' => 'Рилийз', - 'Architecture' => 'Архитектура', - 'Object' => 'Обект', - 'Username' => 'Потребителско име', - 'Password' => 'Парола', + 'Domains' => 'Domains', + 'Status' => 'Status', + 'shared' => 'shared', + 'dedicated' => 'dedicated', + 'Owner' => 'Owner', + 'Users' => 'Users', + 'Load Average' => 'Load Average', + 'Memory Usage' => 'Memory Usage', + 'APACHE2 Usage' => 'APACHE2 Usage', + 'HTTPD Usage' => 'HTTPD Usage', + 'NGINX Usage' => 'NGINX Usage', + 'MySQL Usage on localhost' => 'MySQL Usage on localhost', + 'PostgreSQL Usage on localhost' => 'PostgreSQL Usage on localhost', + 'Bandwidth Usage eth0' => 'Bandwidth Usage eth0', + 'Bandwidth Usage eth1' => 'Bandwidth Usage eth1', + 'Exim Usage' => 'Exim Usage', + 'FTP Usage' => 'FTP Usage', + 'SSH Usage' => 'SSH Usage', + 'reverse proxy' => 'reverse proxy', + 'web server' => 'web server', + 'dns server' => 'dns server', + 'mail server' => 'mail server', + 'pop/imap server' => 'pop/imap server', + 'email antivirus' => 'email antivirus', + 'email antispam' => 'email antispam', + 'database server' => 'database server', + 'ftp server' => 'ftp server', + 'job scheduler' => 'job scheduler', + 'firewall' => 'firewall', + 'brute-force monitor' => 'brute-force monitor', + 'CPU' => 'CPU', + 'Memory' => 'Memory', + 'Uptime' => 'Uptime', + 'core package' => 'core package', + 'php interpreter' => 'php interpreter', + 'internal web server' => 'internal web server', + 'Version' => 'Version', + 'Release' => 'Release', + 'Architecture' => 'Architecture', + 'Object' => 'Object', + 'Username' => 'Username', + 'Password' => 'Password', 'Email' => 'Email', - 'Package' => 'Пакет', - 'Language' => 'Език', - 'First Name' => 'Име', - 'Last Name' => 'Фамилив', - 'Send login credentials to email address' => 'Изпращай информация за вписвания на email', - 'Default Template' => 'Шаблон по подразбиране', - 'Default Name Servers' => 'Име на сървър по подразбиране', - 'Domain' => 'Домейн', - 'DNS Support' => 'DNS поддръжка', - 'Mail Support' => 'Поддръжка на поща', - 'Advanced options' => 'Разширени настройки', - 'Basic options' => 'Стандартни настройки', - 'Aliases' => 'Псевдоними', - 'SSL Certificate' => 'SSL сертификат', - 'SSL Key' => 'SSL ключ', - 'SSL Certificate Authority / Intermediate' => 'SSL сертификат / средно ниво', + 'Package' => 'Package', + 'Language' => 'Language', + 'First Name' => 'First Name', + 'Last Name' => 'Last Name', + 'Send login credentials to email address' => 'Send login credentials to email address', + 'Default Template' => 'Default Template', + 'Default Name Servers' => 'Default Name Servers', + 'Domain' => 'Domain', + 'DNS Support' => 'DNS Support', + 'Mail Support' => 'Mail Support', + 'Advanced options' => 'Advanced options', + 'Basic options' => 'Basic options', + 'Aliases' => 'Aliases', + 'SSL Certificate' => 'SSL Certificate', + 'SSL Key' => 'SSL Key', + 'SSL Certificate Authority / Intermediate' => 'SSL Certificate Authority / Intermediate', 'SSL CSR' => 'SSL CSR', - 'optional' => 'незадължителен', - 'internal' => 'вътрешвн', - 'Statistics Authorization' => 'Идентификация за статистики', - 'Statistics Auth' => 'Идентификация за статистики', - 'Account' => 'Акаунт', - 'Prefix will be automaticaly added to username' => 'Префикс %s ще бъде автоматично добавен към потребителското име', - 'Send FTP credentials to email' => 'Изпращай информация относно FTP на email', - 'Expiration Date' => 'Крайна дата', - 'YYYY-MM-DD' => 'ГГГГ-ММ-ДД', - 'Name servers' => 'Сървъри с имена', - 'Record' => 'Запис', - 'IP or Value' => 'IP или стойност', - 'Priority' => 'Приоритет', - 'Record Number' => 'Запиши номер', - 'in megabytes' => 'в мегабайти', - 'Message' => 'Съобщение', - 'use local-part' => 'използвай local-part', - 'one or more email addresses' => 'един или повече email адреса', - 'Prefix will be automaticaly added to database name and database user' => 'Префикс %s ще бъде автоматично добавен към името на базата данни и потребителското име.', - 'Database' => 'База данни', - 'Type' => 'Въведи', - 'Minute' => 'Минута', - 'Command' => 'Команда', - 'Package Name' => 'Номер на пакет', + 'optional' => 'optional', + 'internal' => 'internal', + 'Statistics Authorization' => 'Statistics Authorization', + 'Statistics Auth' => 'Statistics Auth', + 'Account' => 'Account', + 'Prefix will be automaticaly added to username' => 'Prefix %s will be automaticaly added to username', + 'Send FTP credentials to email' => 'Send FTP credentials to email', + 'Expiration Date' => 'Expiration Date', + 'YYYY-MM-DD' => 'YYYY-MM-DD', + 'Name servers' => 'Name servers', + 'Record' => 'Record', + 'IP or Value' => 'IP or Value', + 'Priority' => 'Priority', + 'Record Number' => 'Record Number', + 'in megabytes' => 'in megabytes', + 'Message' => 'Message', + 'use local-part' => 'use local-part', + 'one or more email addresses' => 'one or more email addresses', + 'Prefix will be automaticaly added to database name and database user' => 'Prefix %s will be automaticaly added to database name and database user.', + 'Database' => 'Database', + 'Type' => 'Type', + 'Minute' => 'Minute', + 'Command' => 'Command', + 'Package Name' => 'Package Name', 'Netmask' => 'Netmask', - 'Interface' => 'Интерфейс', - 'Shared' => 'Споделен', - 'Assigned user' => 'Назначен потребител', - 'Assigned domain' => 'Назначен домейн', - 'NAT IP association' => 'NAT IP асоциация', + 'Interface' => 'Interface', + 'Shared' => 'Shared', + 'Assigned user' => 'Assigned user', + 'Assigned domain' => 'Assigned domain', + 'NAT IP association' => 'NAT IP association', 'shell' => 'shell', - 'web domains' => 'уеб домейни', - 'web aliases' => 'уеб псевдоними', - 'dns records' => 'dns записи', - 'mail domains' => 'пощенски домейни', - 'mail accounts' => 'пощенски акаунти', - 'accounts' => 'акаунти', - 'databases' => 'бази данни', + 'web domains' => 'web domains', + 'web aliases' => 'web aliases', + 'dns records' => 'dns records', + 'mail domains' => 'mail domains', + 'mail accounts' => 'mail accounts', + 'accounts' => 'accounts', + 'databases' => 'databases', 'cron jobs' => 'cron jobs', - 'backups' => 'резервни копия', - 'quota' => 'квота', - 'day of week' => 'ден от седмицата', + 'backups' => 'backups', + 'quota' => 'quota', + 'day of week' => 'day of week', 'cmd' => 'cmd', - 'users' => 'потребители', - 'domains' => 'домейни', - 'aliases' => 'псевдоними', - 'records' => 'записи', - 'jobs' => 'работа', - 'username' => 'потребителско име', - 'password' => 'парола', - 'type' => 'тип', - 'charset' => 'символи', - 'domain' => 'домейн', + 'users' => 'users', + 'domains' => 'domains', + 'aliases' => 'aliases', + 'records' => 'records', + 'jobs' => 'jobs', + 'username' => 'username', + 'password' => 'password', + 'type' => 'type', + 'charset' => 'charset', + 'domain' => 'domain', 'ip' => 'ip', - 'ip address' => 'ip адрес', - 'IP address' => 'IP адрес', + 'ip address' => 'ip address', + 'IP address' => 'IP address', 'netmask' => 'netmask', - 'interface' => 'интерфейс', - 'assigned user' => 'назначен потребител', + 'interface' => 'interface', + 'assigned user' => 'assigned user', 'ns1' => 'ns1', 'ns2' => 'ns2', - 'user' => 'потребител', + 'user' => 'user', 'email' => 'email', - 'first name' => 'име', - 'last name' => 'фамилия', - 'account' => 'акаунт', - 'ssl certificate' => 'ssl сертификат', - 'ssl key' => 'ssl ключ', - 'stats user password' => 'статистика за потребителска парола', - 'stats username' => 'статистика за потребителско име', - 'stats password' => 'статистика за парола', - 'ftp user password' => 'ftp потребителска парола', - 'ftp user' => 'ftp потребител', - 'Last 70 lines of %s.%s.log' => 'Последните 70 реда от лога за %s.%', + 'first name' => 'first name', + 'last name' => 'last name', + 'account' => 'account', + 'ssl certificate' => 'ssl certificate', + 'ssl key' => 'ssl key', + 'stats user password' => 'stats user password', + 'stats username' => 'stats username', + 'stats password' => 'stats password', + 'ftp user password' => 'ftp user password', + 'ftp user' => 'ftp user', + 'Last 70 lines of %s.%s.log' => 'Last 70 lines of %s.%s.log', 'AccessLog' => 'AccessLog', 'ErrorLog' => 'ErrorLog', - 'Download AccessLog' => 'Изтегли AccessLog', - 'Download ErrorLog' => 'Изтегли ErrorLog', - 'Country' => 'Страна', - '2 letter code' => '2-буквен код', - 'State / Province' => 'Щат / Провинция', - 'City / Locality' => 'Град / Местност', - 'Organization' => 'Организация', - 'Action' => 'Начало', - 'Protocol' => 'Протокол', - 'Port' => 'Порт', - 'Comment' => 'Коментар', - 'Banlist' => 'Черен списък', - 'ranges are acceptable' => 'стойностите са приемливи', - 'CIDR format is supported' => 'CIDR форматът се поддържа', - 'ACCEPT' => 'ПРИЕМИ', - 'DROP' => 'ПУСНИ', + 'Download AccessLog' => 'Download AccessLog', + 'Download ErrorLog' => 'Download ErrorLog', + 'Country' => 'Country', + '2 letter code' => '2 letter code', + 'State / Province' => 'State / Province', + 'City / Locality' => 'City / Locality', + 'Organization' => 'Organization', + 'Action' => 'Action', + 'Protocol' => 'Protocol', + 'Port' => 'Port', + 'Comment' => 'Comment', + 'Banlist' => 'Banlist', + 'ranges are acceptable' => 'ranges are acceptable', + 'CIDR format is supported' => 'CIDR format is supported', + 'ACCEPT' => 'ACCEPT', + 'DROP' => 'DROP', 'TCP' => 'TCP', 'UDP' => 'UDP', 'ICMP' => 'ICMP', 'SSH' => 'SSH', 'FTP' => 'FTP', 'VESTA' => 'VESTA', - 'Add one more Name Server' => 'Добави допълнителен сървър за имена', + 'Add one more Name Server' => 'Add one more Name Server', - 'web domain' => 'уеб домейн', - 'dns domain' => 'dns домейн', - 'dns record' => 'dns запис', - 'mail domain' => 'пощенски домейн', - 'mail account' => 'пощенски акаунт', + 'web domain' => 'web domain', + 'dns domain' => 'dns domain', + 'dns record' => 'dns record', + 'mail domain' => 'mail domain', + 'mail account' => 'mail account', 'cron job' => 'cron job', 'cron' => 'cron', - 'user dir' => 'потребителска директория', + 'user dir' => 'user dir', - 'unlimited' => 'неограничен', - '1 account' => '1 акаунт', - '%s accounts' => '%s акаунта', - '1 domain' => '1 домейн', - '%s domains' => '%s домейна', - '1 record' => '1 запис', - '%s records' => '%s записи', - '1 mail account' => '1 пощенски акаунт', - '%s mail accounts' => '%s пощенски акаунта', - '1 database' => '1 база данни', - '%s databases' => '%s бази данни', + 'unlimited' => 'unlimited', + '1 account' => '1 account', + '%s accounts' => '%s accounts', + '1 domain' => '1 domain', + '%s domains' => '%s domains', + '1 record' => '1 record', + '%s records' => '%s records', + '1 mail account' => '1 mail account', + '%s mail accounts' => '%s mail accounts', + '1 database' => '1 database', + '%s databases' => '%s databases', '1 cron job' => '1 cron job', '%s cron jobs' => '%s cron jobs', - '1 archive' => '1 архив', - '%s archives' => '%s архива', - '1 item' => '1 артикул', - '%s items' => '%s артикула', - '1 package' => '1 пакет', - '%s packages' => '%s пакета', - '1 IP address' => '1 IP адрес', - '%s IP addresses' => '%s IP адреса', - '1 month' => '1 месец', - '%s months' => '%s месеца', - '1 log record' => '1 log запис', - '%s log records' => '%s log записа', - '1 object' => '1 обект', - '%s objects' => '%s обекта', - 'no exclusions' => 'без изключения', - '1 rule' => '1 правило', - '%s rules' => '%s правила', - 'There are no currently banned IP' => 'Няма блокирани IP-та', + '1 archive' => '1 archive', + '%s archives' => '%s archives', + '1 item' => '1 item', + '%s items' => '%s items', + '1 package' => '1 package', + '%s packages' => '%s packages', + '1 IP address' => '1 IP address', + '%s IP addresses' => '%s IP addresses', + '1 month' => '1 month', + '%s months' => '%s months', + '1 log record' => '1 log record', + '%s log records' => '%s log records', + '1 object' => '1 object', + '%s objects' => '%s objects', + 'no exclusions' => 'no exclusions', + '1 rule' => '1 rule', + '%s rules' => '%s rules', + 'There are no currently banned IP' => 'There are no currently banned IP', - 'USER_CREATED_OK' => 'Потребител %s беше създаден успешно.', - 'WEB_DOMAIN_CREATED_OK' => 'Домейн %s беше създаден успешно .', - 'DNS_DOMAIN_CREATED_OK' => 'DNS домейн %s беше създаден успешно.', - 'DNS_RECORD_CREATED_OK' => 'Запис %s.%s беше създаден успешно.', - 'MAIL_DOMAIN_CREATED_OK' => 'Пощенски домейн %s беше създаден успешно.', - 'MAIL_ACCOUNT_CREATED_OK' => 'Пощенски акаунт %s@%s беше създаден успешно.', - 'DATABASE_CREATED_OK' => 'База данни %s беше създадена успешно.', - 'CRON_CREATED_OK' => 'Cron job беше създаден успешно.', - 'IP_CREATED_OK' => 'IP адрес %s беше създаден успешно.', - 'PACKAGE_CREATED_OK' => 'Пакет %s беше създаден успешно.', - 'SSL_GENERATED_OK' => 'Сертификатът беше генериран успешно.', - 'RULE_CREATED_OK' => 'Правилото беше създадено успешно.', - 'BANLIST_CREATED_OK' => 'IP адресът беше блокиран успешно', // I'm not sure about this text - 'Autoupdate has been successfully enabled' => 'Автоматичното обновяване беше включено успешно.', - 'Autoupdate has been successfully disabled' => 'Автоматичното обновяване беше изключено успешно.', - 'Cronjob email reporting has been successfully enabled' => 'Cronjob email reporting беше включен успешно', - 'Cronjob email reporting has been successfully disabled' => 'Cronjob email reporting беше изключен успешно', - 'Changes has been saved.' => 'Промените бяха запазени.', - 'Confirmation' => 'Потвърждение', - 'DELETE_USER_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете потребител %s?', - 'SUSPEND_USER_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате потребител %s?', - 'UNSUSPEND_USER_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате потребител %s?', - 'DELETE_DOMAIN_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете домейн %s?', - 'SUSPEND_DOMAIN_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате домейн %s?', - 'UNSUSPEND_DOMAIN_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате домейн %s?', - 'DELETE_RECORD_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете запис %s?', - 'SUSPEND_RECORD_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате запис %s?', - 'UNSUSPEND_RECORD_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате запис %s?', - 'DELETE_MAIL_ACCOUNT_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете %s?', - 'SUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате %s?', - 'UNSUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате %s?', - 'DELETE_DATABASE_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете база данни %s?', - 'SUSPEND_DATABASE_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате база данни %s?', - 'UNSUSPEND_DATABASE_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате база данни %s?', - 'DELETE_CRON_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете cron job?', - 'SUSPEND_CRON_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате cron job?', - 'UNSUSPEND_CRON_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате cron job?', - 'DELETE_BACKUP_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете %s резервното копие?', - 'DELETE_EXCLUSION_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете %s изключението?', - 'DELETE_PACKAGE_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете пакет %s?', - 'DELETE_IP_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете IP адрес %s?', - 'DELETE_RULE_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете правило #%s?', - 'SUSPEND_RULE_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате правило #%s?', - 'UNSUSPEND_RULE_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате правило #%s?', - 'LEAVE_PAGE_CONFIRMATION' => 'Напускане на страницата?', - 'RESTART_CONFIRMATION' => 'Сигурни ли сте, че искате да рестартирате %s?', - 'Welcome' => 'Добре дошли', - 'LOGGED_IN_AS' => 'Вписани сте като %s', - 'Error' => 'Грешка', - 'Invalid username or password' => 'Невалидно потребителско име или парола.', - 'Invalid username or code' => 'Невалидно потребителско име или код.', - 'Passwords not match' => 'Паролите не съвпадат.', - 'Please enter valid email address.' => 'Моля, въведете валиден email адрес.', - 'Field "%s" can not be blank.' => 'Поле "%s" е задължително.', - 'Password is too short.' => 'Паролата е твърде къса (минимум 6 символа)', - 'Error code:' => 'Код на грешката: %s', - 'SERVICE_ACTION_FAILED' => '"%s" "%s" отказа', - 'IP address is in use' => 'IP адресът се използва в момента', - 'BACKUP_SCHEDULED' => 'Задачата е на изчакване. Ще бъдете уведомени по email веднага щом резервното копие стане достъпно за изтегляне.', - 'BACKUP_EXISTS' => 'Друго резервно копие е в действие. Моля, изчакайте приключване.', - 'RESTORE_SCHEDULED' => 'Задачата е на изчакване. Ще бъдете уведомени по email веднага щом възстановяването приключи.', - 'RESTORE_EXISTS' => 'Друго възстановяване е в действие. Моля, изчакайте приключване преди повторно зареждане.', + 'USER_CREATED_OK' => 'User %s has been created successfully.', + 'WEB_DOMAIN_CREATED_OK' => 'Domain %s has been created successfully.', + 'DNS_DOMAIN_CREATED_OK' => 'DNS domain %s has been created successfully.', + 'DNS_RECORD_CREATED_OK' => 'Record %s.%s has been created successfully.', + 'MAIL_DOMAIN_CREATED_OK' => 'Mail domain %s has been created successfully.', + 'MAIL_ACCOUNT_CREATED_OK' => 'Mail account %s@%s has been created successfully.', + 'DATABASE_CREATED_OK' => 'Database %s has been created successfully.', + 'CRON_CREATED_OK' => 'Cron job has been created successfully.', + 'IP_CREATED_OK' => 'IP address %s has been created successfully.', + 'PACKAGE_CREATED_OK' => 'Package %s has been created successfully.', + 'SSL_GENERATED_OK' => 'Certificate has been generated successfully.', + 'RULE_CREATED_OK' => 'Rule has been created successfully.', + 'BANLIST_CREATED_OK' => 'IP address has been banned successfully', + 'Autoupdate has been successfully enabled' => 'Autoupdate has been successfully enabled.', + 'Autoupdate has been successfully disabled' => 'Autoupdate has been successfully disabled.', + 'Cronjob email reporting has been successfully enabled' => 'Cronjob email reporting has been successfully enabled', + 'Cronjob email reporting has been successfully disabled' => 'Cronjob email reporting has been successfully disabled', + 'Changes has been saved.' => 'Changes have been saved.', + 'Confirmation' => 'Confirmation', + 'DELETE_USER_CONFIRMATION' => 'Are you sure you want to delete user %s?', + 'SUSPEND_USER_CONFIRMATION' => 'Are you sure you want to suspend user %s?', + 'UNSUSPEND_USER_CONFIRMATION' => 'Are you sure you want to unsuspend user %s?', + 'DELETE_DOMAIN_CONFIRMATION' => 'Are you sure you want to delete domain %s?', + 'SUSPEND_DOMAIN_CONFIRMATION' => 'Are you sure you want to suspend domain %s?', + 'UNSUSPEND_DOMAIN_CONFIRMATION' => 'Are you sure you want to unsuspend domain %s?', + 'DELETE_RECORD_CONFIRMATION' => 'Are you sure you want to delete record %s?', + 'SUSPEND_RECORD_CONFIRMATION' => 'Are you sure you want to suspend record %s?', + 'UNSUSPEND_RECORD_CONFIRMATION' => 'Are you sure you want to unsuspend record %s?', + 'DELETE_MAIL_ACCOUNT_CONFIRMATION' => 'Are you sure you want to delete %s?', + 'SUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Are you sure you want to suspend %s?', + 'UNSUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Are you sure you want to unsuspend %s?', + 'DELETE_DATABASE_CONFIRMATION' => 'Are you sure you want to delete database %s?', + 'SUSPEND_DATABASE_CONFIRMATION' => 'Are you sure you want to suspend database %s?', + 'UNSUSPEND_DATABASE_CONFIRMATION' => 'Are you sure you want to unsuspend database %s?', + 'DELETE_CRON_CONFIRMATION' => 'Are you sure you want to delete cron job?', + 'SUSPEND_CRON_CONFIRMATION' => 'Are you sure you want to suspend cron job?', + 'UNSUSPEND_CRON_CONFIRMATION' => 'Are you sure you want to unsuspend cron job?', + 'DELETE_BACKUP_CONFIRMATION' => 'Are you sure you want to delete %s backup?', + 'DELETE_EXCLUSION_CONFIRMATION' => 'Are you sure you want to delete %s exclusion?', + 'DELETE_PACKAGE_CONFIRMATION' => 'Are you sure you want to delete package %s?', + 'DELETE_IP_CONFIRMATION' => 'Are you sure you want to delete IP address %s?', + 'DELETE_RULE_CONFIRMATION' => 'Are you sure you want to delete rule #%s?', + 'SUSPEND_RULE_CONFIRMATION' => 'Are you sure you want to suspend rule #%s?', + 'UNSUSPEND_RULE_CONFIRMATION' => 'Are you sure you want to unsuspend rule #%s?', + 'LEAVE_PAGE_CONFIRMATION' => 'Leave Page?', + 'RESTART_CONFIRMATION' => 'Are you sure you want to restart %s?', + 'Welcome' => 'Welcome', + 'LOGGED_IN_AS' => 'Logged in as user %s', + 'Error' => 'Error', + 'Invalid username or password' => 'Invalid username or password.', + 'Invalid username or code' => 'Invalid username or code.', + 'Passwords not match' => 'Passwords do not match.', + 'Please enter valid email address.' => 'Please enter a valid email address.', + 'Field "%s" can not be blank.' => 'Field "%s" can not be blank.', + 'Password is too short.' => 'Password is too short (minimum is 6 characters)', + 'Error code:' => 'Error code: %s', + 'SERVICE_ACTION_FAILED' => '"%s" "%s" failed', + 'IP address is in use' => 'IP address is in use', + 'BACKUP_SCHEDULED' => 'Task has been added to the queue. You will receive an email notification when your backup is ready for download.', + 'BACKUP_EXISTS' => 'An existing backup is already running. Please wait for that backup to finish.', + 'RESTORE_SCHEDULED' => 'Task has been added to the queue. You will receive an email notification when your restore has been completed.', + 'RESTORE_EXISTS' => 'An existing restoration task is already running. Please wait for it to finish before launching it again.', - 'WEB_EXCLUSIONS' => 'Въведете име на домейн, по едно на ред. За да изключите използването всички домейни *. За изключване на конкретни директории: domain.com:public_html/cache:public_html/tmp', - 'DNS_EXCLUSIONS' => 'Въведете име на домейн, по едно на ред. За да изключите използването всички домейни *', - 'MAIL_EXCLUSIONS' => 'Въведете име на домейн, по едно на ред. За да изключите използването всички домейни *. За изключване на конкретни акаунти, използвайте: domain.com:info:support:postmaster', - 'DB_EXCLUSIONS' => 'Въведете пълно име на база данни, по едно на ред. За да изключите всички бази данни, използвайте *', - 'CRON_EXCLUSIONS' => 'За да изключите всички задачи, използвайте *', - 'USER_EXCLUSIONS' => 'Въведете име на директория, по едно на ред. За да изключите всички директории, използвайте *', + 'WEB_EXCLUSIONS' => 'Type domain name, one per line. To exclude all domains use *. To exclude specific dirs use following format: domain.com:public_html/cache:public_html/tmp', + 'DNS_EXCLUSIONS' => 'Type domain name, one per line. To exclude all domains use *', + 'MAIL_EXCLUSIONS' => 'Type domain name, one per line. To exclude all domains use *. To exclude specific accounts use following format: domain.com:info:support:postmaster', + 'DB_EXCLUSIONS' => 'Type full database name, one per line. To exclude all databases use *', + 'CRON_EXCLUSIONS' => 'To exclude all jobs use *', + 'USER_EXCLUSIONS' => 'Type directory name, one per line. To exlude all dirs use *', - 'Welcome to Vesta Control Panel' => 'Добре дошли във Контролния панел на Vesta', - 'MAIL_FROM' => 'Контролният панел на Vesta ', - 'GREETINGS_GORDON_FREEMAN' => "Здравейте, %s %s,\n", - 'GREETINGS' => "Здравейте,\n", - 'ACCOUNT_READY' => "Акаунтът ви беше създаден успешно и вече е готов за употреба.\n\nhttps://%s/login/\nUsername: %s\nPassword: %s\n\n--\nVesta Control Panel\n", - 'FTP login credentials' => 'Данни за FTP вход', - 'FTP_ACCOUNT_READY' => "FTP акаунтът ви беше създаден успешно и вече е готов за употреба.\n\nHostname: %s\nUsername: %s_%s\nPassword: %s\n\n--\nVesta Control Panel\n", + 'Welcome to Vesta Control Panel' => 'Welcome to Vesta Control Panel', + 'MAIL_FROM' => 'Vesta Control Panel ', + 'GREETINGS_GORDON_FREEMAN' => "Hello, %s %s,\n", + 'GREETINGS' => "Hello,\n", + 'ACCOUNT_READY' => "Your account has been created and is ready for use.\n\nhttps://%s/login/\nUsername: %s\nPassword: %s\n\n--\nVesta Control Panel\n", - 'Database Credentials' => 'Информация за база дснни', - 'DATABASE_READY' => "Базата данни беше създадена успешно.\n\nDatabase: %s\nUser: %s\nPassword: %s\n%s\n\n--\nVesta Control Panel\n", + 'FTP login credentials' => 'FTP login credentials', + 'FTP_ACCOUNT_READY' => "FTP account has been created and is ready for use.\n\nHostname: %s\nUsername: %s_%s\nPassword: %s\n\n--\nVesta Control Panel\n", - 'forgot password' => 'забравена парола', - 'Confirm' => 'Потвърди', - 'New Password' => 'Нова парола', - 'Confirm Password' => 'Потвърди паролата', - 'Reset' => 'Възстанови', - 'Reset Code' => 'Код за възстановяване', - 'RESET_NOTICE' => '', // should we add something here? I don't think it's needed. - 'RESET_CODE_SENT' => 'Кодът за възстановяване на паролата беше изпратен успешно на вашия email
', - 'MAIL_RESET_SUBJECT' => 'Паролата е възстановена на %s', - 'PASSWORD_RESET_REQUEST' => "За да възстановите паролата за контролния панел, моля използвайте следния линк:\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\nAlternatively, you may go to https://%s/reset/?action=code&user=%s and enter the following reset code:\n%s\n\nIf you did not request password reset, please ignore this message and accept our apologies.\n\n--\nVesta Control Panel\n", + 'Database Credentials' => 'Database Credentials', + 'DATABASE_READY' => "Database has been created successfully.\n\nDatabase: %s\nUser: %s\nPassword: %s\n%s\n\n--\nVesta Control Panel\n", - 'Jan' => 'Януари', - 'Feb' => 'Февруари', - 'Mar' => 'Март', - 'Apr' => 'Април', - 'May' => 'Май', - 'Jun' => 'Юни', - 'Jul' => 'Юли', - 'Aug' => 'Август', - 'Sep' => 'Септември', - 'Oct' => 'Октомври', - 'Nov' => 'Ноември', - 'Dec' => 'Декември', + 'forgot password' => 'forgot password', + 'Confirm' => 'Confirm', + 'New Password' => 'New Password', + 'Confirm Password' => 'Confirm Password', + 'Reset' => 'Reset', + 'Reset Code' => 'Reset Code', + 'RESET_NOTICE' => '', + 'RESET_CODE_SENT' => 'Password reset code has been sent to your email address
', + 'MAIL_RESET_SUBJECT' => 'Password Reset at %s', + 'PASSWORD_RESET_REQUEST' => "To reset your control panel password, please follow this link:\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\nAlternatively, you may go to https://%s/reset/?action=code&user=%s and enter the following reset code:\n%s\n\nIf you did not request password reset, please ignore this message and accept our apologies.\n\n--\nVesta Control Panel\n", - 'Configuring Server' => 'Конфигуриране на сървъра', - 'Hostname' => 'Име на хост', - 'Time Zone' => 'Часова зона', - 'Default Language' => 'Език по подразбиране', - 'Proxy Server' => 'Прокси сървър', - 'Web Server' => 'Уеб сървър', - 'Backend Server' => 'Бекенд сървър', - 'Backend Pool Mode' => 'Backend Pool режим', - 'DNS Server' => 'DNS сървър', - 'DNS Cluster' => 'DNS клъстър', - 'MAIL Server' => 'Пощенски сървър', - 'Antivirus' => 'Антивирус', - 'AntiSpam' => 'Антиспам', - 'Webmail URL' => 'Уебмейл адрес', - 'MySQL Support' => 'MySQL поддръжкс', - 'phpMyAdmin URL' => 'phpMyAdmin адрес', - 'PostgreSQL Support' => 'PostgreSQL поддръжка', - 'phpPgAdmin URL' => 'phpPgAdmin адрес', - 'Maximum Number Of Databases' => 'Максимален брой бази данни', - 'Current Number Of Databases' => 'Текущ брой бази данни', - 'Local backup' => 'Местно резервно копие', - 'Compression level' => 'Ниво на компресия', - 'Directory' => 'Директория', - 'Remote backup' => 'Отдалечено резервно копие', + 'Jan' => 'Jan', + 'Feb' => 'Feb', + 'Mar' => 'Mar', + 'Apr' => 'Apr', + 'May' => 'May', + 'Jun' => 'Jun', + 'Jul' => 'Jul', + 'Aug' => 'Aug', + 'Sep' => 'Sep', + 'Oct' => 'Oct', + 'Nov' => 'Nov', + 'Dec' => 'Dec', + + 'Configuring Server' => 'Configuring Server', + 'Hostname' => 'Hostname', + 'Time Zone' => 'Time Zone', + 'Default Language' => 'Default Language', + 'Proxy Server' => 'Proxy Server', + 'Web Server' => 'Web Server', + 'Backend Server' => 'Backend Server', + 'Backend Pool Mode' => 'Backend Pool Mode', + 'DNS Server' => 'DNS Server', + 'DNS Cluster' => 'DNS Cluster', + 'MAIL Server' => 'MAIL Server', + 'Antivirus' => 'Antivirus', + 'AntiSpam' => 'AntiSpam', + 'Webmail URL' => 'Webmail URL', + 'MySQL Support' => 'MySQL Support', + 'phpMyAdmin URL' => 'phpMyAdmin URL', + 'PostgreSQL Support' => 'PostgreSQL Support', + 'phpPgAdmin URL' => 'phpPgAdmin URL', + 'Maximum Number Of Databases' => 'Maximum Number Of Databases', + 'Current Number Of Databases' => 'Current Number Of Databases', + 'Local backup' => 'Local backup', + 'Compression level' => 'Compression level', + 'Directory' => 'Directory', + 'Remote backup' => 'Remote backup', 'ftp' => 'FTP', 'sftp' => 'SFTP', 'SFTP Chroot' => 'SFTP Chroot', - 'FileSystem Disk Quota' => 'Квота на файловата система на диска', - 'Vesta Control Panel Plugins' => 'Допълнения за контролния панел на Vesta', - 'preview' => 'преглед', - 'Reseller Role' => 'Reseller роля', - 'Web Config Editor' => 'Web Config редактор', - 'Template Manager' => 'Мениджър на шаблони', - 'Backup Migration Manager' => 'Мениджър на преминаването към резервни копия', - 'FileManager' => 'Файлов мениджър', - 'show: CPU / MEM / NET / DISK' => 'покажи: CPU / MEM / NET / DISK', + 'FileSystem Disk Quota' => 'FileSystem Disk Quota', + 'Vesta Control Panel Plugins' => 'Vesta Control Panel Plugins', + 'preview' => 'preview', + 'Reseller Role' => 'Reseller Role', + 'Web Config Editor' => 'Web Config Editor', + 'Template Manager' => 'Template Manager', + 'Backup Migration Manager' => 'Backup Migration Manager', + 'FileManager' => 'FileManager', + 'show: CPU / MEM / NET / DISK' => 'show: CPU / MEM / NET / DISK', - 'sort by' => 'подреди по', - 'Date' => 'Дата', - 'Starred' => 'Използвани', - 'Name' => 'Име', + 'sort by' => 'sort by', + 'Date' => 'Date', + 'Starred' => 'Starred', + 'Name' => 'Name', - 'save to favorites' => 'запази в любими', + 'save to favorites' => 'save to favorites', - 'File Manager' => 'Файлов мениджър', - 'size' => 'размер', - 'date' => 'дата', - 'name' => 'име', - 'Initializing' => 'инициализиране', - 'UPLOAD' => 'КАЧИ', - 'NEW FILE' => 'НОВ ФАЙЛ', - 'NEW DIR' => 'НОВА ДИРЕКТОРИЯ', - 'DELETE' => 'ИЗТРИЙ', - 'RENAME' => 'ПРЕИМЕНУВАЙ', - 'MOVE' => 'ПРЕМЕСТИ', - 'RIGHTS' => 'ПРАВА', - 'COPY' => 'КОПИРАЙ', - 'ARCHIVE' => 'АРХИВИРАЙ', - 'EXTRACT' => 'ИЗВЛЕЧИ', - 'DOWNLOAD' => 'ИЗТЕГЛИ', - 'Are you sure?' => 'Сигурни ли сте?', // unused? - 'Hit' => 'Натисни', - 'to reload the page' => 'за да презаредите страницата', - 'Directory name cannot be empty' => 'Въведете име на директорията', - 'File name cannot be empty' => 'Въведете име на файла', - 'No file selected' => 'Не е избран файл', - 'No file or folder selected' => 'Не са избрани папка или файл', - 'File type not supported' => 'Този формат не се поддържа', - 'Directory download not available in current version' => 'Изтегляне на директория не се поддържа в тази версия', - 'Directory not available' => 'Директорията не е налична', - 'Done' => 'Готово', - 'Close' => 'Затвори', - 'Copy' => 'Копирай', - 'Cancel' => 'Отмени', - 'Rename' => 'Преименувай', - 'Move' => 'Премести', - 'Change Rights' => 'Смени правата', - 'Delete' => 'Изтрий', - 'Extract' => 'Извлечи', - 'Create' => 'Създай', - 'Compress' => 'Компресирай', + 'File Manager' => 'File Manager', + 'size' => 'size', + 'date' => 'date', + 'name' => 'name', + 'Initializing' => 'Initializing', + 'UPLOAD' => 'UPLOAD', + 'NEW FILE' => 'NEW FILE', + 'NEW DIR' => 'NEW DIR', + 'DELETE' => 'DELETE', + 'RENAME' => 'RENAME', + 'MOVE' => 'MOVE', + 'RIGHTS' => 'RIGHTS', + 'COPY' => 'COPY', + 'ARCHIVE' => 'ARCHIVE', + 'EXTRACT' => 'EXTRACT', + 'DOWNLOAD' => 'DOWNLOAD', + 'Are you sure?' => 'Are you sure?', + 'Hit' => 'Hit', + 'to reload the page' => 'to reload the page', + 'Directory name cannot be empty' => 'Directory name cannot be empty', + 'File name cannot be empty' => 'File name cannot be empty', + 'No file selected' => 'No file selected', + 'No file or folder selected' => 'No file or folder selected', + 'File type not supported' => 'File type not supported', + 'Directory download not available in current version' => 'Directory download not available in current version', + 'Directory not available' => 'Directory not available', + 'Done' => 'Done', + 'Close' => 'Close', + 'Copy' => 'Copy', + 'Cancel' => 'Cancel', + 'Rename' => 'Rename', + 'Move' => 'Move', + 'Change Rights' => 'Change Rights', + 'Delete' => 'Delete', + 'Extract' => 'Extract', + 'Create' => 'Create', + 'Compress' => 'Compress', 'OK' => 'OK', - 'YOU ARE COPYING' => 'ВИЕ КОПИРАТЕ', // unused? - 'YOU ARE REMOVING' => 'ВИЕ ПРЕМАХВАТЕ', - 'Delete items' => 'Изтрий избраните', - 'Copy files' => 'Копирай файловете', - 'Move files' => 'Премести файловете', - 'Are you sure you want to copy' => 'Сигурни ли сте, че искате да копирате', - 'Are you sure you want to move' => 'Сигурни ли сте, че искате да преместите', - 'Are you sure you want to delete' => 'Сигурни ли сте, че искате да премахнете', - 'into' => 'въведение', - 'existing files will be replaced' => 'съществуващите файлове ще бъдат заменени', - 'Original name' => 'Първоначално име', - 'File' => 'Файл', - 'already exists' => 'вече съществува', - 'Create file' => 'Създай файл', - 'Create directory' => 'Създай директория', - 'read by owner' => 'чети като собственик', - 'write by owner' => 'пиши като собственик', - 'execute/search by owner' => 'изпълни/търси като собственик', - 'read by group' => 'чети като група', - 'write by group' => 'пиши като група', - 'execute/search by group' => 'изпълни/търси като група', - 'read by others' => 'чети като други', - 'write by others' => 'пиши като други', - 'execute/search by others' => 'изпълни/търси като други', + 'YOU ARE COPYING' => 'YOU ARE COPYING', + 'YOU ARE REMOVING' => 'YOU ARE REMOVING', + 'Delete items' => 'Delete items', + 'Copy files' => 'Copy files', + 'Move files' => 'Move files', + 'Are you sure you want to copy' => 'Are you sure you want to copy', + 'Are you sure you want to move' => 'Are you sure you want to move', + 'Are you sure you want to delete' => 'Are you sure you want to delete', + 'into' => 'into', + 'existing files will be replaced' => 'existing files will be replaced', + 'Original name' => 'Original name', + 'File' => 'File', + 'already exists' => 'already exists', + 'Create file' => 'Create file', + 'Create directory' => 'Create directory', + 'read by owner' => 'read by owner', + 'write by owner' => 'write by owner', + 'execute/search by owner' => 'execute/search by owner', + 'read by group' => 'read by group', + 'write by group' => 'write by group', + 'execute/search by group' => 'execute/search by group', + 'read by others' => 'read by others', + 'write by others' => 'write by others', + 'execute/search by others' => 'execute/search by others', - 'Shortcuts' => 'Преки пътища', - 'Add New object' => 'Добави нов обект', - 'Save Form' => 'Запази формата', - 'Cancel saving form' => 'Отмени запазването на формата', - 'Go to USER list' => 'Отиди в USER списъка', - 'Go to WEB list' => 'Отиди в WEB списъка', - 'Go to DNS list' => 'Отиди в DNS списъка', - 'Go to MAIL list' => 'Отиди в MAIL списъка', - 'Go to DB list' => 'Отиди в DB списъка', - 'Go to CRON list' => 'Отиди в CRON списъка', - 'Go to BACKUP list' => 'Отиди в BACKUP списъка', - 'Focus on search' => 'Фокус при търсене', - 'Display/Close shortcuts' => 'Покажи/Скрий преките пътища', - 'Move backward through top menu' => 'Върни се назад в главното меню', - 'Move forward through top menu' => 'Напред към следващото меню', - 'Enter focused element' => 'Добави елемент на фокус', - 'Move up through elements list' => 'Придвижи се нагоре в списъка с елементи', - 'Move down through elements list' => 'Придвижи се надолу в списъка с елементи', + 'Shortcuts' => 'Shortcuts', + 'Add New object' => 'Add New object', + 'Save Form' => 'Save Form', + 'Cancel saving form' => 'Cancel saving form', + 'Go to USER list' => 'Go to USER list', + 'Go to WEB list' => 'Go to WEB list', + 'Go to DNS list' => 'Go to DNS list', + 'Go to MAIL list' => 'Go to MAIL list', + 'Go to DB list' => 'Go to DB list', + 'Go to CRON list' => 'Go to CRON list', + 'Go to BACKUP list' => 'Go to BACKUP list', + 'Focus on search' => 'Focus on search', + 'Display/Close shortcuts' => 'Display/Close shortcuts', + 'Move backward through top menu' => 'Move backward through top menu', + 'Move forward through top menu' => 'Move forward through top menu', + 'Enter focused element' => 'Enter focused element', + 'Move up through elements list' => 'Move up through elements list', + 'Move down through elements list' => 'Move down through elements list', - 'Upload' => 'Качи', - 'New File' => 'Нов файл', - 'New Folder' => 'Нова папка', - 'Download' => 'Изтегляне', - 'Archive' => 'Архивиране', - 'Save File (in text editor)' => 'Запази файла (в текстов редактор)', - 'Close Popup / Cancel' => 'Затвори изскачащия прозорец / Отмени', - 'Move Cursor Up' => 'Премести курсора нагоре', - 'Move Cursor Down' => 'Премести курсора надолу', - 'Switch to Left Tab' => 'Премини в левия раздел', - 'Switch to Right Tab' => 'Премини в десния раздел', - 'Switch Tab' => 'Смени раздел', - 'Go to the Top of the File List' => 'Отиди в началото на файловия списък', - 'Go to the Last File' => 'Кум последната страница', - 'Open File / Enter Directory' => 'Отвори файл / Влез в директория', - 'Edit File' => 'Редактирай файл', - 'Go to Parent Directory' => 'Към главната директория', - 'Select Current File' => 'Избери текущ файл', - 'Select Bunch of Files' => 'Избери няколко файла', - 'Add File to the Current Selection' => 'Добави файла към текущата селекция', - 'Select All Files' => 'Избери всички файлове', - 'shortcuts are inspired by magnificent GNU Midnight Commander файлов мениджър' => - 'преките пътища са вдъхновени от великолепният GNU Midnight Commander файлов мениджър', - 'Licence Key' => 'Лицензен ключ', - 'Enter License Key' => 'Въведете лицензен ключ', - 'Buy Licence' => 'Купете лиценз', - 'Buy Lifetime License' => 'Купете доживотен лиценз', - 'Disable and Cancel Licence' => 'Деактивирайте и отменете лиценз', - 'Licence Activated' => 'Лицензът е активиран', - 'Licence Deactivated' => 'Лицензът е деактивиран', - 'Restrict users so that they cannot use SSH and access only their home directory.' => 'Ограничавайте потребителите от използването на SSH, давайки им достъп единствено до личните им директории.', - 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Разглеждайте, копирайте, редактирайте, показвайте и извличайте всички уеб домейн файлове, използвайки напълно функциониращия ни файлов мениджър.', - 'This is a commercial module, you would need to purchace license key to enable it.' => 'Това е комерсиален модул, за чиито ползване е нужно да поръчате лицензионен ключ.', - 'Minutes' => 'Минути', - 'Hourly' => 'Всеки час', - 'Daily' => 'Всеки ден ', - 'Weekly' => 'Всяка седмица', - 'Monthly' => 'Всеки месец', - 'Run Command' => 'Изпълни команда', - 'every month' => 'всеки месец', - 'every odd month' => 'всеки нечетен месец', - 'every even month' => 'всеки четен месец', - 'every day' => 'всеки ден', - 'every odd day' => 'всеки нечетен ден', - 'every even day' => 'всеки четен ден', - 'weekdays (5 days)' => 'делници (5 дни)', - 'weekend (2 days)' => 'уикенд (2 дни)', - 'Monday' => 'Понеделник', - 'Tuesday' => 'Вторник', - 'Wednesday' => 'Сряда', - 'Thursday' => 'Четвъртък', - 'Friday' => 'Петък', - 'Saturday' => 'Събота', - 'Sunday' => 'Неделя', - 'every hour' => 'на всеки час', - 'every two hours' => 'на всеки два часа', - 'every minute' => 'всяка минута', - 'every two minutes' => 'всеки две минути', - 'every' => 'всеки', - 'Generate' => 'Генерирай', + 'Upload' => 'Upload', + 'New File' => 'New File', + 'New Folder' => 'New Folder', + 'Download' => 'Download', + 'Archive' => 'Archive', + 'Save File (in text editor)' => 'Save File (in text editor)', + 'Close Popup / Cancel' => 'Close Popup / Cancel', + 'Move Cursor Up' => 'Move Cursor Up', + 'Move Cursor Down' => 'Move Cursor Down', + 'Switch to Left Tab' => 'Switch to Left Tab', + 'Switch to Right Tab' => 'Switch to Right Tab', + 'Switch Tab' => 'Switch Tab', + 'Go to the Top of the File List' => 'Go to the Top of the File List', + 'Go to the Last File' => 'Go to the Last File', + 'Open File / Enter Directory' => 'Open File / Enter Directory', + 'Edit File' => 'Edit File', + 'Go to Parent Directory' => 'Go to Parent Directory', + 'Select Current File' => 'Select Current File', + 'Select Bunch of Files' => 'Select Bunch of Files', + 'Add File to the Current Selection' => 'Add File to the Current Selection', + 'Select All Files' => 'Select All Files', + 'shortcuts are inspired by magnificent GNU Midnight Commander file manager' => + 'shortcuts are inspired by magnificent GNU Midnight Commander file manager', + + 'Licence Key' => 'Licence Key', + 'Enter License Key' => 'Enter License Key', + 'Buy Licence' => 'Buy Licence', + 'Buy Lifetime License' => 'Buy Lifetime License', + 'Disable and Cancel Licence' => 'Disable and Cancel Licence', + 'Licence Activated' => 'Licence Activated', + 'Licence Deactivated' => 'Licence Deactivated', + 'Restrict users so that they cannot use SSH and access only their home directory.' => 'Restrict users so that they cannot use SSH and access only their home directory.', + 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.', + 'This is a commercial module, you would need to purchace license key to enable it.' => 'This is a commercial module, you would need to purchace license key to enable it.', + + 'Minutes' => 'Minutes', + 'Hourly' => 'Hourly', + 'Run Command' => 'Run Command', + 'every month' => 'every month', + 'every odd month' => 'every odd month', + 'every even month' => 'every even month', + 'every day' => 'every day', + 'every odd day' => 'every odd day', + 'every even day' => 'every even day', + 'weekdays (5 days)' => 'weekdays (5 days)', + 'weekend (2 days)' => 'weekend (2 days)', + 'Monday' => 'Monday', + 'Tuesday' => 'Tuesday', + 'Wednesday' => 'Wednesday', + 'Thursday' => 'Thursday', + 'Friday' => 'Friday', + 'Saturday' => 'Saturday', + 'Sunday' => 'Sunday', + 'every hour' => 'every hour', + 'every two hours' => 'every two hours', + 'every minute' => 'every minute', + 'every two minutes' => 'every two minutes', + 'every' => 'every', + 'Generate' => 'Generate', 'webalizer' => 'webalizer', 'awstats' => 'awstats', @@ -739,14 +741,13 @@ $LANG['bg'] = array( 'PUB_KEY' => 'PUB_KEY', 'ISSUER' => 'ISSUER', - 'Use server hostname' => 'Използвай сървърното хост име', - 'Use domain hostname' => 'Използвай хост името на домейн', - 'Use STARTTLS' => 'Използвай STARTTLS', - 'Use SSL' => 'Използвай SSL', - 'No encryption' => 'Без криптиране', - 'Do not use encryption' => 'Не използвай криптиране', + 'Use server hostname' => 'Use server hostname', + 'Use domain hostname' => 'Use domain hostname', + 'Use STARTTLS' => 'Use STARTTLS', + 'Use SSL' => 'Use SSL', + 'No encryption' => 'No encryption', + 'Do not use encryption' => 'Do not use encryption', - 'maximum characters length, including prefix' => 'максималната дължина е %s символа, включително префикса', + 'maximum characters length, including prefix' => 'maximum %s characters length, including prefix', ); - From 3d9a5526df3c50b5517d56b404ef8494e97ee01d Mon Sep 17 00:00:00 2001 From: Pavel Galkin Date: Sun, 29 Jan 2017 02:04:10 +0300 Subject: [PATCH 36/45] full bulgarian translation full bulgarian translation for VestaCP by kronz (https://forum.vestacp.com/memberlist.php?mode=viewprofile&u=9167) - https://forum.vestacp.com/viewtopic.php?f=20&t=13217#p55678 --- web/inc/i18n/bg.php | 1305 +++++++++++++++++++++---------------------- 1 file changed, 652 insertions(+), 653 deletions(-) diff --git a/web/inc/i18n/bg.php b/web/inc/i18n/bg.php index cb92158e..b03cf2df 100644 --- a/web/inc/i18n/bg.php +++ b/web/inc/i18n/bg.php @@ -1,733 +1,731 @@ 'Пакет', + 'Packages' => 'Пакети', 'IP' => 'IP', 'Graphs' => 'Графики', 'Statistics' => 'Статистика', 'Log' => 'Логове', 'Server' => 'Сървър', 'Services' => 'Услуги', - 'Firewall' => 'Firewall', - 'Updates' => 'Обновяване', + 'Firewall' => 'Защитна стена', + 'Updates' => 'Обновления', 'Log in' => 'Вход', 'Log out' => 'Изход', - 'USER' => 'Клиенти', - 'WEB' => 'WEB', + 'USER' => 'ПОТРЕБИТЕЛ', + 'WEB' => 'УЕБ', 'DNS' => 'DNS', - 'MAIL' => 'Мейл', - 'DB' => 'Бази Данни', + 'MAIL' => 'ПОЩА', + 'DB' => 'БАЗА ДАННИ', 'CRON' => 'CRON', - 'BACKUP' => 'Архив', + 'BACKUP' => 'РЕЗЕРВНО КОПИЕ', - 'LOGIN' => 'Вход', - 'RESET PASSWORD' => 'Забравена парола', - 'SEARCH' => 'Търси', - 'PACKAGE' => 'Пакет', + 'LOGIN' => 'ВХОД', + 'RESET PASSWORD' => 'ЗАБРАВЕНА ПАРОЛА', + 'SEARCH' => 'ТЪРСЕНЕ', + 'PACKAGE' => 'ПАКЕТ', 'RRD' => 'RRD', - 'STATS' => 'Статистика', - 'LOG' => 'Логове', - 'UPDATES' => 'Обновяване', - 'FIREWALL' => 'FIREWALL', - 'SERVER' => 'Сървър', - 'MEMORY' => 'Памет', - 'DISK' => 'Диск', - 'NETWORK' => 'Мрежа', - 'Web Log Manager' => 'Web Log Manager', - - 'no notifications' => 'no notifications', + 'STATS' => 'СТАТИСТИКА', + 'LOG' => 'ЛОГОВЕ', + 'UPDATES' => 'ОБНОВЛЕНИЯ', + 'FIREWALL' => 'ЗАЩИТНА СТЕНА', + 'SERVER' => 'СЪРВЪР', + 'MEMORY' => 'ПАМЕТ', + 'DISK' => 'ДИСК', + 'NETWORK' => 'МРЕЖА', + 'Web Log Manager' => 'МЕНИДЖЪР НА УЕБ ЛОГОВЕ', 'Add User' => 'Добави потребител', 'Add Domain' => 'Добави домейн', - 'Add Web Domain' => 'Добави домейн', - 'Add DNS Domain' => 'Добави DNS', + 'Add Web Domain' => 'Добави уеб домейн', + 'Add DNS Domain' => 'Добави DNS домейн', 'Add DNS Record' => 'Добави DNS запис', - 'Add Mail Domain' => 'Добави мейл', - 'Add Mail Account' => 'Добави мейл адрес', - 'Add Database' => 'Добави база', - 'Add Cron Job' => 'Добави задача', - 'Create Backup' => 'Направи архив', - 'Configure' => 'Конфигурация', - 'Restore All' => 'Възстанови всички', + 'Add Mail Domain' => 'Добави пощенски домейн', + 'Add Mail Account' => 'Добави пощенски акаунт', + 'Add Database' => 'Добави база данни', + 'Add Cron Job' => 'Добави Cron Job', + 'Create Backup' => 'Създай резервно копие', + 'Configure' => 'Конфигурирай', + 'Restore All' => 'Възобнови всичко', 'Add Package' => 'Добави пакет', - 'Add IP' => 'Добави IP', + 'Add IP' => 'Добави IP адрес', 'Add Rule' => 'Добави правило', - 'Ban IP Address' => 'Бан IP Address', - 'Search' => 'Търси', - 'Add one more FTP Account' => 'Добави FTP потребител', - 'Overall Statistics' => 'Статистика', - 'Daily' => 'Дневно', - 'Weekly' => 'Седмица', - 'Monthly' => 'Месец', - 'Yearly' => 'Година', + 'Ban IP Address' => 'Блокирай IP адрес', + 'Search' => 'Търсене', + 'Add one more FTP Account' => 'Добави допълнителен FTP акаунт', + 'Overall Statistics' => 'Обща статистика', + 'Daily' => 'Всеки ден', + 'Weekly' => 'Всяка седмица', + 'Monthly' => 'Всеки месец', + 'Yearly' => 'Всяка година', 'Add' => 'Добави', 'Back' => 'Назад', 'Save' => 'Запази', - 'Submit' => 'Изпрати', + 'Submit' => 'Вложи', - 'toggle all' => 'Избери всички', - 'apply to selected' => 'изпълни маркираните', - 'rebuild' => 'поправи', - 'rebuild web' => 'поправи web', - 'rebuild dns' => 'поправи dns', - 'rebuild mail' => 'поправи mail', - 'rebuild db' => 'поправи db', - 'rebuild cron' => 'поправи cron', - 'update counters' => 'оибнови брочи', - 'suspend' => 'Забрани', - 'unsuspend' => 'Разреши', - 'delete' => 'изтриване', - 'show per user' => 'покажи за всеки', - 'login as' => 'Влез като', - 'logout' => 'Изход', - 'edit' => 'Редакция', - 'open webstats' => 'отвори статистика', - 'view logs' => 'виж логовете', - 'list records' => 'list %s records', - 'add record' => 'нов запис', - 'list accounts' => 'list %s accounts', - 'add account' => 'add account', - 'open webmail' => 'open webmail', - 'list fail2ban' => 'list fail2ban', - 'open %s' => 'open %s', - 'download' => 'сваляне', - 'restore' => 'възстанови', - 'configure restore settings' => 'configure restore settings', + 'toggle all' => 'избери всичко', + 'apply to selected' => 'приложи за избраните', + 'rebuild' => 'възстанови', + 'rebuild web' => 'възстанови уеб', + 'rebuild dns' => 'възстанови dns', + 'rebuild mail' => 'възстанови поща', + 'rebuild db' => 'възстанови база данни', + 'rebuild cron' => 'възстанови cron', + 'update counters' => 'обнови броячите', + 'suspend' => 'спри', + 'unsuspend' => 'активирай', + 'delete' => 'изтрий', + 'show per user' => 'покажи за потребителя', + 'login as' => 'влез като', + 'logout' => 'излез', + 'edit' => 'редактирай', + 'open webstats' => 'отвори уеб статистика', + 'view logs' => 'прегледай логове', + 'list records' => 'покажи списък с %s записи', + 'add record' => 'добави запис', + 'list accounts' => 'покажи списък с %s акаунта', + 'add account' => 'добави акаунт', + 'open webmail' => 'oтвори уеб поща', + 'list fail2ban' => 'покажи fail2ban списък', + 'open %s' => 'отвори %s', + 'download' => 'изтегли', + 'restore' => 'възобнови', + 'configure restore settings' => 'конфигурирай настройките за възобновяване', 'stop' => 'стоп', 'start' => 'старт', 'restart' => 'рестарт', 'update' => 'обнови', - 'generate' => 'generate', - 'Generate CSR' => 'Generate CSR', - 'reread IP' => 'reread IP', - 'enable autoupdate' => 'enable autoupdate', - 'disable autoupdate' => 'disable autoupdate', - 'turn on notifications' => 'turn on notifications', - 'turn off notifications' => 'turn off notifications', - 'configure' => 'configure', + 'generate' => 'генерирай', + 'Generate CSR' => 'Генерирай CSR', + 'reread IP' => 'зареди наново IP адреса', + 'enable autoupdate' => 'позволи автоматичното обновяване', + 'disable autoupdate' => 'забрани автоматичното обновяване', + 'turn on notifications' => 'включи известията', + 'turn off notifications' => 'изключи известията', - 'Adding User' => 'Adding User', - 'Editing User' => 'Editing User', - 'Adding Domain' => 'Adding Domain', - 'Editing Domain' => 'Editing Domain', - 'Adding DNS Domain' => 'Adding DNS Domain', - 'Editing DNS Domain' => 'Editing DNS Domain', - 'Adding DNS Record' => 'Adding DNS Record', - 'Editing DNS Record' => 'Editing DNS Record', - 'Adding Mail Domain' => 'Adding Mail Domain', - 'Editing Mail Domain' => 'Editing Mail Domain', - 'Adding Mail Account' => 'Adding Mail Account', - 'Editing Mail Account' => 'Editing Mail Account', - 'Adding database' => 'Adding database', - 'Editing Cron Job' => 'Editing Cron Job', - 'Adding Cron Job' => 'Adding Cron Job', - 'Editing Database' => 'Editing Database', - 'Adding Package' => 'Adding Package', - 'Editing Package' => 'Editing Package', - 'Adding IP address' => 'Adding IP address', - 'Editing IP Address' => 'Editing IP Address', - 'Editing Backup Exclusions' => 'Editing Backup Exclusions', - 'Generating CSR' => 'Generating CSR', - 'Listing' => 'Listing', - 'Search Results' => 'Search Results', - 'Adding Firewall Rule' => 'Adding Firewall Rule', - 'Editing Firewall Rule' => 'Editing Firewall Rule', - 'Adding IP Address to Banlist' => 'Adding IP Address to Banlist', + 'Adding User' => 'Добавяне на потребител', + 'Editing User' => 'Редактиране на потребител', + 'Adding Domain' => 'Добавяне на домейн', + 'Editing Domain' => 'Редактиране на домейн', + 'Adding DNS Domain' => 'Добавяне на DNS домейн', + 'Editing DNS Domain' => 'Редактиране на DNS домейн', + 'Adding DNS Record' => 'Добавяне на DNS запис', + 'Editing DNS Record' => 'Редактиране на DNS запис', + 'Adding Mail Domain' => 'Добавяне на пощенски домейн', + 'Editing Mail Domain' => 'Редактиране на пощенски домейн', + 'Adding Mail Account' => 'Добавяне на пощенски акаунт', + 'Editing Mail Account' => 'Редактиране на пощенски акаунт', + 'Adding database' => 'Добавяне на база данни', + 'Editing Cron Job' => 'Добавяне на Cron Job', + 'Adding Cron Job' => 'Редактиране на Cron Job', + 'Editing Database' => 'Редактиране на база данни', + 'Adding Package' => 'Добавяне на пакет', + 'Editing Package' => 'Редактиране на пакет', + 'Adding IP address' => 'Добавяне на IP адрес', + 'Editing IP Address' => 'Редактиране на IP адрес', + 'Editing Backup Exclusions' => 'Редактиране на изключения от резервно копие', + 'Generating CSR' => 'Генериране на CSR', + 'Listing' => 'Показване на списък', + 'Search Results' => 'Търси резултати', + 'Adding Firewall Rule' => 'Добавяне на правило за защитната стена', + 'Editing Firewall Rule' => 'Редактиране на правилото за защитната стена', + 'Adding IP Address to Banlist' => 'Добавяне на IP адрес към черния списък', + 'active' => 'активен', + 'spnd' => 'деактивиран', + 'suspended' => 'деактивиран', + 'running' => 'работещ', + 'stopped' => 'спрян', + 'outdated' => 'неактуален', + 'updated' => 'актуален', - 'active' => 'active', - 'spnd' => 'suspended', - 'suspended' => 'suspended', - 'running' => 'running', - 'stopped' => 'stopped', - 'outdated' => 'outdated', - 'updated' => 'updated', - - 'yes' => 'yes', - 'no' => 'no', - 'none' => 'none', + 'yes' => 'да', + 'no' => 'не', + 'none' => 'няма', 'pb' => 'pb', 'tb' => 'tb', 'gb' => 'gb', 'mb' => 'mb', - 'minute' => 'minute', - 'hour' => 'hour', - 'day' => 'day', - 'days' => 'days', - 'hours' => 'hours', - 'minutes' => 'minutes', - 'month' => 'month', - 'package' => 'package', - 'Bandwidth' => 'Bandwidth', - 'Disk' => 'Disk', - 'Web' => 'Web', - 'Mail' => 'Mail', - 'Databases' => 'Databases', - 'User Directories' => 'User Directories', - 'Template' => 'Template', - 'Web Template' => 'Web Template', - 'Backend Template' => 'Backend Template', - 'Proxy Template' =>'Proxy Template', - 'DNS Template' => 'DNS Template', - 'Web Domains' => 'Web Domains', - 'SSL Domains' => 'SSL Domains', - 'Web Aliases' => 'Web Aliases', - 'per domain' => 'per domain', - 'DNS Domains' => 'DNS Domains', - 'DNS domains' => 'DNS domains', - 'DNS records' => 'DNS records', - 'Name Servers' => 'Name Servers', - 'Mail Domains' => 'Mail Domains', - 'Mail Accounts' => 'Mail Accounts', + 'minute' => 'минута', + 'hour' => 'час', + 'day' => 'ден', + 'days' => 'дни', + 'hours' => 'часове', + 'minutes' => 'минути', + 'month' => 'месец', + 'package' => 'пакет', + 'Bandwidth' => 'Трафик', + 'Disk' => 'Диск', + 'Web' => 'Уеб', + 'Mail' => 'Поща', + 'Databases' => 'Бази данни', + 'User Directories' => 'Потребителски директории', + 'Template' => 'Шаблон', + 'Web Template' => 'Уеб шаблон', + 'Backend Template' => 'Готов шаблон', + 'Proxy Template' =>'Прокси шаблон', + 'DNS Template' => 'DNS шаблон', + 'Web Domains' => 'Уеб домейни', + 'SSL Domains' => 'SSL домейни', + 'Web Aliases' => 'Уеб наименувания', + 'per domain' => 'на домейн', + 'DNS Domains' => 'DNS Домейни', + 'DNS domains' => 'DNS домейни', + 'DNS records' => 'DNS записи', + 'Name Servers' => 'Сървъри за имена', + 'Mail Domains' => 'Пощенски домейни', + 'Mail Accounts' => 'Пощенски акаунти', 'Cron Jobs' => 'Cron Jobs', - 'SSH Access' => 'SSH Access', - 'IP Address' => 'IP Address', - 'IP Addresses' => 'IP Addresses', - 'Backups' => 'Backups', - 'Backup System' => 'Backup System', - 'backup exclusions' => 'backup exclusions', - 'template' => 'template', - 'SSL Support' => 'SSL Support', - 'SSL Home Directory' => 'SSL Home', - 'Lets Encrypt Support' => 'Lets Encrypt Support', + 'SSH Access' => 'SSH достъп', + 'IP Address' => 'IP адрес', + 'IP Addresses' => 'IP адреси', + 'Backups' => 'Резервни копия', + 'Backup System' => 'Система за резервни копия', + 'backup exclusions' => 'Резервни копия - изключения', + 'template' => 'шаблон', + 'SSL Support' => 'SSL поддръжка', + 'SSL Home Directory' => 'SSL начало', + 'Lets Encrypt Support' => 'Lets Encrypt поддръжка', 'Lets Encrypt' => 'Lets Encrypt', - 'Your certificate will be automatically issued in 5 minutes' => 'Your certificate will be automatically issued in 5 minutes', - 'Proxy Support' => 'Proxy Support', - 'Proxy Extensions' => 'Proxy Extensions', - 'Web Statistics' => 'Web Statistics', - 'Additional FTP Account' => 'Additional FTP', - 'Path' => 'Path', + 'Proxy Support' => 'Прокси поддръжка', + 'Proxy Extensions' => 'Прокси разширения', + 'Web Statistics' => 'Уеб статистики', + 'Additional FTP Account' => 'Допълнителни FTP акаунти', + 'Path' => 'Път', 'SOA' => 'SOA', 'TTL' => 'TTL', - 'Expire' => 'Expire', - 'Records' => 'Records', - 'Serial' => 'Serial', - 'Catchall email' => 'Catchall email', - 'AntiVirus Support' => 'AntiVirus Support', - 'AntiSpam Support' => 'AntiSpam Support', - 'DKIM Support' => 'DKIM Support', - 'Accounts' => 'Accounts', - 'Quota' => 'Quota', - 'Autoreply' => 'Autoreply', - 'Forward to' => 'Forward to', - 'Do not store forwarded mail' => 'Do not store forwarded mail', - 'IMAP hostname' => 'IMAP hostname', - 'IMAP port' => 'IMAP port', - 'IMAP security' => 'IMAP security', - 'IMAP auth method' => 'IMAP auth method', - 'SMTP hostname' => 'SMTP hostname', - 'SMTP port' => 'SMTP port', - 'SMTP security' => 'SMTP security', - 'SMTP auth method' => 'SMTP auth method', + 'Expire' => 'Изтича', + 'Records' => 'Записи', + 'Serial' => 'Сериен', + 'Catchall email' => 'Универсална поща', + 'AntiVirus Support' => 'Антивирусна поддръжка', + 'AntiSpam Support' => 'Антиспам поддръжка', + 'DKIM Support' => 'DKIM поддръжка', + 'Accounts' => 'Акаунти', + 'Quota' => 'Квота', + 'Autoreply' => 'Автоматичен отговор', + 'Forward to' => 'Препрати до', + 'Do not store forwarded mail' => 'Не съхранявай препратена поща', + 'IMAP hostname' => 'IMAP име на хост', + 'IMAP port' => 'IMAP порт', + 'IMAP security' => 'IMAP защита', + 'IMAP auth method' => 'IMAP идентификация', + 'SMTP hostname' => 'SMTP име на хост', + 'SMTP port' => 'SMTP порт', + 'SMTP security' => 'SMTP защита', + 'SMTP auth method' => 'SMTP идентификация', 'STARTTLS' => 'STARTTLS', - 'Normal password' => 'Normal password', - 'database' => 'database', - 'User' => 'User', - 'Host' => 'Host', - 'Charset' => 'Charset', - 'Min' => 'Min', - 'Hour' => 'Hour', - 'Day' => 'Day', - 'Month' => 'Month', - 'Day of week' => 'Day of week', - 'local' => 'local', - 'Run Time' => 'Run Time', - 'Backup Size' => 'Backup Size', + 'Normal password' => 'Нормална парола', + 'database' => 'база данни', + 'User' => 'Потребител', + 'Host' => 'Хост', + 'Charset' => 'Символи', + 'Min' => 'Минути', + 'Hour' => 'Час', + 'Day' => 'Ден', + 'Month' => 'Месец', + 'Day of week' => 'Ден от седмицата', + 'local' => 'локално', + 'Run Time' => 'Време на изпълнение', + 'Backup Size' => 'Размер на резервното копие', 'SYS' => 'SYS', - 'Domains' => 'Domains', - 'Status' => 'Status', - 'shared' => 'shared', - 'dedicated' => 'dedicated', - 'Owner' => 'Owner', - 'Users' => 'Users', - 'Load Average' => 'Load Average', - 'Memory Usage' => 'Memory Usage', - 'APACHE2 Usage' => 'APACHE2 Usage', - 'HTTPD Usage' => 'HTTPD Usage', - 'NGINX Usage' => 'NGINX Usage', - 'MySQL Usage on localhost' => 'MySQL Usage on localhost', - 'PostgreSQL Usage on localhost' => 'PostgreSQL Usage on localhost', - 'Bandwidth Usage eth0' => 'Bandwidth Usage eth0', - 'Bandwidth Usage eth1' => 'Bandwidth Usage eth1', - 'Exim Usage' => 'Exim Usage', - 'FTP Usage' => 'FTP Usage', - 'SSH Usage' => 'SSH Usage', - 'reverse proxy' => 'reverse proxy', - 'web server' => 'web server', - 'dns server' => 'dns server', - 'mail server' => 'mail server', - 'pop/imap server' => 'pop/imap server', - 'email antivirus' => 'email antivirus', - 'email antispam' => 'email antispam', - 'database server' => 'database server', - 'ftp server' => 'ftp server', - 'job scheduler' => 'job scheduler', - 'firewall' => 'firewall', - 'brute-force monitor' => 'brute-force monitor', - 'CPU' => 'CPU', - 'Memory' => 'Memory', - 'Uptime' => 'Uptime', - 'core package' => 'core package', - 'php interpreter' => 'php interpreter', - 'internal web server' => 'internal web server', - 'Version' => 'Version', - 'Release' => 'Release', - 'Architecture' => 'Architecture', - 'Object' => 'Object', - 'Username' => 'Username', - 'Password' => 'Password', + 'Domains' => 'Домейни', + 'Status' => 'Статус', + 'shared' => 'споделен', + 'dedicated' => 'отдаден', + 'Owner' => 'Собственик', + 'Users' => 'Потребители', + 'Load Average' => 'Общи данни', + 'Memory Usage' => 'Използване на памет', + 'APACHE2 Usage' => 'Използване на APACHE2', + 'HTTPD Usage' => 'Използване на HTTPD', + 'NGINX Usage' => 'Използване на NGINX', + 'MySQL Usage on localhost' => 'Използване на MySQL на локалната машина', + 'PostgreSQL Usage on localhost' => 'Използване на PostgreSQL на локалната машина', + 'Bandwidth Usage eth0' => 'Използване на честотна лента eth0', + 'Bandwidth Usage eth1' => 'Използване на честотна лента eth1', + 'Exim Usage' => 'Използване на Exim', + 'FTP Usage' => 'Използване на FTP', + 'SSH Usage' => 'Използване на SSH', + 'reverse proxy' => 'обърни прокси', + 'web server' => 'уеб сървър', + 'dns server' => 'dns сървър', + 'mail server' => 'пощенски сървър', + 'pop/imap server' => 'pop/imap сървър', + 'email antivirus' => 'email антивирус', + 'email antispam' => 'email антиспам', + 'database server' => 'сървър на база данни', + 'ftp server' => 'ftp сървър', + 'job scheduler' => 'органайзер за работа', + 'firewall' => 'защитна стена', + 'brute-force monitor' => 'brute-force монитор', + 'CPU' => 'Процесор', + 'Memory' => 'Памет', + 'Uptime' => 'Време на работа', + 'core package' => 'пакет на ядрото', + 'php interpreter' => 'php интерпретатор', + 'internal web server' => 'вътрешен уеб сървър', + 'Version' => 'Версия', + 'Release' => 'Рилийз', + 'Architecture' => 'Архитектура', + 'Object' => 'Обект', + 'Username' => 'Потребителско име', + 'Password' => 'Парола', 'Email' => 'Email', - 'Package' => 'Package', - 'Language' => 'Language', - 'First Name' => 'First Name', - 'Last Name' => 'Last Name', - 'Send login credentials to email address' => 'Send login credentials to email address', - 'Default Template' => 'Default Template', - 'Default Name Servers' => 'Default Name Servers', - 'Domain' => 'Domain', - 'DNS Support' => 'DNS Support', - 'Mail Support' => 'Mail Support', - 'Advanced options' => 'Advanced options', - 'Basic options' => 'Basic options', - 'Aliases' => 'Aliases', - 'SSL Certificate' => 'SSL Certificate', - 'SSL Key' => 'SSL Key', - 'SSL Certificate Authority / Intermediate' => 'SSL Certificate Authority / Intermediate', + 'Package' => 'Пакет', + 'Language' => 'Език', + 'First Name' => 'Име', + 'Last Name' => 'Фамилив', + 'Send login credentials to email address' => 'Изпращай информация за вписвания на email', + 'Default Template' => 'Шаблон по подразбиране', + 'Default Name Servers' => 'Име на сървър по подразбиране', + 'Domain' => 'Домейн', + 'DNS Support' => 'DNS поддръжка', + 'Mail Support' => 'Поддръжка на поща', + 'Advanced options' => 'Разширени настройки', + 'Basic options' => 'Стандартни настройки', + 'Aliases' => 'Псевдоними', + 'SSL Certificate' => 'SSL сертификат', + 'SSL Key' => 'SSL ключ', + 'SSL Certificate Authority / Intermediate' => 'SSL сертификат / средно ниво', 'SSL CSR' => 'SSL CSR', - 'optional' => 'optional', - 'internal' => 'internal', - 'Statistics Authorization' => 'Statistics Authorization', - 'Statistics Auth' => 'Statistics Auth', - 'Account' => 'Account', - 'Prefix will be automaticaly added to username' => 'Prefix %s will be automaticaly added to username', - 'Send FTP credentials to email' => 'Send FTP credentials to email', - 'Expiration Date' => 'Expiration Date', - 'YYYY-MM-DD' => 'YYYY-MM-DD', - 'Name servers' => 'Name servers', - 'Record' => 'Record', - 'IP or Value' => 'IP or Value', - 'Priority' => 'Priority', - 'Record Number' => 'Record Number', - 'in megabytes' => 'in megabytes', - 'Message' => 'Message', - 'use local-part' => 'use local-part', - 'one or more email addresses' => 'one or more email addresses', - 'Prefix will be automaticaly added to database name and database user' => 'Prefix %s will be automaticaly added to database name and database user.', - 'Database' => 'Database', - 'Type' => 'Type', - 'Minute' => 'Minute', - 'Command' => 'Command', - 'Package Name' => 'Package Name', + 'optional' => 'незадължителен', + 'internal' => 'вътрешвн', + 'Statistics Authorization' => 'Идентификация за статистики', + 'Statistics Auth' => 'Идентификация за статистики', + 'Account' => 'Акаунт', + 'Prefix will be automaticaly added to username' => 'Префикс %s ще бъде автоматично добавен към потребителското име', + 'Send FTP credentials to email' => 'Изпращай информация относно FTP на email', + 'Expiration Date' => 'Крайна дата', + 'YYYY-MM-DD' => 'ГГГГ-ММ-ДД', + 'Name servers' => 'Сървъри с имена', + 'Record' => 'Запис', + 'IP or Value' => 'IP или стойност', + 'Priority' => 'Приоритет', + 'Record Number' => 'Запиши номер', + 'in megabytes' => 'в мегабайти', + 'Message' => 'Съобщение', + 'use local-part' => 'използвай local-part', + 'one or more email addresses' => 'един или повече email адреса', + 'Prefix will be automaticaly added to database name and database user' => 'Префикс %s ще бъде автоматично добавен към името на базата данни и потребителското име.', + 'Database' => 'База данни', + 'Type' => 'Въведи', + 'Minute' => 'Минута', + 'Command' => 'Команда', + 'Package Name' => 'Номер на пакет', 'Netmask' => 'Netmask', - 'Interface' => 'Interface', - 'Shared' => 'Shared', - 'Assigned user' => 'Assigned user', - 'Assigned domain' => 'Assigned domain', - 'NAT IP association' => 'NAT IP association', + 'Interface' => 'Интерфейс', + 'Shared' => 'Споделен', + 'Assigned user' => 'Назначен потребител', + 'Assigned domain' => 'Назначен домейн', + 'NAT IP association' => 'NAT IP асоциация', 'shell' => 'shell', - 'web domains' => 'web domains', - 'web aliases' => 'web aliases', - 'dns records' => 'dns records', - 'mail domains' => 'mail domains', - 'mail accounts' => 'mail accounts', - 'accounts' => 'accounts', - 'databases' => 'databases', + 'web domains' => 'уеб домейни', + 'web aliases' => 'уеб псевдоними', + 'dns records' => 'dns записи', + 'mail domains' => 'пощенски домейни', + 'mail accounts' => 'пощенски акаунти', + 'accounts' => 'акаунти', + 'databases' => 'бази данни', 'cron jobs' => 'cron jobs', - 'backups' => 'backups', - 'quota' => 'quota', - 'day of week' => 'day of week', + 'backups' => 'резервни копия', + 'quota' => 'квота', + 'day of week' => 'ден от седмицата', 'cmd' => 'cmd', - 'users' => 'users', - 'domains' => 'domains', - 'aliases' => 'aliases', - 'records' => 'records', - 'jobs' => 'jobs', - 'username' => 'username', - 'password' => 'password', - 'type' => 'type', - 'charset' => 'charset', - 'domain' => 'domain', + 'users' => 'потребители', + 'domains' => 'домейни', + 'aliases' => 'псевдоними', + 'records' => 'записи', + 'jobs' => 'работа', + 'username' => 'потребителско име', + 'password' => 'парола', + 'type' => 'тип', + 'charset' => 'символи', + 'domain' => 'домейн', 'ip' => 'ip', - 'ip address' => 'ip address', - 'IP address' => 'IP address', + 'ip address' => 'ip адрес', + 'IP address' => 'IP адрес', 'netmask' => 'netmask', - 'interface' => 'interface', - 'assigned user' => 'assigned user', + 'interface' => 'интерфейс', + 'assigned user' => 'назначен потребител', 'ns1' => 'ns1', 'ns2' => 'ns2', - 'user' => 'user', + 'user' => 'потребител', 'email' => 'email', - 'first name' => 'first name', - 'last name' => 'last name', - 'account' => 'account', - 'ssl certificate' => 'ssl certificate', - 'ssl key' => 'ssl key', - 'stats user password' => 'stats user password', - 'stats username' => 'stats username', - 'stats password' => 'stats password', - 'ftp user password' => 'ftp user password', - 'ftp user' => 'ftp user', - 'Last 70 lines of %s.%s.log' => 'Last 70 lines of %s.%s.log', + 'first name' => 'име', + 'last name' => 'фамилия', + 'account' => 'акаунт', + 'ssl certificate' => 'ssl сертификат', + 'ssl key' => 'ssl ключ', + 'stats user password' => 'статистика за потребителска парола', + 'stats username' => 'статистика за потребителско име', + 'stats password' => 'статистика за парола', + 'ftp user password' => 'ftp потребителска парола', + 'ftp user' => 'ftp потребител', + 'Last 70 lines of %s.%s.log' => 'Последните 70 реда от лога за %s.%', 'AccessLog' => 'AccessLog', 'ErrorLog' => 'ErrorLog', - 'Download AccessLog' => 'Download AccessLog', - 'Download ErrorLog' => 'Download ErrorLog', - 'Country' => 'Country', - '2 letter code' => '2 letter code', - 'State / Province' => 'State / Province', - 'City / Locality' => 'City / Locality', - 'Organization' => 'Organization', - 'Action' => 'Action', - 'Protocol' => 'Protocol', - 'Port' => 'Port', - 'Comment' => 'Comment', - 'Banlist' => 'Banlist', - 'ranges are acceptable' => 'ranges are acceptable', - 'CIDR format is supported' => 'CIDR format is supported', - 'ACCEPT' => 'ACCEPT', - 'DROP' => 'DROP', + 'Download AccessLog' => 'Изтегли AccessLog', + 'Download ErrorLog' => 'Изтегли ErrorLog', + 'Country' => 'Страна', + '2 letter code' => '2-буквен код', + 'State / Province' => 'Щат / Провинция', + 'City / Locality' => 'Град / Местност', + 'Organization' => 'Организация', + 'Action' => 'Начало', + 'Protocol' => 'Протокол', + 'Port' => 'Порт', + 'Comment' => 'Коментар', + 'Banlist' => 'Черен списък', + 'ranges are acceptable' => 'стойностите са приемливи', + 'CIDR format is supported' => 'CIDR форматът се поддържа', + 'ACCEPT' => 'ПРИЕМИ', + 'DROP' => 'ПУСНИ', 'TCP' => 'TCP', 'UDP' => 'UDP', 'ICMP' => 'ICMP', 'SSH' => 'SSH', 'FTP' => 'FTP', 'VESTA' => 'VESTA', - 'Add one more Name Server' => 'Add one more Name Server', + 'Add one more Name Server' => 'Добави допълнителен сървър за имена', - 'web domain' => 'web domain', - 'dns domain' => 'dns domain', - 'dns record' => 'dns record', - 'mail domain' => 'mail domain', - 'mail account' => 'mail account', + 'web domain' => 'уеб домейн', + 'dns domain' => 'dns домейн', + 'dns record' => 'dns запис', + 'mail domain' => 'пощенски домейн', + 'mail account' => 'пощенски акаунт', 'cron job' => 'cron job', 'cron' => 'cron', - 'user dir' => 'user dir', + 'user dir' => 'потребителска директория', - 'unlimited' => 'unlimited', - '1 account' => '1 account', - '%s accounts' => '%s accounts', - '1 domain' => '1 domain', - '%s domains' => '%s domains', - '1 record' => '1 record', - '%s records' => '%s records', - '1 mail account' => '1 mail account', - '%s mail accounts' => '%s mail accounts', - '1 database' => '1 database', - '%s databases' => '%s databases', + 'unlimited' => 'неограничен', + '1 account' => '1 акаунт', + '%s accounts' => '%s акаунта', + '1 domain' => '1 домейн', + '%s domains' => '%s домейна', + '1 record' => '1 запис', + '%s records' => '%s записи', + '1 mail account' => '1 пощенски акаунт', + '%s mail accounts' => '%s пощенски акаунта', + '1 database' => '1 база данни', + '%s databases' => '%s бази данни', '1 cron job' => '1 cron job', '%s cron jobs' => '%s cron jobs', - '1 archive' => '1 archive', - '%s archives' => '%s archives', - '1 item' => '1 item', - '%s items' => '%s items', - '1 package' => '1 package', - '%s packages' => '%s packages', - '1 IP address' => '1 IP address', - '%s IP addresses' => '%s IP addresses', - '1 month' => '1 month', - '%s months' => '%s months', - '1 log record' => '1 log record', - '%s log records' => '%s log records', - '1 object' => '1 object', - '%s objects' => '%s objects', - 'no exclusions' => 'no exclusions', - '1 rule' => '1 rule', - '%s rules' => '%s rules', - 'There are no currently banned IP' => 'There are no currently banned IP', + '1 archive' => '1 архив', + '%s archives' => '%s архива', + '1 item' => '1 артикул', + '%s items' => '%s артикула', + '1 package' => '1 пакет', + '%s packages' => '%s пакета', + '1 IP address' => '1 IP адрес', + '%s IP addresses' => '%s IP адреса', + '1 month' => '1 месец', + '%s months' => '%s месеца', + '1 log record' => '1 log запис', + '%s log records' => '%s log записа', + '1 object' => '1 обект', + '%s objects' => '%s обекта', + 'no exclusions' => 'без изключения', + '1 rule' => '1 правило', + '%s rules' => '%s правила', + 'There are no currently banned IP' => 'Няма блокирани IP-та', - 'USER_CREATED_OK' => 'User %s has been created successfully.', - 'WEB_DOMAIN_CREATED_OK' => 'Domain %s has been created successfully.', - 'DNS_DOMAIN_CREATED_OK' => 'DNS domain %s has been created successfully.', - 'DNS_RECORD_CREATED_OK' => 'Record %s.%s has been created successfully.', - 'MAIL_DOMAIN_CREATED_OK' => 'Mail domain %s has been created successfully.', - 'MAIL_ACCOUNT_CREATED_OK' => 'Mail account %s@%s has been created successfully.', - 'DATABASE_CREATED_OK' => 'Database %s has been created successfully.', - 'CRON_CREATED_OK' => 'Cron job has been created successfully.', - 'IP_CREATED_OK' => 'IP address %s has been created successfully.', - 'PACKAGE_CREATED_OK' => 'Package %s has been created successfully.', - 'SSL_GENERATED_OK' => 'Certificate has been generated successfully.', - 'RULE_CREATED_OK' => 'Rule has been created successfully.', - 'BANLIST_CREATED_OK' => 'IP address has been banned successfully', - 'Autoupdate has been successfully enabled' => 'Autoupdate has been successfully enabled.', - 'Autoupdate has been successfully disabled' => 'Autoupdate has been successfully disabled.', - 'Cronjob email reporting has been successfully enabled' => 'Cronjob email reporting has been successfully enabled', - 'Cronjob email reporting has been successfully disabled' => 'Cronjob email reporting has been successfully disabled', - 'Changes has been saved.' => 'Changes have been saved.', - 'Confirmation' => 'Confirmation', - 'DELETE_USER_CONFIRMATION' => 'Are you sure you want to delete user %s?', - 'SUSPEND_USER_CONFIRMATION' => 'Are you sure you want to suspend user %s?', - 'UNSUSPEND_USER_CONFIRMATION' => 'Are you sure you want to unsuspend user %s?', - 'DELETE_DOMAIN_CONFIRMATION' => 'Are you sure you want to delete domain %s?', - 'SUSPEND_DOMAIN_CONFIRMATION' => 'Are you sure you want to suspend domain %s?', - 'UNSUSPEND_DOMAIN_CONFIRMATION' => 'Are you sure you want to unsuspend domain %s?', - 'DELETE_RECORD_CONFIRMATION' => 'Are you sure you want to delete record %s?', - 'SUSPEND_RECORD_CONFIRMATION' => 'Are you sure you want to suspend record %s?', - 'UNSUSPEND_RECORD_CONFIRMATION' => 'Are you sure you want to unsuspend record %s?', - 'DELETE_MAIL_ACCOUNT_CONFIRMATION' => 'Are you sure you want to delete %s?', - 'SUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Are you sure you want to suspend %s?', - 'UNSUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Are you sure you want to unsuspend %s?', - 'DELETE_DATABASE_CONFIRMATION' => 'Are you sure you want to delete database %s?', - 'SUSPEND_DATABASE_CONFIRMATION' => 'Are you sure you want to suspend database %s?', - 'UNSUSPEND_DATABASE_CONFIRMATION' => 'Are you sure you want to unsuspend database %s?', - 'DELETE_CRON_CONFIRMATION' => 'Are you sure you want to delete cron job?', - 'SUSPEND_CRON_CONFIRMATION' => 'Are you sure you want to suspend cron job?', - 'UNSUSPEND_CRON_CONFIRMATION' => 'Are you sure you want to unsuspend cron job?', - 'DELETE_BACKUP_CONFIRMATION' => 'Are you sure you want to delete %s backup?', - 'DELETE_EXCLUSION_CONFIRMATION' => 'Are you sure you want to delete %s exclusion?', - 'DELETE_PACKAGE_CONFIRMATION' => 'Are you sure you want to delete package %s?', - 'DELETE_IP_CONFIRMATION' => 'Are you sure you want to delete IP address %s?', - 'DELETE_RULE_CONFIRMATION' => 'Are you sure you want to delete rule #%s?', - 'SUSPEND_RULE_CONFIRMATION' => 'Are you sure you want to suspend rule #%s?', - 'UNSUSPEND_RULE_CONFIRMATION' => 'Are you sure you want to unsuspend rule #%s?', - 'LEAVE_PAGE_CONFIRMATION' => 'Leave Page?', - 'RESTART_CONFIRMATION' => 'Are you sure you want to restart %s?', - 'Welcome' => 'Welcome', - 'LOGGED_IN_AS' => 'Logged in as user %s', - 'Error' => 'Error', - 'Invalid username or password' => 'Invalid username or password.', - 'Invalid username or code' => 'Invalid username or code.', - 'Passwords not match' => 'Passwords do not match.', - 'Please enter valid email address.' => 'Please enter a valid email address.', - 'Field "%s" can not be blank.' => 'Field "%s" can not be blank.', - 'Password is too short.' => 'Password is too short (minimum is 6 characters)', - 'Error code:' => 'Error code: %s', - 'SERVICE_ACTION_FAILED' => '"%s" "%s" failed', - 'IP address is in use' => 'IP address is in use', - 'BACKUP_SCHEDULED' => 'Task has been added to the queue. You will receive an email notification when your backup is ready for download.', - 'BACKUP_EXISTS' => 'An existing backup is already running. Please wait for that backup to finish.', - 'RESTORE_SCHEDULED' => 'Task has been added to the queue. You will receive an email notification when your restore has been completed.', - 'RESTORE_EXISTS' => 'An existing restoration task is already running. Please wait for it to finish before launching it again.', + 'USER_CREATED_OK' => 'Потребител %s беше създаден успешно.', + 'WEB_DOMAIN_CREATED_OK' => 'Домейн %s беше създаден успешно .', + 'DNS_DOMAIN_CREATED_OK' => 'DNS домейн %s беше създаден успешно.', + 'DNS_RECORD_CREATED_OK' => 'Запис %s.%s беше създаден успешно.', + 'MAIL_DOMAIN_CREATED_OK' => 'Пощенски домейн %s беше създаден успешно.', + 'MAIL_ACCOUNT_CREATED_OK' => 'Пощенски акаунт %s@%s беше създаден успешно.', + 'DATABASE_CREATED_OK' => 'База данни %s беше създадена успешно.', + 'CRON_CREATED_OK' => 'Cron job беше създаден успешно.', + 'IP_CREATED_OK' => 'IP адрес %s беше създаден успешно.', + 'PACKAGE_CREATED_OK' => 'Пакет %s беше създаден успешно.', + 'SSL_GENERATED_OK' => 'Сертификатът беше генериран успешно.', + 'RULE_CREATED_OK' => 'Правилото беше създадено успешно.', + 'BANLIST_CREATED_OK' => 'IP адресът беше блокиран успешно', // I'm not sure about this text + 'Autoupdate has been successfully enabled' => 'Автоматичното обновяване беше включено успешно.', + 'Autoupdate has been successfully disabled' => 'Автоматичното обновяване беше изключено успешно.', + 'Cronjob email reporting has been successfully enabled' => 'Cronjob email reporting беше включен успешно', + 'Cronjob email reporting has been successfully disabled' => 'Cronjob email reporting беше изключен успешно', + 'Changes has been saved.' => 'Промените бяха запазени.', + 'Confirmation' => 'Потвърждение', + 'DELETE_USER_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете потребител %s?', + 'SUSPEND_USER_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате потребител %s?', + 'UNSUSPEND_USER_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате потребител %s?', + 'DELETE_DOMAIN_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете домейн %s?', + 'SUSPEND_DOMAIN_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате домейн %s?', + 'UNSUSPEND_DOMAIN_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате домейн %s?', + 'DELETE_RECORD_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете запис %s?', + 'SUSPEND_RECORD_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате запис %s?', + 'UNSUSPEND_RECORD_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате запис %s?', + 'DELETE_MAIL_ACCOUNT_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете %s?', + 'SUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате %s?', + 'UNSUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате %s?', + 'DELETE_DATABASE_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете база данни %s?', + 'SUSPEND_DATABASE_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате база данни %s?', + 'UNSUSPEND_DATABASE_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате база данни %s?', + 'DELETE_CRON_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете cron job?', + 'SUSPEND_CRON_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате cron job?', + 'UNSUSPEND_CRON_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате cron job?', + 'DELETE_BACKUP_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете %s резервното копие?', + 'DELETE_EXCLUSION_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете %s изключението?', + 'DELETE_PACKAGE_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете пакет %s?', + 'DELETE_IP_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете IP адрес %s?', + 'DELETE_RULE_CONFIRMATION' => 'Сигурни ли сте, че искате да изтриете правило #%s?', + 'SUSPEND_RULE_CONFIRMATION' => 'Сигурни ли сте, че искате да блокирате правило #%s?', + 'UNSUSPEND_RULE_CONFIRMATION' => 'Сигурни ли сте, че искате да отблокирате правило #%s?', + 'LEAVE_PAGE_CONFIRMATION' => 'Напускане на страницата?', + 'RESTART_CONFIRMATION' => 'Сигурни ли сте, че искате да рестартирате %s?', + 'Welcome' => 'Добре дошли', + 'LOGGED_IN_AS' => 'Вписани сте като %s', + 'Error' => 'Грешка', + 'Invalid username or password' => 'Невалидно потребителско име или парола.', + 'Invalid username or code' => 'Невалидно потребителско име или код.', + 'Passwords not match' => 'Паролите не съвпадат.', + 'Please enter valid email address.' => 'Моля, въведете валиден email адрес.', + 'Field "%s" can not be blank.' => 'Поле "%s" е задължително.', + 'Password is too short.' => 'Паролата е твърде къса (минимум 6 символа)', + 'Error code:' => 'Код на грешката: %s', + 'SERVICE_ACTION_FAILED' => '"%s" "%s" отказа', + 'IP address is in use' => 'IP адресът се използва в момента', + 'BACKUP_SCHEDULED' => 'Задачата е на изчакване. Ще бъдете уведомени по email веднага щом резервното копие стане достъпно за изтегляне.', + 'BACKUP_EXISTS' => 'Друго резервно копие е в действие. Моля, изчакайте приключване.', + 'RESTORE_SCHEDULED' => 'Задачата е на изчакване. Ще бъдете уведомени по email веднага щом възстановяването приключи.', + 'RESTORE_EXISTS' => 'Друго възстановяване е в действие. Моля, изчакайте приключване преди повторно зареждане.', - 'WEB_EXCLUSIONS' => 'Type domain name, one per line. To exclude all domains use *. To exclude specific dirs use following format: domain.com:public_html/cache:public_html/tmp', - 'DNS_EXCLUSIONS' => 'Type domain name, one per line. To exclude all domains use *', - 'MAIL_EXCLUSIONS' => 'Type domain name, one per line. To exclude all domains use *. To exclude specific accounts use following format: domain.com:info:support:postmaster', - 'DB_EXCLUSIONS' => 'Type full database name, one per line. To exclude all databases use *', - 'CRON_EXCLUSIONS' => 'To exclude all jobs use *', - 'USER_EXCLUSIONS' => 'Type directory name, one per line. To exlude all dirs use *', + 'WEB_EXCLUSIONS' => 'Въведете име на домейн, по едно на ред. За да изключите използването всички домейни *. За изключване на конкретни директории: domain.com:public_html/cache:public_html/tmp', + 'DNS_EXCLUSIONS' => 'Въведете име на домейн, по едно на ред. За да изключите използването всички домейни *', + 'MAIL_EXCLUSIONS' => 'Въведете име на домейн, по едно на ред. За да изключите използването всички домейни *. За изключване на конкретни акаунти, използвайте: domain.com:info:support:postmaster', + 'DB_EXCLUSIONS' => 'Въведете пълно име на база данни, по едно на ред. За да изключите всички бази данни, използвайте *', + 'CRON_EXCLUSIONS' => 'За да изключите всички задачи, използвайте *', + 'USER_EXCLUSIONS' => 'Въведете име на директория, по едно на ред. За да изключите всички директории, използвайте *', - 'Welcome to Vesta Control Panel' => 'Welcome to Vesta Control Panel', - 'MAIL_FROM' => 'Vesta Control Panel ', - 'GREETINGS_GORDON_FREEMAN' => "Hello, %s %s,\n", - 'GREETINGS' => "Hello,\n", - 'ACCOUNT_READY' => "Your account has been created and is ready for use.\n\nhttps://%s/login/\nUsername: %s\nPassword: %s\n\n--\nVesta Control Panel\n", + 'Welcome to Vesta Control Panel' => 'Добре дошли във Контролния панел на Vesta', + 'MAIL_FROM' => 'Контролният панел на Vesta ', + 'GREETINGS_GORDON_FREEMAN' => "Здравейте, %s %s,\n", + 'GREETINGS' => "Здравейте,\n", + 'ACCOUNT_READY' => "Акаунтът ви беше създаден успешно и вече е готов за употреба.\n\nhttps://%s/login/\nUsername: %s\nPassword: %s\n\n--\nVesta Control Panel\n", + 'FTP login credentials' => 'Данни за FTP вход', + 'FTP_ACCOUNT_READY' => "FTP акаунтът ви беше създаден успешно и вече е готов за употреба.\n\nHostname: %s\nUsername: %s_%s\nPassword: %s\n\n--\nVesta Control Panel\n", - 'FTP login credentials' => 'FTP login credentials', - 'FTP_ACCOUNT_READY' => "FTP account has been created and is ready for use.\n\nHostname: %s\nUsername: %s_%s\nPassword: %s\n\n--\nVesta Control Panel\n", + 'Database Credentials' => 'Информация за база дснни', + 'DATABASE_READY' => "Базата данни беше създадена успешно.\n\nDatabase: %s\nUser: %s\nPassword: %s\n%s\n\n--\nVesta Control Panel\n", - 'Database Credentials' => 'Database Credentials', - 'DATABASE_READY' => "Database has been created successfully.\n\nDatabase: %s\nUser: %s\nPassword: %s\n%s\n\n--\nVesta Control Panel\n", + 'forgot password' => 'забравена парола', + 'Confirm' => 'Потвърди', + 'New Password' => 'Нова парола', + 'Confirm Password' => 'Потвърди паролата', + 'Reset' => 'Възстанови', + 'Reset Code' => 'Код за възстановяване', + 'RESET_NOTICE' => '', // should we add something here? I don't think it's needed. + 'RESET_CODE_SENT' => 'Кодът за възстановяване на паролата беше изпратен успешно на вашия email
', + 'MAIL_RESET_SUBJECT' => 'Паролата е възстановена на %s', + 'PASSWORD_RESET_REQUEST' => "За да възстановите паролата за контролния панел, моля използвайте следния линк:\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\nAlternatively, you may go to https://%s/reset/?action=code&user=%s and enter the following reset code:\n%s\n\nIf you did not request password reset, please ignore this message and accept our apologies.\n\n--\nVesta Control Panel\n", - 'forgot password' => 'forgot password', - 'Confirm' => 'Confirm', - 'New Password' => 'New Password', - 'Confirm Password' => 'Confirm Password', - 'Reset' => 'Reset', - 'Reset Code' => 'Reset Code', - 'RESET_NOTICE' => '', - 'RESET_CODE_SENT' => 'Password reset code has been sent to your email address
', - 'MAIL_RESET_SUBJECT' => 'Password Reset at %s', - 'PASSWORD_RESET_REQUEST' => "To reset your control panel password, please follow this link:\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\nAlternatively, you may go to https://%s/reset/?action=code&user=%s and enter the following reset code:\n%s\n\nIf you did not request password reset, please ignore this message and accept our apologies.\n\n--\nVesta Control Panel\n", + 'Jan' => 'Януари', + 'Feb' => 'Февруари', + 'Mar' => 'Март', + 'Apr' => 'Април', + 'May' => 'Май', + 'Jun' => 'Юни', + 'Jul' => 'Юли', + 'Aug' => 'Август', + 'Sep' => 'Септември', + 'Oct' => 'Октомври', + 'Nov' => 'Ноември', + 'Dec' => 'Декември', - 'Jan' => 'Jan', - 'Feb' => 'Feb', - 'Mar' => 'Mar', - 'Apr' => 'Apr', - 'May' => 'May', - 'Jun' => 'Jun', - 'Jul' => 'Jul', - 'Aug' => 'Aug', - 'Sep' => 'Sep', - 'Oct' => 'Oct', - 'Nov' => 'Nov', - 'Dec' => 'Dec', - - 'Configuring Server' => 'Configuring Server', - 'Hostname' => 'Hostname', - 'Time Zone' => 'Time Zone', - 'Default Language' => 'Default Language', - 'Proxy Server' => 'Proxy Server', - 'Web Server' => 'Web Server', - 'Backend Server' => 'Backend Server', - 'Backend Pool Mode' => 'Backend Pool Mode', - 'DNS Server' => 'DNS Server', - 'DNS Cluster' => 'DNS Cluster', - 'MAIL Server' => 'MAIL Server', - 'Antivirus' => 'Antivirus', - 'AntiSpam' => 'AntiSpam', - 'Webmail URL' => 'Webmail URL', - 'MySQL Support' => 'MySQL Support', - 'phpMyAdmin URL' => 'phpMyAdmin URL', - 'PostgreSQL Support' => 'PostgreSQL Support', - 'phpPgAdmin URL' => 'phpPgAdmin URL', - 'Maximum Number Of Databases' => 'Maximum Number Of Databases', - 'Current Number Of Databases' => 'Current Number Of Databases', - 'Local backup' => 'Local backup', - 'Compression level' => 'Compression level', - 'Directory' => 'Directory', - 'Remote backup' => 'Remote backup', + 'Configuring Server' => 'Конфигуриране на сървъра', + 'Hostname' => 'Име на хост', + 'Time Zone' => 'Часова зона', + 'Default Language' => 'Език по подразбиране', + 'Proxy Server' => 'Прокси сървър', + 'Web Server' => 'Уеб сървър', + 'Backend Server' => 'Бекенд сървър', + 'Backend Pool Mode' => 'Backend Pool режим', + 'DNS Server' => 'DNS сървър', + 'DNS Cluster' => 'DNS клъстър', + 'MAIL Server' => 'Пощенски сървър', + 'Antivirus' => 'Антивирус', + 'AntiSpam' => 'Антиспам', + 'Webmail URL' => 'Уебмейл адрес', + 'MySQL Support' => 'MySQL поддръжкс', + 'phpMyAdmin URL' => 'phpMyAdmin адрес', + 'PostgreSQL Support' => 'PostgreSQL поддръжка', + 'phpPgAdmin URL' => 'phpPgAdmin адрес', + 'Maximum Number Of Databases' => 'Максимален брой бази данни', + 'Current Number Of Databases' => 'Текущ брой бази данни', + 'Local backup' => 'Местно резервно копие', + 'Compression level' => 'Ниво на компресия', + 'Directory' => 'Директория', + 'Remote backup' => 'Отдалечено резервно копие', 'ftp' => 'FTP', 'sftp' => 'SFTP', 'SFTP Chroot' => 'SFTP Chroot', - 'FileSystem Disk Quota' => 'FileSystem Disk Quota', - 'Vesta Control Panel Plugins' => 'Vesta Control Panel Plugins', - 'preview' => 'preview', - 'Reseller Role' => 'Reseller Role', - 'Web Config Editor' => 'Web Config Editor', - 'Template Manager' => 'Template Manager', - 'Backup Migration Manager' => 'Backup Migration Manager', - 'FileManager' => 'FileManager', - 'show: CPU / MEM / NET / DISK' => 'show: CPU / MEM / NET / DISK', + 'FileSystem Disk Quota' => 'Квота на файловата система на диска', + 'Vesta Control Panel Plugins' => 'Допълнения за контролния панел на Vesta', + 'preview' => 'преглед', + 'Reseller Role' => 'Reseller роля', + 'Web Config Editor' => 'Web Config редактор', + 'Template Manager' => 'Мениджър на шаблони', + 'Backup Migration Manager' => 'Мениджър на преминаването към резервни копия', + 'FileManager' => 'Файлов мениджър', + 'show: CPU / MEM / NET / DISK' => 'покажи: CPU / MEM / NET / DISK', - 'sort by' => 'sort by', - 'Date' => 'Date', - 'Starred' => 'Starred', - 'Name' => 'Name', + 'sort by' => 'подреди по', + 'Date' => 'Дата', + 'Starred' => 'Използвани', + 'Name' => 'Име', - 'save to favorites' => 'save to favorites', + 'save to favorites' => 'запази в любими', - 'File Manager' => 'File Manager', - 'size' => 'size', - 'date' => 'date', - 'name' => 'name', - 'Initializing' => 'Initializing', - 'UPLOAD' => 'UPLOAD', - 'NEW FILE' => 'NEW FILE', - 'NEW DIR' => 'NEW DIR', - 'DELETE' => 'DELETE', - 'RENAME' => 'RENAME', - 'MOVE' => 'MOVE', - 'RIGHTS' => 'RIGHTS', - 'COPY' => 'COPY', - 'ARCHIVE' => 'ARCHIVE', - 'EXTRACT' => 'EXTRACT', - 'DOWNLOAD' => 'DOWNLOAD', - 'Are you sure?' => 'Are you sure?', - 'Hit' => 'Hit', - 'to reload the page' => 'to reload the page', - 'Directory name cannot be empty' => 'Directory name cannot be empty', - 'File name cannot be empty' => 'File name cannot be empty', - 'No file selected' => 'No file selected', - 'No file or folder selected' => 'No file or folder selected', - 'File type not supported' => 'File type not supported', - 'Directory download not available in current version' => 'Directory download not available in current version', - 'Directory not available' => 'Directory not available', - 'Done' => 'Done', - 'Close' => 'Close', - 'Copy' => 'Copy', - 'Cancel' => 'Cancel', - 'Rename' => 'Rename', - 'Move' => 'Move', - 'Change Rights' => 'Change Rights', - 'Delete' => 'Delete', - 'Extract' => 'Extract', - 'Create' => 'Create', - 'Compress' => 'Compress', + 'File Manager' => 'Файлов мениджър', + 'size' => 'размер', + 'date' => 'дата', + 'name' => 'име', + 'Initializing' => 'инициализиране', + 'UPLOAD' => 'КАЧИ', + 'NEW FILE' => 'НОВ ФАЙЛ', + 'NEW DIR' => 'НОВА ДИРЕКТОРИЯ', + 'DELETE' => 'ИЗТРИЙ', + 'RENAME' => 'ПРЕИМЕНУВАЙ', + 'MOVE' => 'ПРЕМЕСТИ', + 'RIGHTS' => 'ПРАВА', + 'COPY' => 'КОПИРАЙ', + 'ARCHIVE' => 'АРХИВИРАЙ', + 'EXTRACT' => 'ИЗВЛЕЧИ', + 'DOWNLOAD' => 'ИЗТЕГЛИ', + 'Are you sure?' => 'Сигурни ли сте?', // unused? + 'Hit' => 'Натисни', + 'to reload the page' => 'за да презаредите страницата', + 'Directory name cannot be empty' => 'Въведете име на директорията', + 'File name cannot be empty' => 'Въведете име на файла', + 'No file selected' => 'Не е избран файл', + 'No file or folder selected' => 'Не са избрани папка или файл', + 'File type not supported' => 'Този формат не се поддържа', + 'Directory download not available in current version' => 'Изтегляне на директория не се поддържа в тази версия', + 'Directory not available' => 'Директорията не е налична', + 'Done' => 'Готово', + 'Close' => 'Затвори', + 'Copy' => 'Копирай', + 'Cancel' => 'Отмени', + 'Rename' => 'Преименувай', + 'Move' => 'Премести', + 'Change Rights' => 'Смени правата', + 'Delete' => 'Изтрий', + 'Extract' => 'Извлечи', + 'Create' => 'Създай', + 'Compress' => 'Компресирай', 'OK' => 'OK', - 'YOU ARE COPYING' => 'YOU ARE COPYING', - 'YOU ARE REMOVING' => 'YOU ARE REMOVING', - 'Delete items' => 'Delete items', - 'Copy files' => 'Copy files', - 'Move files' => 'Move files', - 'Are you sure you want to copy' => 'Are you sure you want to copy', - 'Are you sure you want to move' => 'Are you sure you want to move', - 'Are you sure you want to delete' => 'Are you sure you want to delete', - 'into' => 'into', - 'existing files will be replaced' => 'existing files will be replaced', - 'Original name' => 'Original name', - 'File' => 'File', - 'already exists' => 'already exists', - 'Create file' => 'Create file', - 'Create directory' => 'Create directory', - 'read by owner' => 'read by owner', - 'write by owner' => 'write by owner', - 'execute/search by owner' => 'execute/search by owner', - 'read by group' => 'read by group', - 'write by group' => 'write by group', - 'execute/search by group' => 'execute/search by group', - 'read by others' => 'read by others', - 'write by others' => 'write by others', - 'execute/search by others' => 'execute/search by others', + 'YOU ARE COPYING' => 'ВИЕ КОПИРАТЕ', // unused? + 'YOU ARE REMOVING' => 'ВИЕ ПРЕМАХВАТЕ', + 'Delete items' => 'Изтрий избраните', + 'Copy files' => 'Копирай файловете', + 'Move files' => 'Премести файловете', + 'Are you sure you want to copy' => 'Сигурни ли сте, че искате да копирате', + 'Are you sure you want to move' => 'Сигурни ли сте, че искате да преместите', + 'Are you sure you want to delete' => 'Сигурни ли сте, че искате да премахнете', + 'into' => 'въведение', + 'existing files will be replaced' => 'съществуващите файлове ще бъдат заменени', + 'Original name' => 'Първоначално име', + 'File' => 'Файл', + 'already exists' => 'вече съществува', + 'Create file' => 'Създай файл', + 'Create directory' => 'Създай директория', + 'read by owner' => 'чети като собственик', + 'write by owner' => 'пиши като собственик', + 'execute/search by owner' => 'изпълни/търси като собственик', + 'read by group' => 'чети като група', + 'write by group' => 'пиши като група', + 'execute/search by group' => 'изпълни/търси като група', + 'read by others' => 'чети като други', + 'write by others' => 'пиши като други', + 'execute/search by others' => 'изпълни/търси като други', - 'Shortcuts' => 'Shortcuts', - 'Add New object' => 'Add New object', - 'Save Form' => 'Save Form', - 'Cancel saving form' => 'Cancel saving form', - 'Go to USER list' => 'Go to USER list', - 'Go to WEB list' => 'Go to WEB list', - 'Go to DNS list' => 'Go to DNS list', - 'Go to MAIL list' => 'Go to MAIL list', - 'Go to DB list' => 'Go to DB list', - 'Go to CRON list' => 'Go to CRON list', - 'Go to BACKUP list' => 'Go to BACKUP list', - 'Focus on search' => 'Focus on search', - 'Display/Close shortcuts' => 'Display/Close shortcuts', - 'Move backward through top menu' => 'Move backward through top menu', - 'Move forward through top menu' => 'Move forward through top menu', - 'Enter focused element' => 'Enter focused element', - 'Move up through elements list' => 'Move up through elements list', - 'Move down through elements list' => 'Move down through elements list', + 'Shortcuts' => 'Преки пътища', + 'Add New object' => 'Добави нов обект', + 'Save Form' => 'Запази формата', + 'Cancel saving form' => 'Отмени запазването на формата', + 'Go to USER list' => 'Отиди в USER списъка', + 'Go to WEB list' => 'Отиди в WEB списъка', + 'Go to DNS list' => 'Отиди в DNS списъка', + 'Go to MAIL list' => 'Отиди в MAIL списъка', + 'Go to DB list' => 'Отиди в DB списъка', + 'Go to CRON list' => 'Отиди в CRON списъка', + 'Go to BACKUP list' => 'Отиди в BACKUP списъка', + 'Focus on search' => 'Фокус при търсене', + 'Display/Close shortcuts' => 'Покажи/Скрий преките пътища', + 'Move backward through top menu' => 'Върни се назад в главното меню', + 'Move forward through top menu' => 'Напред към следващото меню', + 'Enter focused element' => 'Добави елемент на фокус', + 'Move up through elements list' => 'Придвижи се нагоре в списъка с елементи', + 'Move down through elements list' => 'Придвижи се надолу в списъка с елементи', - 'Upload' => 'Upload', - 'New File' => 'New File', - 'New Folder' => 'New Folder', - 'Download' => 'Download', - 'Archive' => 'Archive', - 'Save File (in text editor)' => 'Save File (in text editor)', - 'Close Popup / Cancel' => 'Close Popup / Cancel', - 'Move Cursor Up' => 'Move Cursor Up', - 'Move Cursor Down' => 'Move Cursor Down', - 'Switch to Left Tab' => 'Switch to Left Tab', - 'Switch to Right Tab' => 'Switch to Right Tab', - 'Switch Tab' => 'Switch Tab', - 'Go to the Top of the File List' => 'Go to the Top of the File List', - 'Go to the Last File' => 'Go to the Last File', - 'Open File / Enter Directory' => 'Open File / Enter Directory', - 'Edit File' => 'Edit File', - 'Go to Parent Directory' => 'Go to Parent Directory', - 'Select Current File' => 'Select Current File', - 'Select Bunch of Files' => 'Select Bunch of Files', - 'Add File to the Current Selection' => 'Add File to the Current Selection', - 'Select All Files' => 'Select All Files', - 'shortcuts are inspired by magnificent GNU Midnight Commander file manager' => - 'shortcuts are inspired by magnificent GNU Midnight Commander file manager', - - 'Licence Key' => 'Licence Key', - 'Enter License Key' => 'Enter License Key', - 'Buy Licence' => 'Buy Licence', - 'Buy Lifetime License' => 'Buy Lifetime License', - 'Disable and Cancel Licence' => 'Disable and Cancel Licence', - 'Licence Activated' => 'Licence Activated', - 'Licence Deactivated' => 'Licence Deactivated', - 'Restrict users so that they cannot use SSH and access only their home directory.' => 'Restrict users so that they cannot use SSH and access only their home directory.', - 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.', - 'This is a commercial module, you would need to purchace license key to enable it.' => 'This is a commercial module, you would need to purchace license key to enable it.', - - 'Minutes' => 'Minutes', - 'Hourly' => 'Hourly', - 'Run Command' => 'Run Command', - 'every month' => 'every month', - 'every odd month' => 'every odd month', - 'every even month' => 'every even month', - 'every day' => 'every day', - 'every odd day' => 'every odd day', - 'every even day' => 'every even day', - 'weekdays (5 days)' => 'weekdays (5 days)', - 'weekend (2 days)' => 'weekend (2 days)', - 'Monday' => 'Monday', - 'Tuesday' => 'Tuesday', - 'Wednesday' => 'Wednesday', - 'Thursday' => 'Thursday', - 'Friday' => 'Friday', - 'Saturday' => 'Saturday', - 'Sunday' => 'Sunday', - 'every hour' => 'every hour', - 'every two hours' => 'every two hours', - 'every minute' => 'every minute', - 'every two minutes' => 'every two minutes', - 'every' => 'every', - 'Generate' => 'Generate', + 'Upload' => 'Качи', + 'New File' => 'Нов файл', + 'New Folder' => 'Нова папка', + 'Download' => 'Изтегляне', + 'Archive' => 'Архивиране', + 'Save File (in text editor)' => 'Запази файла (в текстов редактор)', + 'Close Popup / Cancel' => 'Затвори изскачащия прозорец / Отмени', + 'Move Cursor Up' => 'Премести курсора нагоре', + 'Move Cursor Down' => 'Премести курсора надолу', + 'Switch to Left Tab' => 'Премини в левия раздел', + 'Switch to Right Tab' => 'Премини в десния раздел', + 'Switch Tab' => 'Смени раздел', + 'Go to the Top of the File List' => 'Отиди в началото на файловия списък', + 'Go to the Last File' => 'Кум последната страница', + 'Open File / Enter Directory' => 'Отвори файл / Влез в директория', + 'Edit File' => 'Редактирай файл', + 'Go to Parent Directory' => 'Към главната директория', + 'Select Current File' => 'Избери текущ файл', + 'Select Bunch of Files' => 'Избери няколко файла', + 'Add File to the Current Selection' => 'Добави файла към текущата селекция', + 'Select All Files' => 'Избери всички файлове', + 'shortcuts are inspired by magnificent GNU Midnight Commander файлов мениджър' => + 'преките пътища са вдъхновени от великолепният GNU Midnight Commander файлов мениджър', + 'Licence Key' => 'Лицензен ключ', + 'Enter License Key' => 'Въведете лицензен ключ', + 'Buy Licence' => 'Купете лиценз', + 'Buy Lifetime License' => 'Купете доживотен лиценз', + 'Disable and Cancel Licence' => 'Деактивирайте и отменете лиценз', + 'Licence Activated' => 'Лицензът е активиран', + 'Licence Deactivated' => 'Лицензът е деактивиран', + 'Restrict users so that they cannot use SSH and access only their home directory.' => 'Ограничавайте потребителите от използването на SSH, давайки им достъп единствено до личните им директории.', + 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Разглеждайте, копирайте, редактирайте, показвайте и извличайте всички уеб домейн файлове, използвайки напълно функциониращия ни файлов мениджър.', + 'This is a commercial module, you would need to purchace license key to enable it.' => 'Това е комерсиален модул, за чиито ползване е нужно да поръчате лицензионен ключ.', + 'Minutes' => 'Минути', + 'Hourly' => 'Всеки час', + 'Daily' => 'Всеки ден ', + 'Weekly' => 'Всяка седмица', + 'Monthly' => 'Всеки месец', + 'Run Command' => 'Изпълни команда', + 'every month' => 'всеки месец', + 'every odd month' => 'всеки нечетен месец', + 'every even month' => 'всеки четен месец', + 'every day' => 'всеки ден', + 'every odd day' => 'всеки нечетен ден', + 'every even day' => 'всеки четен ден', + 'weekdays (5 days)' => 'делници (5 дни)', + 'weekend (2 days)' => 'уикенд (2 дни)', + 'Monday' => 'Понеделник', + 'Tuesday' => 'Вторник', + 'Wednesday' => 'Сряда', + 'Thursday' => 'Четвъртък', + 'Friday' => 'Петък', + 'Saturday' => 'Събота', + 'Sunday' => 'Неделя', + 'every hour' => 'на всеки час', + 'every two hours' => 'на всеки два часа', + 'every minute' => 'всяка минута', + 'every two minutes' => 'всеки две минути', + 'every' => 'всеки', + 'Generate' => 'Генерирай', 'webalizer' => 'webalizer', 'awstats' => 'awstats', @@ -741,13 +739,14 @@ $LANG['bg'] = array( 'PUB_KEY' => 'PUB_KEY', 'ISSUER' => 'ISSUER', - 'Use server hostname' => 'Use server hostname', - 'Use domain hostname' => 'Use domain hostname', - 'Use STARTTLS' => 'Use STARTTLS', - 'Use SSL' => 'Use SSL', - 'No encryption' => 'No encryption', - 'Do not use encryption' => 'Do not use encryption', + 'Use server hostname' => 'Използвай сървърното хост име', + 'Use domain hostname' => 'Използвай хост името на домейн', + 'Use STARTTLS' => 'Използвай STARTTLS', + 'Use SSL' => 'Използвай SSL', + 'No encryption' => 'Без криптиране', + 'Do not use encryption' => 'Не използвай криптиране', - 'maximum characters length, including prefix' => 'maximum %s characters length, including prefix', + 'maximum characters length, including prefix' => 'максималната дължина е %s символа, включително префикса', ); + From b5d52c7e8ca2251357b3614ca9b3f696da2c455f Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Mon, 30 Jan 2017 16:00:04 +0200 Subject: [PATCH 37/45] fix interface duplicates --- bin/v-update-sys-ip | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/v-update-sys-ip b/bin/v-update-sys-ip index c2e6b2be..c7d4c982 100755 --- a/bin/v-update-sys-ip +++ b/bin/v-update-sys-ip @@ -100,7 +100,7 @@ for ip in $ip_list; do check_ifconfig=$(/sbin/ifconfig |grep "$ip") if [ ! -e "$VESTA/data/ips/$ip" ] && [ ! -z "$check_ifconfig" ]; then interface=$(/sbin/ip addr |grep $ip |awk '{print $NF}') - interface=$(echo $interface |cut -f 1 -d :) + interface=$(echo "$interface" |cut -f 1 -d : |head -n 1) netmask=$(/sbin/ip addr |grep $ip |cut -f 2 -d / |cut -f 1 -d \ ) netmask=$(convert_cidr $netmask) $BIN/v-add-sys-ip $ip $netmask $interface From 4a91d29fa1cd66bdcc0201e39aca8a7e4ad67925 Mon Sep 17 00:00:00 2001 From: Leandro Henrique Reis Date: Tue, 31 Jan 2017 08:29:51 -0200 Subject: [PATCH 38/45] fixed translate pt-BR --- web/inc/i18n/pt-BR.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/web/inc/i18n/pt-BR.php b/web/inc/i18n/pt-BR.php index 0ec958ac..deac82ee 100644 --- a/web/inc/i18n/pt-BR.php +++ b/web/inc/i18n/pt-BR.php @@ -40,7 +40,7 @@ $LANG['pt-BR'] = array( 'NETWORK' => 'NETWORK', 'Web Log Manager' => 'Gerenciador de Log Web', - 'no notifications' => 'no notifications', + 'no notifications' => 'sem notificações', 'Add User' => 'Adicionar Usuário', 'Add Domain' => 'Adicionar Domínio', @@ -406,7 +406,7 @@ $LANG['pt-BR'] = array( 'cron job' => 'tarefa', 'cron' => 'cron', - 'user dir' => 'user dir', + 'user dir' => 'diretório do usuário', 'unlimited' => 'ilimitado', '1 account' => '1 conta', @@ -422,9 +422,9 @@ $LANG['pt-BR'] = array( '1 cron job' => '1 tarefa', '%s cron jobs' => '%s tarefas', '1 archive' => '1 arquivo', - '%s archives' => '%s aquivos', + '%s archives' => '%s arquivos', '1 item' => '1 item', - '%s items' => '%s items', + '%s items' => '%s itens', '1 package' => '1 pacote', '%s packages' => '%s pacotes', '1 IP address' => '1 endereço IP', @@ -628,8 +628,8 @@ $LANG['pt-BR'] = array( 'Create' => 'Criar', 'Compress' => 'Comprimir', 'OK' => 'OK', - 'YOU ARE COPYING' => 'VOCE ESTA COPIANDO', - 'YOU ARE REMOVING' => 'VOCE ESTA EXCLUINDO', + 'YOU ARE COPYING' => 'VOCÊ ESTÁ COPIANDO', + 'YOU ARE REMOVING' => 'VOCÊ ESTÁ EXCLUINDO', 'Delete items' => 'Excluir itens', 'Copy files' => 'Copiar arquivos', 'Move files' => 'Mover arquivos', From 50f08b7de80225445ce51453e2f4e7a91d402408 Mon Sep 17 00:00:00 2001 From: Maksim Usmanov | Maks Date: Tue, 7 Feb 2017 19:41:47 +0100 Subject: [PATCH 39/45] Remove trailing dot MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit I check some servers and some times I see than cname not working, I check records and the problem is than some useres add record whit a dot ( in vesta GUI or CLI ) comerecord. in cname 2222 google.com and vesta add it as it cname. 14400 IN CNAME google.com. test. 14400 IN MX 10 mail.googl.com. So whit this pull we remove that dot if added hola 14400 IN CNAME test.net. record 14400 IN CNAME hola.es. recordar 14400 IN CNAME Tres.net. This solve the dot but I think in a while loop, because vesta leave add users cname thiw multiple dots: Adding DNS Record → Record cname.......sdd.net has been created successfully. Maybe vesta team have better solution for this one. --- bin/v-add-dns-record | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/bin/v-add-dns-record b/bin/v-add-dns-record index 3b6e6e95..aeabd7c4 100755 --- a/bin/v-add-dns-record +++ b/bin/v-add-dns-record @@ -109,6 +109,16 @@ if [ ! -z "$DNS_CLUSTER" ]; then fi fi +# remove trailing dot at the end of NS/CNAME/MX/PTR/SRV record + +if [[ $rtype =~ NS|CNAME|MX|PTR|SRV ]]; then + trailing_dot2=$(echo $record | grep "\.$") + if [ ! -z $trailing_dot2 ]; then + record=$(echo "${record::-1}") + fi +fi + + #----------------------------------------------------------# # Vesta # From ce5a304814e0a24d0ff164fb88cdefc84fe5be96 Mon Sep 17 00:00:00 2001 From: dpeca Date: Wed, 8 Feb 2017 14:39:53 +0100 Subject: [PATCH 40/45] Debian installer: adding /usr/sbin/nologin to /etc/shells Adapting installer to code changes from https://github.com/serghey-rodin/vesta/commit/039a989fb243bd12ea329b1e64370c2dc0e65ae9 commit --- install/vst-install-debian.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/install/vst-install-debian.sh b/install/vst-install-debian.sh index 25973e94..af05f12c 100755 --- a/install/vst-install-debian.sh +++ b/install/vst-install-debian.sh @@ -613,8 +613,9 @@ rm -f /etc/cron.d/awstats # Set directory color echo 'LS_COLORS="$LS_COLORS:di=00;33"' >> /etc/profile -# Register /sbin/nologin +# Register /sbin/nologin and /usr/sbin/nologin echo "/sbin/nologin" >> /etc/shells +echo "/usr/sbin/nologin" >> /etc/shells # NTP Synchronization echo '#!/bin/sh' > /etc/cron.daily/ntpdate From 1d9be163db724b77fd315b508b3cb647c17967f2 Mon Sep 17 00:00:00 2001 From: Pavel Galkin Date: Thu, 9 Feb 2017 17:08:26 +0300 Subject: [PATCH 41/45] A little grammar fix grammar error fix https://twitter.com/ctepeo/status/829646922487046146 --- web/inc/i18n/ru.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/inc/i18n/ru.php b/web/inc/i18n/ru.php index 46f1eafb..da88e88c 100644 --- a/web/inc/i18n/ru.php +++ b/web/inc/i18n/ru.php @@ -197,7 +197,7 @@ $LANG['ru'] = array( 'SSL Home Directory' => 'Директория SSL', 'Lets Encrypt Support' => 'Поддержка Lets Encrypt', 'Lets Encrypt' => 'Lets Encrypt', - 'Your certificate will be automatically issued in 5 minutes' => 'Сертификат будет автоматически создан в течении 5-ти минут', + 'Your certificate will be automatically issued in 5 minutes' => 'Сертификат будет автоматически создан в течение 5-ти минут', 'Proxy Support' => 'Поддержка Proxy', 'Proxy Extensions' => 'Обработка Proxy', 'Web Statistics' => 'Статистика сайта', From cb53616e999775f131ff12f1c21a41571663469f Mon Sep 17 00:00:00 2001 From: Serge Kraev Date: Thu, 9 Feb 2017 18:09:39 +0400 Subject: [PATCH 42/45] fix trailing dot quotes --- bin/v-add-dns-record | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/v-add-dns-record b/bin/v-add-dns-record index 3b6e6e95..ec98fd72 100755 --- a/bin/v-add-dns-record +++ b/bin/v-add-dns-record @@ -39,7 +39,7 @@ fi # Add trailing dot at the end of NS/CNAME/MX/PTR/SRV record if [[ $rtype =~ NS|CNAME|MX|PTR|SRV ]]; then trailing_dot=$(echo $dvalue | grep "\.$") - if [ -z $trailing_dot ]; then + if [ -z "$trailing_dot" ]; then dvalue="$dvalue." fi fi From 50ff123251636143caa1862a5e1ff25dd8b14c9d Mon Sep 17 00:00:00 2001 From: Aris Date: Mon, 13 Feb 2017 17:38:03 +0200 Subject: [PATCH 43/45] Updated Greek Translation --- web/inc/i18n/el.php | 161 ++++++++++++++++++++++---------------------- 1 file changed, 81 insertions(+), 80 deletions(-) diff --git a/web/inc/i18n/el.php b/web/inc/i18n/el.php index 7d11a4e4..7af6d1ec 100644 --- a/web/inc/i18n/el.php +++ b/web/inc/i18n/el.php @@ -2,7 +2,8 @@ /** * VestaCP interface translation in Greek. * Translation by Cemendur. - * Last update: 10/03/2015 + * Last update: 2/02/2017 by ArisC + * */ $LANG['el'] = array( @@ -26,22 +27,22 @@ $LANG['el'] = array( 'CRON' => 'CRON', 'BACKUP' => 'BACKUP', - 'LOGIN' => 'LOGIN', - 'RESET PASSWORD' => 'RESET PASSWORD', - 'SEARCH' => 'SEARCH', - 'PACKAGE' => 'PACKAGE', + 'LOGIN' => 'ΣΥΝΔΕΣΗ', + 'RESET PASSWORD' => 'ΕΠΑΝΑΦΟΡΑ ΚΩΔΙΚΟΥ ΠΡΟΣΒΑΣΗΣ', + 'SEARCH' => 'ΑΝΑΖΗΤΗΣΗ', + 'PACKAGE' => 'ΠΑΚΕΤΑ', 'RRD' => 'RRD', - 'STATS' => 'STATS', - 'LOG' => 'LOG', - 'UPDATES' => 'UPDATES', + 'STATS' => 'ΣΤΑΤΙΣΤΙΚΑ', + 'LOG' => 'ΑΡΧΕΙΟ', + 'UPDATES' => 'ΕΝΗΜΕΡΩΣΕΙΣ', 'FIREWALL' => 'FIREWALL', 'SERVER' => 'SERVER', - 'MEMORY' => 'MEMORY', - 'DISK' => 'DISK', - 'NETWORK' => 'NETWORK', + 'MEMORY' => 'ΜΝΗΜΗ', + 'DISK' => 'ΔΙΣΚΟΣ', + 'NETWORK' => 'ΔΙΚΤΥΟ', 'Web Log Manager' => 'Web Log Manager', - 'no notifications' => 'no notifications', + 'no notifications' => 'Δεν υπάρχουν ειδοποιήσεις', 'Add User' => 'Προσθέστε χρήστη', 'Add Domain' => 'Προσθέστε domain', @@ -397,7 +398,7 @@ $LANG['el'] = array( 'SSH' => 'SSH', 'FTP' => 'FTP', 'VESTA' => 'VESTA', - 'Add one more Name Server' => 'Add one more Name Server', + 'Add one more Name Server' => 'Προσθέστε ένα ακόμη Name Server', 'web domain' => 'web domain', 'dns domain' => 'dns domain', @@ -409,7 +410,7 @@ $LANG['el'] = array( 'cron' => 'cron', 'user dir' => 'user dir', - 'unlimited' => 'unlimited', + 'unlimited' => 'απεριόριστα', '1 account' => '1 λογαριασμός', '%s accounts' => '%s λογαριασμοί', '1 domain' => '1 domain', @@ -534,23 +535,23 @@ $LANG['el'] = array( 'MAIL_RESET_SUBJECT' => 'Επαναφορά κωδικού πρόσβασης στο %s', 'PASSWORD_RESET_REQUEST' => "Για να επαναφέρετε τον κωδικό πρόσβασης του πίνακα ελέγχου σας, παρακαλώ ακολουθήστε το link:\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\nΕναλλακτικά, πλοηγηθείτε στη διεύθυνση https://%s/reset/?action=code&user=%s και εισάγετε τον ακόλουθο κωδικό επαναφοράς:\n%s\n\nΕάν δεν ζητήσατε επαναφορά κωδικού πρόσβασης, παρακαλούμε αγνοείστε το παρόν μήνυμα και δεχθείτε τη συγγνώμη μας.\n\n--\nVesta Control Panel\n", - 'Jan' => 'Jan', - 'Feb' => 'Feb', - 'Mar' => 'Mar', - 'Apr' => 'Apr', - 'May' => 'May', - 'Jun' => 'Jun', - 'Jul' => 'Jul', - 'Aug' => 'Aug', - 'Sep' => 'Sep', - 'Oct' => 'Oct', - 'Nov' => 'Nov', - 'Dec' => 'Dec', + 'Jan' => 'Ιαν', + 'Feb' => 'Φεβ', + 'Mar' => 'Μαρ', + 'Apr' => 'Απρ', + 'May' => 'Μαι', + 'Jun' => 'Ιουν', + 'Jul' => 'Ιουλ', + 'Aug' => 'Αυγ', + 'Sep' => 'Σεπ', + 'Oct' => 'Οκτ', + 'Nov' => 'Νοε', + 'Dec' => 'Δεκ', - 'Configuring Server' => 'Configuring Server', + 'Configuring Server' => 'Διαμόρφωση Διακομιστή', 'Hostname' => 'Hostname', - 'Time Zone' => 'Time Zone', - 'Default Language' => 'Default Language', + 'Time Zone' => 'Ζώνη Ώρας', + 'Default Language' => 'Προεπιλεγμένη Γλώσσα', 'Proxy Server' => 'Proxy Server', 'Web Server' => 'Web Server', 'Backend Server' => 'Backend Server', @@ -565,11 +566,11 @@ $LANG['el'] = array( 'phpMyAdmin URL' => 'phpMyAdmin URL', 'PostgreSQL Support' => 'PostgreSQL Support', 'phpPgAdmin URL' => 'phpPgAdmin URL', - 'Maximum Number Of Databases' => 'Maximum Number Of Databases', - 'Current Number Of Databases' => 'Current Number Of Databases', + 'Maximum Number Of Databases' => 'Μέγιστος αριθμός των βάσεων δεδομένων', + 'Current Number Of Databases' => 'Τρέχων αριθμός των βάσεων δεδομένων', 'Local backup' => 'Local backup', - 'Compression level' => 'Compression level', - 'Directory' => 'Directory', + 'Compression level' => 'Επίπεδο συμπίεσης', + 'Directory' => 'Ευρετήριο', 'Remote backup' => 'Remote backup', 'ftp' => 'FTP', 'sftp' => 'SFTP', @@ -584,50 +585,50 @@ $LANG['el'] = array( 'FileManager' => 'FileManager', 'show: CPU / MEM / NET / DISK' => 'show: CPU / MEM / NET / DISK', - 'sort by' => 'sort by', - 'Date' => 'Date', + 'sort by' => 'ταξινόμηση κατά', + 'Date' => 'Ημερομηνία', 'Starred' => 'Starred', - 'Name' => 'Name', + 'Name' => 'Όνομα', - 'save to favorites' => 'save to favorites', + 'save to favorites' => 'Αποθηκεύστε στα αγαπημένα', 'File Manager' => 'File Manager', 'size' => 'size', 'date' => 'date', 'name' => 'name', - 'Initializing' => 'Initializing', + 'Initializing' => 'Αρχικοποίηση', 'UPLOAD' => 'UPLOAD', - 'NEW FILE' => 'NEW FILE', - 'NEW DIR' => 'NEW DIR', - 'DELETE' => 'DELETE', - 'RENAME' => 'RENAME', - 'MOVE' => 'MOVE', - 'RIGHTS' => 'RIGHTS', - 'COPY' => 'COPY', - 'ARCHIVE' => 'ARCHIVE', - 'EXTRACT' => 'EXTRACT', - 'DOWNLOAD' => 'DOWNLOAD', - 'Are you sure?' => 'Are you sure?', + 'NEW FILE' => 'ΝΕΟ ΑΡΧΕΙΟ', + 'NEW DIR' => 'ΝΕΟΣ ΦΑΚΕΛΟΣ', + 'DELETE' => 'ΔΙΑΓΡΑΦΗ', + 'RENAME' => 'ΜΕΤΟΝΟΜΑΣΙΑ', + 'MOVE' => 'ΜΕΤΑΚΙΝΗΣΗ', + 'RIGHTS' => 'ΔΙΚΑΙΩΜΑΤΑ', + 'COPY' => 'ΑΝΤΙΓΡΑΦΕΙ', + 'ARCHIVE' => 'ΑΡΧΕΙΟ', + 'EXTRACT' => 'ΕΞΑΓΩΓΗ', + 'DOWNLOAD' => 'ΚΑΤΕΒΑΣΤΕ', + 'Are you sure?' => 'Είσται σίγουρος/η?', 'Hit' => 'Hit', 'to reload the page' => 'to reload the page', - 'Directory name cannot be empty' => 'Directory name cannot be empty', - 'File name cannot be empty' => 'File name cannot be empty', - 'No file selected' => 'No file selected', - 'No file or folder selected' => 'No file or folder selected', - 'File type not supported' => 'File type not supported', - 'Directory download not available in current version' => 'Directory download not available in current version', - 'Directory not available' => 'Directory not available', + 'Directory name cannot be empty' => 'Το όνομα του φακέλου δεν μπορεί να είναι κενό', + 'File name cannot be empty' => 'Το όνομα αρχείου δεν μπορεί να είναι κενό', + 'No file selected' => 'Κανένα επιλεγμένο αρχείο', + 'No file or folder selected' => 'Κανένα επιλεγμένο αρχείο ή φάκελος', + 'File type not supported' => 'Ο τύπος αρχείου δεν υποστηρίζεται', + 'Directory download not available in current version' => 'Λήψη φακέλου δεν είναι διαθέσιμη στην τρέχουσα έκδοση', + 'Directory not available' => 'Ο φάκελος δεν είναι διαθέσιμος', 'Done' => 'Done', 'Close' => 'Close', - 'Copy' => 'Copy', - 'Cancel' => 'Cancel', - 'Rename' => 'Rename', - 'Move' => 'Move', - 'Change Rights' => 'Change Rights', - 'Delete' => 'Delete', - 'Extract' => 'Extract', - 'Create' => 'Create', - 'Compress' => 'Compress', + 'Copy' => 'Αντιγραφή', + 'Cancel' => 'Ματαίωση', + 'Rename' => 'Μετονομασία', + 'Move' => 'Μετακίνηση', + 'Change Rights' => 'Αλλαγή Δικαιωμάτων', + 'Delete' => 'Διαγραφή', + 'Extract' => 'Εξαγωγή', + 'Create' => 'Δημιουργία', + 'Compress' => 'Συμπιέζω', 'OK' => 'OK', 'YOU ARE COPYING' => 'YOU ARE COPYING', 'YOU ARE REMOVING' => 'YOU ARE REMOVING', @@ -641,7 +642,7 @@ $LANG['el'] = array( 'existing files will be replaced' => 'existing files will be replaced', 'Original name' => 'Original name', 'File' => 'File', - 'already exists' => 'already exists', + 'already exists' => 'υπάρχει ήδη', 'Create file' => 'Create file', 'Create directory' => 'Create directory', 'read by owner' => 'read by owner', @@ -708,29 +709,29 @@ $LANG['el'] = array( 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => 'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.', 'This is a commercial module, you would need to purchace license key to enable it.' => 'This is a commercial module, you would need to purchace license key to enable it.', - 'Minutes' => 'Minutes', + 'Minutes' => 'Λεπτά', 'Hourly' => 'Hourly', 'Run Command' => 'Run Command', 'every month' => 'every month', 'every odd month' => 'every odd month', 'every even month' => 'every even month', - 'every day' => 'every day', + 'every day' => 'κάθε μέρα', 'every odd day' => 'every odd day', 'every even day' => 'every even day', 'weekdays (5 days)' => 'weekdays (5 days)', 'weekend (2 days)' => 'weekend (2 days)', - 'Monday' => 'Monday', - 'Tuesday' => 'Tuesday', - 'Wednesday' => 'Wednesday', - 'Thursday' => 'Thursday', - 'Friday' => 'Friday', - 'Saturday' => 'Saturday', - 'Sunday' => 'Sunday', - 'every hour' => 'every hour', - 'every two hours' => 'every two hours', - 'every minute' => 'every minute', - 'every two minutes' => 'every two minutes', - 'every' => 'every', + 'Monday' => 'Δευτέρα', + 'Tuesday' => 'Τρίτη', + 'Wednesday' => 'Τετάρτη', + 'Thursday' => 'Πέμπτη', + 'Friday' => 'Παρασκευή', + 'Saturday' => 'Σάββατο', + 'Sunday' => 'Κυριακή', + 'every hour' => 'κάθε ώρα', + 'every two hours' => 'κάθε δύο ώρες', + 'every minute' => 'κάθε λεπτό', + 'every two minutes' => 'κάθε δύο λεπτά', + 'every' => 'κάθε', 'Generate' => 'Generate', 'webalizer' => 'webalizer', From 3b9bbe73f560e2c49a56f4d226c31f31fef7ee65 Mon Sep 17 00:00:00 2001 From: Gionni Date: Tue, 14 Feb 2017 02:07:56 +0100 Subject: [PATCH 44/45] fixed typo --- bin/v-add-mail-domain-dkim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/v-add-mail-domain-dkim b/bin/v-add-mail-domain-dkim index 4c0a095e..307fe9b5 100755 --- a/bin/v-add-mail-domain-dkim +++ b/bin/v-add-mail-domain-dkim @@ -81,7 +81,7 @@ fi # Adding dkim in config update_object_value 'mail' 'DOMAIN' "$domain" '$DKIM' 'yes' -increase_user_value "$user" '$U_MAIL_DKMI' +increase_user_value "$user" '$U_MAIL_DKIM' # Logging log_history "enabled DKIM support for $domain" From ddf010a214ffe9e611888ffdab61d0108922371a Mon Sep 17 00:00:00 2001 From: Gionni Date: Tue, 14 Feb 2017 02:08:57 +0100 Subject: [PATCH 45/45] fixed typo --- bin/v-delete-mail-domain-dkim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/v-delete-mail-domain-dkim b/bin/v-delete-mail-domain-dkim index e8e57cf4..f11e48d4 100755 --- a/bin/v-delete-mail-domain-dkim +++ b/bin/v-delete-mail-domain-dkim @@ -61,7 +61,7 @@ fi # Updatoing config update_object_value 'mail' 'DOMAIN' "$domain" '$DKIM' 'no' -decrease_user_value "$user" '$U_MAIL_DKMI' +decrease_user_value "$user" '$U_MAIL_DKIM' # Logging log_history "disabled DKIM support on $domain"