Note: This article is a work in process, will keep adding more information.
If you have recently upgraded CyberPanel and your email stopped working then follow this guide to debug and possibly fix your email system.
We recommend to upgrade your CyberPanel via CyberPanel cloud to avoid any such issue in the future:
How to upgrade your CyberPanel using CyberPanel Cloud
First thing to do is to check weather postfix services is running:
systemctl status postfix
Run the command above to check if postfix is running, if it is, then you should see something like:
● postfix.service - Postfix Mail Transport Agent Loaded: loaded (/usr/lib/systemd/system/postfix.service; enabled; vendor preset: disabled) Active: active (running) since Thu 2021-04-15 02:00:43 CEST; 1 day 18h ago Main PID: 3745676 (master) CGroup: /system.slice/postfix.service
If postfix is running and you can't send emails then read our troubleshooting guide to find out why.
If postfix is not running then you can try starting it, but if you can't then check weather it is installed or not
[[email protected] ~]# yum list installed | grep postfix postfix3.x86_64 2:3.5.8-1.gf.el7 @gf-plus postfix3-ldap.x86_64 2:3.5.8-1.gf.el7 @gf-plus postfix3-mysql.x86_64 2:3.5.8-1.gf.el7 @gf-plus postfix3-pcre.x86_64 2:3.5.8-1.gf.el7 @gf-plus [[email protected] ~]#
apt list --installed | grep postfix
If you don't see any postfix packages installed, then postfix is not installed in your system. You can install them, first enable gf repo (for Centos 7 or Centos 8) on your system.
Note: Take backup of your postfix configurations at /etc/postfix and restore them after installation
yum --nogpg install https://mirror.ghettoforge.org/distributions/gf/gf-release-latest.gf.el7.noarch.rpm
dnf --nogpg install https://mirror.ghettoforge.org/distributions/gf/gf-release-latest.gf.el8.noarch.rpm
now install postfix
Centos 7
yum install --enablerepo=gf-plus -y postfix3 postfix3-ldap postfix3-mysql postfix3-pcre
Centos 8
dnf install --enablerepo=gf-plus postfix3 postfix3-mysql -y
Ubuntu 18 or Ubuntu 20
apt-get -y install postfix postfix-mysql
Once postfix is installed again, you can restore the backup of configurations file and restart postfix and verify that it is working.
Second thing to do is to check weather dovecot services is running:
systemctl status dovecot
Run the command above to check if dovecot is running, if it is, then you should see something like:
● dovecot.service - Dovecot IMAP/POP3 email server Loaded: loaded (/usr/lib/systemd/system/dovecot.service; enabled; vendor preset: disabled) Active: active (running) since Thu 2021-04-15 02:00:44 CEST; 1 day 18h ago Docs: man:dovecot(1) http://wiki2.dovecot.org/ Main PID: 3745695 (dovecot)
If dovecot is not running then you can try starting it, but if you can't then check weather it is installed or not
[[email protected] ~]# yum list installed | grep dovecot dovecot23.x86_64 1:2.3.11.3-1.gf.el7 @gf-plus dovecot23-mysql.x86_64 1:2.3.11.3-1.gf.el7 @gf-plus [[email protected] ~]#
apt list --installed | grep dovecot
If you don't see any dovecot packages installed, then dovecot is not installed in your system. You can install them, first enable gf repo (for Centos 7 or Centos 8) on your system.
Note: Take backup of your dovecot configurations at /etc/dovecot and restore them after installation
yum --nogpg install https://mirror.ghettoforge.org/distributions/gf/gf-release-latest.gf.el7.noarch.rpm
dnf --nogpg install https://mirror.ghettoforge.org/distributions/gf/gf-release-latest.gf.el8.noarch.rpm
now install dovecot
Centos 7
yum --enablerepo=gf-plus -y install dovecot23 dovecot23-mysql
Centos 8
dnf install --enablerepo=gf-plus dovecot23 dovecot23-mysql -y
Ubuntu 18 or Ubuntu 20
apt-get -y install dovecot-mysql dovecot-imapd dovecot-pop3d
Once dovecot is installed again, you can restore the backup of configurations file and restart dovecot and verify that it is working.
In version v2.0.0, CyberPanel has introduced email queue management. This feature makes it easy for you to check the mails in queue, their status and provides you with the options to flush them again or delete individually or collectively.
The feature is already installed and enabled and can be accessed at https://<SERVER>:8090/emailPremium/mailQueue or from Mail Settings -> Email Queue
It will show a new screen with a list of messages and available options
If you aren't seeing any messages, either you don't have any emails in the queue or you can run the following command so that any outgoing email is automatically queued:
postconf -e defer_transports=smtp; sudo postfix reload
The list shows all the mails in the queue, you can view any of them by clicking "View Message
The options above the list perform the following