Skip to content

Commit 92016d3

Browse files
committed
Merge branch 'main' into feature/grav-mediawiki-dokuwiki
2 parents 444ffad + a92f143 commit 92016d3

File tree

118 files changed

+4739
-4243
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

118 files changed

+4739
-4243
lines changed

.drone.yml

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,22 @@ platform:
1919
arch: amd64
2020

2121
steps:
22-
- name: Down submodules
22+
- name: Download submodules
2323
image: alpine/git
2424
commands:
2525
- git submodule update --init --recursive
26-
- name: build-install
26+
- name: Build Hestia package and install
2727
commands:
2828
- ./src/hst_autocompile.sh --hestia --install '~localsrc'
29-
- name: Run Bats
29+
- name: Run system / user tests
3030
commands:
3131
- bats ./test/test.bats
32+
- name: Run restore tests
33+
commands:
34+
- bats ./test/restore.bats
35+
- name: Run config tests
36+
commands:
37+
- bats ./test/config-tests.bats
3238
- name: Run Check PHP
3339
commands:
3440
- ./test/check_php.sh
@@ -57,16 +63,22 @@ platform:
5763
arch: amd64
5864

5965
steps:
60-
- name: Down submodules
66+
- name: Download submodules
6167
image: alpine/git
6268
commands:
6369
- git submodule update --init --recursive
64-
- name: build-install
70+
- name: Build Hestia package install
6571
commands:
6672
- ./src/hst_autocompile.sh --hestia --install '~localsrc'
67-
- name: Run Bats
73+
- name: Run system / user tests
6874
commands:
6975
- bats ./test/test.bats
76+
- name: Run restore tests
77+
commands:
78+
- bats ./test/restore.bats
79+
- name: Run config tests
80+
commands:
81+
- bats ./test/config-tests.bats
7082
- name: Run Check PHP
7183
commands:
7284
- ./test/check_php.sh
@@ -76,4 +88,4 @@ trigger:
7688

7789
---
7890
kind: signature
79-
hmac: 206d86147c4ee57339c4af654f073c0d2f136f591c890eb4244ccaef087c433f
91+
hmac: bca7f80ac6198662bc658235d7345485213847f1c00f027e1439775e02776bc7

CHANGELOG.md

Lines changed: 61 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,21 +5,62 @@ All notable changes to this project will be documented in this file.
55

66
### Features
77

8-
- Add support for automated testing HestiaCP code
8+
### Bugfixes
9+
10+
- Improve handling upgrade of Roundcube #1917
11+
12+
## [1.4.10] - Service release
13+
14+
### Features
15+
16+
- Added v-delete-firewall-ban ip all #2031
17+
- Include config tests for nginx/apache2 templates
18+
19+
### Bugfixes
20+
21+
- Fixed UI issues after upgrade jQuery + jQuery UI to last version (#2021 and #2032) + [forum](https://forum.hestiacp.com/t/confusion-about-send-welcome-email-checkbox/4259/11)
22+
- Fixed security issues in caching templates of Nginx when used as Reverse Proxy
23+
- Fixed an issue with deleting multiple mail accounts (#2047)
24+
- Fixed an issue with phpmailer + non latin characters (#2050) thanks @Faymir
25+
- Fix Unable to load dynamic library 'pdo_mysql.so' after php reinstalling (#2069)
26+
27+
## [1.4.9] - Service release
28+
29+
### Bugfixes
30+
31+
- Updated jQuery and jQuery UI to the latest version due to a vulnerability in jQuery. @dependabot
32+
- Fixed bug in /etc/dovecot/conf.d/10-ssl.conf for new installs
33+
- Fixed bug with notifications
34+
- Fixed translation string @myrevery
35+
36+
## [1.4.8] - Service release
37+
38+
### Features
39+
40+
- Add support for automated testing for HestiaCP code with @drone
941
- Add support for SMTP server for internal email #1988 @Myself5 / #1165
1042

1143
### Bugfixes
1244

45+
- Updated jQuery and jQuery UI to the latest version due to a vulnerability in jQuery. @dependabot
1346
- Resolve issue with double ENFORCE_SUBDOMAIN_OWNERSHIP keys in hestia.conf
1447
- Resolve issue with create new user during install in some cases #2000
15-
- Fix an issue with Quick Install apps named Test123
48+
- Fixed an issue with Quick Install apps named Test123 (@PsychotherapistSam)
49+
- Fix an issue with dovecot 2.3 ssl config (#1432)
50+
- Load $HESTIA path during upgrade script (#1698)
51+
- Remove TLS 1.1 from Proftpd config (#950)
52+
- Don't remove postfix when Exim is not installed (#1995)
53+
- Fix a bug in no-php Nginx FPM template (##2007)
54+
- Update German translations
55+
- Fixed a few minor error in Mail DMS records (#2005)
56+
1657

1758
## [1.4.7] - Service release
1859

1960
### Bugfixes
2061

21-
- Fix #1984 phppgadmin not working on apache2 systems
22-
- Fix #1985 Restart service not working
62+
- Fixed #1984 phppgadmin not working on apache2 systems
63+
- Fixed #1985 Restart service not working
2364

2465

2566
## [1.4.6] - Service release
@@ -32,18 +73,18 @@ All notable changes to this project will be documented in this file.
3273

3374
### Bugfixes
3475

35-
- Fix #1961 Renewal Apache2 only SSL certificate fails
76+
- Fixed #1961 Renewal Apache2 only SSL certificate fails
3677
- Fixed #1956 to prevent reset of defined webmail client.
3778
- Explicitly disable cron reports #1978
3879
- Fixed an issue where in rare cases certificate failed to install @dpeca and @myvesta
3980
- Fixed an issue where composer failed to install when .composer folder is missing
40-
- Fix #1980 Lets Encrypt Auto Renewal Reverts Webmail Client back to Roundcube
81+
- Fixed #1980 Lets Encrypt Auto Renewal Reverts Webmail Client back to Roundcube
4182

4283
## [1.4.5] - Service release
4384

4485
### Bugfixes
4586

46-
- Revert #1943 and rework it to fix possible errors occuring on v-rebuild-cron-jobs.
87+
- Revert #1943 and rework it to fix possible errors occurring on v-rebuild-cron-jobs.
4788
- Fixed #1956 to prevent reset of defined webmail client.
4889
- Explicitly disable cron reports #1978
4990

@@ -58,15 +99,15 @@ All notable changes to this project will be documented in this file.
5899
### Bugfixes
59100

60101
- Add template for when webmail is disabled allowing to generate SSL.
61-
- Fix PHP bug in /list/log/
62-
- Fix issue with time in /list/services as it was showing as 50 minute1 instead of minutes
63-
- Add missing back buttons + fix behavoir of back buttons on login page.
102+
- Fixed PHP bug in /list/log/
103+
- Fixed issue with time in /list/services as it was showing as 50 minute1 instead of minutes
104+
- Add missing back buttons + fix behaviour of back buttons on login page.
64105
- Set "default" when WEB_TEMPLATE and PROXY_TEMPLATE is missing in user.conf
65106
- Add BACKEND_TEMPLATE to default package
66-
- Fix possible error occur for v-rebuild-cron-jobs #1943 (thanks @clarkchentw)
67-
- Restrict access Filemanager when SSH is enabled for the user (@bet0x)
107+
- Fixed possible error occur for v-rebuild-cron-jobs #1943 (thanks @clarkchentw)
108+
- Restrict access file manager when SSH is enabled for the user (@bet0x)
68109
- Check for DNS domains when running v-change-sys-ip-nat (@clarkchentw)
69-
- Fix logical error in installer (@clarkchentw)
110+
- Fixed logical error in installer (@clarkchentw)
70111

71112
## [1.4.3] - Service release
72113

@@ -112,10 +153,10 @@ Then run the update via
112153

113154
### Bugfixes
114155

115-
- Fix issue wit startup script for iptables / network (#1849) (@myrevery)
116-
- Fix problem with accidentally replacing nginx.conf during upgrade nginx (#1878 / @myrevery)
117-
- Fix issue with installing Ubuntu 18.04
118-
- Fix issue with login into file manger as admin user
156+
- Fixed issue wit startup script for iptables / network (#1849) (@myrevery)
157+
- Fixed problem with accidentally replacing nginx.conf during upgrade nginx (#1878 / @myrevery)
158+
- Fixed issue with installing Ubuntu 18.04
159+
- Fixed issue with login into file manger as admin user
119160
- Added proxy_extentions back to support older custom templates
120161
- Added the possibility to skip the forced reboot when interactive is set to no
121162
- Fixed an issue with modx template
@@ -552,17 +593,17 @@ Then run the update via
552593
- Remove broken /webmail alias from previous versions.
553594
- Webmail IP address is now inherited from web domain when using multiple IPs.
554595
- Exim now uses the web domain IP if it exists.
555-
- Fix incorrect MX record for DNS domains using the Office 365 template.
596+
- Fixed incorrect MX record for DNS domains using the Office 365 template.
556597

557598
## [1.0.6] - 2019-09-24 - Hotfix
558599
### Bugfixes
559600
- Add support for HTTP/2 Let's Encrypt Server.
560601

561602
## [1.0.5] - 2019-08-06 - Hotfix
562603
### Bugfixes
563-
- Fix several security issues, thanks to Andrea Cardaci (https://cardaci.xyz/)
604+
- Fixed several security issues, thanks to Andrea Cardaci (https://cardaci.xyz/)
564605
- Rework Let's Encrypt ACME staging to use hestia conform standard.
565-
- Fix if condition, use nginx for Let's Encrypt ACME request if present.
606+
- Fixed if condition, use nginx for Let's Encrypt ACME request if present.
566607

567608
## [1.0.4] - 2019-07-09 - Hotfix
568609
### Bugfixes

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22

33
[Hestia Control Panel](https://www.hestiacp.com/)
44
==================================================
5-
**Latest stable release:** Version 1.4.7 | [View Changelog](https://github.com/hestiacp/hestiacp/blob/release/CHANGELOG.md)<br>
5+
**Latest stable release:** Version 1.4.10 | [View Changelog](https://github.com/hestiacp/hestiacp/blob/release/CHANGELOG.md) | [![Build Status](https://drone.hestiacp.com/api/badges/hestiacp/hestiacp/status.svg?ref=refs/heads/main)](https://drone.hestiacp.com/hestiacp/hestiacp) <br>
66

77
**Web:** [www.hestiacp.com](https://www.hestiacp.com/)<br>
88
**Documentation:** [docs.hestiacp.com](https://docs.hestiacp.com/)<br>
99
**Forums:** [forum.hestiacp.com](https://forum.hestiacp.com/)<br>
1010
**Discord:** [Join the discussion](https://discord.gg/nXRUZch)<br />
11-
<br>
11+
<br><br>
1212
[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=ST87LQH2CHGLA)
1313
<br>
1414

bin/v-add-database

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,17 @@ is_object_unsuspended "../../../conf/$type" 'DBHOST' "$host"
5858
#is_charset_valid
5959
is_package_full 'DATABASES'
6060
is_password_valid
61+
62+
if [ "$type" = "pgsql" ]; then
63+
exclude="-"
64+
if [[ "$dbuser" =~ $exclude ]]; then
65+
check_result $E_INVALID "invalid database user format"
66+
fi
67+
if [[ "$database" =~ $exclude ]]; then
68+
check_result $E_INVALID "invalid database format"
69+
fi
70+
fi
71+
6172
dbpass="$password"
6273

6374
# Perform verification if read-only mode is enabled

bin/v-add-mail-account

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,10 @@ if [[ "$MAIL_SYSTEM" =~ exim ]]; then
7272
echo $str >> $HOMEDIR/$user/conf/mail/$domain/passwd
7373
fi
7474

75+
# Create mail account folder (mailbox)
76+
mkdir $HOMEDIR/$user/mail/$domain/$account
77+
chown $user:mail $HOMEDIR/$user/mail/$domain/$account
78+
chmod 700 $HOMEDIR/$user/mail/$domain/$account
7579

7680
#----------------------------------------------------------#
7781
# Hestia #

bin/v-add-sys-roundcube

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ if [ "$UPDATE" == "no" ]; then
8989
[ ! -f "${RC_INSTALL_DIR}/${RC_FILE}" ] && wget "$RC_URL" --retry-connrefused --quiet -O "${RC_INSTALL_DIR}/${RC_FILE}"
9090

9191
tar xzf $RC_FILE
92-
cp -rf $RC_EXTRACT/* $RC_INSTALL_DIR
92+
cp -rT $RC_EXTRACT $RC_INSTALL_DIR
9393

9494
# Delete old config folder
9595
cp $RC_INSTALL_DIR/config/defaults.inc.php $RC_CONFIG_DIR/defaults.inc.php
@@ -111,11 +111,20 @@ if [ "$UPDATE" == "no" ]; then
111111
ln -s $RC_CONFIG_DIR/plugins/newmail_notifier/config.inc.php ./plugins/newmail_notifier/config.inc.php
112112
cp -f $HESTIA_INSTALL_DIR/roundcube/plugins/config_zipdownload.inc.php $RC_CONFIG_DIR/plugins/zipdownload/config.inc.php
113113
ln -s $RC_CONFIG_DIR/plugins/zipdownload/config.inc.php ./plugins/zipdownload/config.inc.php
114+
# Set up correct permissions roundcube
115+
chown -R root:www-data $RC_CONFIG_DIR/
116+
chmod 751 -R $RC_CONFIG_DIR
117+
chmod 644 $RC_CONFIG_DIR/config.inc.php
118+
chmod 644 $RC_CONFIG_DIR/plugins/password/config.inc.php
119+
chmod 644 $RC_CONFIG_DIR/plugins/newmail_notifier/config.inc.php
120+
chmod 644 $RC_CONFIG_DIR/plugins/zipdownload/config.inc.php
114121

122+
# Add robots.txt
123+
echo "User-agent: *" > /var/lib/roundcube/robots.txt
124+
echo "Disallow: /" >> /var/lib/roundcube/robots.txt
115125

116-
chmod 640 $RC_CONFIG_DIR/config.inc.php
117-
chown root:www-data $RC_CONFIG_DIR/config.inc.php
118-
126+
chown -R root:www-data $RC_INSTALL_DIR
127+
119128
# Log file
120129
if [ ! -d $RC_LOG ];then
121130
mkdir $RC_LOG
@@ -146,10 +155,6 @@ if [ "$UPDATE" == "no" ]; then
146155
rm -f -r $RC_INSTALL_DIR/$RC_FILE;
147156
rm -f -r $RC_INSTALL_DIR/$RC_EXTRACT;
148157

149-
# Add robots.txt
150-
echo "User-agent: *" > /var/lib/roundcube/robots.txt
151-
echo "Disallow: /" >> /var/lib/roundcube/robots.txt
152-
153158
# Updating hestia.conf
154159
if [ -z "$(grep WEBMAIL_SYSTEM $HESTIA/conf/hestia.conf)" ]; then
155160
$BIN/v-change-sys-config-value 'WEBMAIL_SYSTEM' 'roundcube'
@@ -165,27 +170,22 @@ if [ "$UPDATE" == "no" ]; then
165170

166171
phpenmod mcrypt > /dev/null 2>&1
167172
else
168-
rm -f -r $RC_INSTALL_DIR
169-
mkdir $RC_INSTALL_DIR
170173
cd "$RC_INSTALL_DIR"
171174
[ ! -f "${RC_INSTALL_DIR}/${RC_FILE}" ] && wget "$RC_URL" --quiet -O "${RC_INSTALL_DIR}/${RC_FILE}"
172175

173176
tar xzf $RC_FILE
174-
cp -rf $RC_EXTRACT/* $RC_INSTALL_DIR
175177

176-
cp -f $RC_INSTALL_DIR/config/defaults.inc.php $RC_CONFIG_DIR/defaults.inc.php
177-
rm -f -r $RC_INSTALL_DIR/config/
178-
ln -s $RC_CONFIG_DIR/ ./config
179-
180-
ln -s $RC_CONFIG_DIR/plugins/password/config.inc.php ./plugins/password/config.inc.php
181-
ln -s $RC_CONFIG_DIR/plugins/newmail_notifier/config.inc.php ./plugins/newmail_notifier/config.inc.php
182-
ln -s $RC_CONFIG_DIR/plugins/zipdownload/config.inc.php ./plugins/zipdownload/config.inc.php
178+
# Run Roundcube upgrade script
179+
$RC_INSTALL_DIR/$RC_EXTRACT/bin/installto.sh -y $RC_INSTALL_DIR > /dev/null 2>&1
180+
$RC_INSTALL_DIR/bin/update.sh --version "$version" > /dev/null 2>&1
181+
chown -R root:www-data $RC_INSTALL_DIR
183182

184-
$RC_INSTALL_DIR/bin/update.sh --version "$version"
185-
186-
rm -f -r $RC_INSTALL_DIR/installer;
187-
rm -f -r $RC_INSTALL_DIR/$RC_FILE;
188-
rm -f -r $RC_INSTALL_DIR/$RC_EXTRACT;
183+
#clean up the mess
184+
if [ -d "$RC_INSTALL_DIR/installer" ]; then
185+
rm -f -r $RC_INSTALL_DIR/installer
186+
fi
187+
rm -f -r $RC_INSTALL_DIR/$RC_FILE
188+
rm -f -r $RC_INSTALL_DIR/$RC_EXTRACT
189189
fi
190190
#----------------------------------------------------------#
191191
# Logging #

bin/v-add-web-php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ check_hestia_demo_mode
5858
# Action #
5959
#----------------------------------------------------------#
6060

61-
mph="php$version-mbstring php$version-bcmath php$version-cli php$version-curl
61+
mph="php$version-common php$version-mbstring php$version-bcmath php$version-cli php$version-curl
6262
php$version-fpm php$version-gd php$version-intl php$version-mysql
6363
php$version-soap php$version-xml php$version-zip php$version-mbstring
6464
php$version-json php$version-bz2 php$version-pspell php$version-imagick php$version-pgsql

bin/v-change-database-user

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,11 @@ get_database_values
6565

6666
#Fix issue #1084 with "Upper case not allowed with PGSQL"
6767
if [ "$TYPE" = "pgsql" ]; then
68-
dbuser=$(echo $dbuser | tr '[:upper:]' '[:lower:]');
68+
dbuser=$(echo $dbuser | tr '[:upper:]' '[:lower:]');
69+
exclude="-"
70+
if [[ "$dbuser" =~ $exclude ]]; then
71+
check_result $E_INVALID "invalid database user format"
72+
fi
6973
fi
7074

7175
# Rebuild database

bin/v-change-sys-ip-helo

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@ if [ -z "$MAIL_SYSTEM" ]; then
2626
check_result "$E_NOTEXIST" "Mail system not installed"
2727
fi
2828

29+
if [ ! -e "$HESTIA/data/ips/$ip" ]; then
30+
exit;
31+
fi
32+
2933
#----------------------------------------------------------#
3034
# Verifications #
3135
#----------------------------------------------------------#

0 commit comments

Comments
 (0)