To fix this manually for now, run these commands as root:
sed -i.ori 's/"\$WEBMAIL")/"WEBMAIL")/' /usr/local/hestia/bin/v-rebuild-mail-domain
for user in $(/usr/local/hestia/bin/v-list-users plain | cut -f1); do if [[ "$("/usr/local/hestia/bin/v-list-user" "$user" json | jq -r '.[]|.U_MAIL_DOMAINS')" -ge 1 ]]; then echo "${B}[ + ]${N} Rebuilding mail domains for user $user"; /usr/local/hestia/bin/v-rebuild-mail-domains "$user";fi;done
systemctl restart nginx apache2
2.- Web Terminal doesnât work.
The service doesnât start and itâs because it doesnât have the node_modules installed.
To fix it:
cd /usr/local/hestia/web-terminal
npm install
After that the service starts but if you try to use the web terminal you only get:
Your session has expired.
And thatâs because it tries to use a missing php file /usr/local/hestia/web-terminal/web-terminal-session-auth.php:
server.js[242164]: Could not open input file: /usr/local/hestia/web-terminal/web-terminal-session-auth.php
server.js[242164]: Session helper failed for 3la6dl33js19afb150tmlq2v9g, refusing connection: Command failed: /usr/local/hestia/php/bin/php /usr/local/hestia/web-terminal/web-terminal-session-auth.php 3la6dl33js19afb150tmlq2v9g
So overnight all my Roundcube(s) stopped checking for mail due to the SSL cert change. But only webmail(s) were affected, so none of the generic troubleshooting guides seemed to apply. Without mail checking, it was more luck than skill that I happened to notice that the HestiaCP version had changed, which is what led me here.
For #1, the webmail SSL config, it looks like 2 separate commands should do the trickâŚ, one to remove the trouble-making â$â from /usr/local/hestia/bin/v-rebuild-mail-domain, and the other to use the corrected CLI command to rebuild for all users.
# sed -i.ori âs/â$WEBMAILâ)/âWEBMAILâ)/â /usr/local/hestia/bin/v-rebuild-mail-domain
# for user in $(/usr/local/hestia/bin/v-list-users plain | cut -f1); do if [[ â$(â/usr/local/hestia/bin/v-list-user" â$userâ json | jq -r â.
|.U_MAIL_DOMAINSâ)" -ge 1 ]]; then echo â${B}[ + ]${N} Rebuilding mail domains for user $userâ; /usr/local/hestia/bin/v-rebuild-mail-domains â$userâ;fi;done
BUT in the first command it refers to /usr/local/hestia/bin/v-rebuild-mail-domain
while in the 2nd command it refers to /usr/local/hestia/bin/v-rebuild-mail-domains
Yes, it is. The second command v-rebuild-mail-domains $user internally runs v-rebuild-mail-domain $user $domain to rebuild all the mail domains for the user.
To assist in determining what something happened, I dug into the appropriate new mail folder and retrieved the following (I sure hope my lingering no-buffer web template experiments didnât gum up the works):
### =============================================================================
Hestia Control Panel Software Update Log
### OPERATING SYSTEM: Debian (12)
CURRENT VERSION: 1.9.4
NEW VERSION: 1.9.5
RELEASE BRANCH: release
BUILD TYPE: Production release
### INSTALLER OPTIONS:
### Send email notification on upgrade complete: true
Send installed log output to admin email: true
### =============================================================================
\[ \* \] Backing up existing templates and configuration files...
### \[ ! \] Performing system health check before proceeding with installation...
\[ \* \] Health check complete. Starting upgrade from 1.9.4 to 1.9.5...
### \[ - \] Now applying patches and updates for version v1.9.5...
\[ \* \] Fixing spamd execution in Exim when reject_spam is off
\[ \* \] Adding ESMTP to Exim smtp banner
\[ ! \] Updating default web domain templates...
\[ ! \] Updating default mail domain templates...
\[ ! \] Updating default DNS zone templates...
\[ ! \] Upgrading File Manager to version 7.14.3...
\[ ! \] Upgrading Roundcube to version 1.6.15...
\[ ! \] Update Hestia PHP dependencies...
\[ \* \] Updating Cloudflare IP Ranges for NGINX...
\[ \* \] Upgrading phpMyAdmin to version 5.2.3...
Installation tasks complete, performing clean-up..
Upgrading guzzlehttp/guzzle (7.10.0 => 7.10.5): Extracting archive
Package pear/console_commandline is abandoned, you should avoid using it. No replacement was suggested.
Package pear/net_socket is abandoned, you should avoid using it. No replacement was suggested.
Generating autoload files
5 packages you are using are looking for funding.
Use the composer fund command to find out more!
No security vulnerability advisories found
No. Still âYour new web server is ready to use.â
However, when I tried it with www (www.webmail.domain.com) the browser returned a âPotential Security Rish\k Aheadâ which is different than before. (I accepted the risk, then got a âSecure Site Not Availableâ HTTPS-Only message. I told it to continue to http site, THEN I got the âready for useâ message.)