Enabling users to change their email password directly from snappymail.

    1 – Login to your snappymail admin by appending ?admin to your webmail login. Example:

         Username is admin. Password you get it by using the command bellow. TOPT code is left empty.

cat /usr/local/lscp/cyberpanel/rainloop/data/_data_/_default_/admin_password.txt

    2 – At the admin panel, go to Extensions and install Change Password

xsnappy extensions

    3 – Open Change Password options

xsnappy change options

    4 – Scroll down to PDO and Enable it. Replace DSN with the following:


    4.1 – Replace User with root

    4.2 – Get your current password with the following command and write it at Password:

cat /etc/cyberpanel/mysqlPassword

    4.3 – Replace Statement with:

UPDATE e_users SET password = :newpass WHERE email = :email AND emailOwner_id = :domain

    4.4 – At Encryption choose bcrypt

    4.5 – At Encrypt prefix write {CRYPT}

    Press Save. It should look like this:

snappymail pdo statement

    5 – Enable the extension by marking the square.

snappymail change enable extension
Your users can now change their password by:

     1 – Login to their email account

    2 – Going to Settings from the top right dropdown

snappymail email settings

    3 – Clicking Password from the left menu and clicking Set New Password at the end.

snappymail change own userpassword finally

Make sure to open port 7080 in firewall.




Debugging certificate requesting issues when a self-signed certificate is created instead.

Run from SSH:

/root/ --issue -d <YOUR_DOMAIN> -d www.<YOUR_DOMAIN> --cert-file /etc/letsencrypt/live/<YOUR_DOMAIN>/cert.pem --key-file /etc/letsencrypt/live/<YOUR_DOMAIN>/privkey.pem --fullchain-file /etc/letsencrypt/live/<YOUR_DOMAIN>/fullchain.pem -w /home/<YOUR_DOMAIN>/public_html --force --debug


You might find these lines of warning showing in a slightly different color [depending on your ssh terminal]:

[Friday 07:07:2021 00:00:11 PM UTC] No EAB credentials found for ZeroSSL, let's get one
[Friday 07:07:2021 00:00:11 PM UTC] is using ZeroSSL as default CA now.
[Friday 07:07:2021 00:00:11 PM UTC] Please update your account with an email address first.
[Friday 07:07:2021 00:00:11 PM UTC] --register-account -m [email protected]
[Friday 07:07:2021 00:00:11 PM UTC] See:


New CyberPanel 2.1+ has switched suddenly to use of zerossl as the default certificate authority instead of LetsEncrypt certificate authority.
This will likely limit your ssl certificate freedom as it is likely just acting as a third party between you and, to put a cap on and charge you when you reach a certain number of certificates for your cyberpanel deployment.

If you're ok with zerossl acting as default and go-between run the command the debugger recommended, substituting [email protected] with your actual email address:

/root/ --register-account -m [email protected]

 Or change the default back to the legitimately preferred certificate authoritive LetsEncrypt, running this command:

/root/ --set-default-ca --server letsencrypt
[Friday 07:07:2021 00:00:11 PM UTC] Changed default CA to:


Before proceeding with the changes, first of all, we've to check the current CLI PHP version, so run:

php -v

The output may be like this:

[root@elnath]# php -v
PHP 7.1.33 (cli) (built: Nov 22 2019 11:40:51) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.1.33, Copyright (c) 1999-2018, by Zend Technologies

As we can see, PHP version 7.1 is set as the CLI PHP. If you have certain needs and PHP 7.1 does not work for certain applications you can run the following command to update the default PHP on CLI:

ln -s /usr/bin/php /usr/local/lsws/lsphp81/bin/php
ln -s /usr/bin/php /usr/local/lsws/lsphp80/bin/php
ln -s /usr/bin/php /usr/local/lsws/lsphp74/bin/php
ln -s /usr/bin/php /usr/local/lsws/lsphp73/bin/php
ln -s /usr/bin/php /usr/local/lsws/lsphp72/bin/php

Please run any of those command lines as per your needs.

How to use specific PHP Version in your Cron Jobs?

Some applications require you to set cron jobs and they require PHP CLI executable. Now rather than changing the default global PHP binary version, you can use a direct path to that CLI.

For example, if an application requires that its script should be running through PHP 8.1, you can use the direct path for its binary rather than updating a global binary, such as:

/usr/local/lsws/lsphp81/bin/php <your command goes here>


CyberPanel The LiteSpeed Web-Server and postfix mail-server management GUI by LiteSpeed 

Comes in 3 packages CyberPanel + Open LiteSpeed, CyberPanel + LiteSpeed Enterprise and CyberPanel Cloud

Visit the official

Book Your Free Consultation

Submit your name and email below to schedule your free 15 minute initial consultation to see how we can help your business succeed