Archive for the ‘Exim’ Category

If you are unable to login to your email accounts and the system shows this error message:

Plaintext authentication disallowed on non-secure (SSL/TLS) connections

If you don’t want to use SSL/TLS connection to get your email, and to disable SSL/TLS secure connection.

You can verify this error using telnet as follows.

[ryan@ ~]$ telnet 110
Connected to
Escape character is ‘^]’.
+OK Dovecot ready.
-ERR [AUTH] Plaintext authentication disallowed on non-secure (SSL/TLS) connections.

>> Edit dovecot configuration file: /etc/dovecot.conf

>> Change the value for this directive from:

disable_plaintext_auth = yes
disable_plaintext_auth = no

Restart service dovecot and exim
# /etc/init.d/dovecot restart
# /etc/init.d/exim restart

If these steps are not working check cPanel logs.

Error :-
PHP Fatal error: Call to undefined function logout_error() in /usr/local/cpanel/base/3rdparty/squirrelmail/plugins/login_auth/functions.php on line 282

Check the file permission

# ls -l /usr/local/cpanel/bin/dovecot-wrap
-rwsr-x— 1 root dovecot 9176 Apr 9 2013 /usr/local/cpanel/bin/dovecot-wrap*

chmod +x dovecot-wrap

In my case the issue was unresolved, so I ran an upcp that fixed the issue.

[ryan@ ~]$ telnet 110
Connected to
Escape character is ‘^]’.
+OK Dovecot ready.


We are getting connection refused error while trying to access the server via pop. Please check the below logs.

26 01:57:18 host2 dovecot: pop3-login: Maximum number of connections from user+IP exceeded (mail_max_userip_connections=3): user=, method=PLAIN, rip=, lip=

Solution :-

Edit /etc/dovecot.conf and check the parameter “mail_max_userip_connections” was set to 3.

mail_max_userip_connections = 3

Increased it to a higher value and the issue got fixed.

Bounced Message “retry time not reached for any host after a long failure period”

It is likely due to an error with the server sending mail at their end. The Exim Retry Database has likely become corrupt and would need to be fixed before they could retry sending mail to your email address/domain.

cd /var/spool/exim/db
rm -f retry retry.lockfile
rm -f wait-remote_smtp wait-remote_smtp.lockfile
service exim restart

Or, use the following commands:
/usr/sbin/exim_tidydb -t 1d /var/spool/exim retry > /dev/null
/usr/sbin/exim_tidydb -t 1d /var/spool/exim reject > /dev/null
/usr/sbin/exim_tidydb -t 1d /var/spool/exim wait-remote_smtp > /dev/null
/scripts/courierup — force
/scripts/eximup –force

Connection dropped by IMAP server : When you are trying to login to email account in Roundcube Webmail client.

You may fix the issue by follow the steps below:

If you are using Roundecube check the following logs :

# tail -50 /var/cpanel/roundcube/log/errors

1. Try to restart the IMAP service

# /etc/init.d/courier-imap restart

2. Try to update the courier imap server

# /scripts/courierup –force

3. If the issue still not solve, run the command below to fix the permission for mail directory

chown -R USERNAME:mail /home/USERNAME/mail/
chown -R USERNAME:mail /homeUSERNAME//etc/

Where USERNAME is his cPanel username

How to manage old emails using CPanel

ConfigServer Mail Manage (cmm)

It provides an interface to the cPanel user accounts email configuration without having to login to their accounts. It is domain based rather than account based and allows you to do all the following from within WHM:

To install or upgrade cmm simply do the following from the root shell via SSH:

cd /usr/src
rm -fv /usr/src/cmm.tgz
tar -xzf cmm.tgz
cd cmm
rm -Rfv /usr/src/cmm*

Then login to WHM and scroll to the bottom of the left hand menu and you should see “ConfigServer Mail Manage”

If you want to uninstall, simply:

cd /usr/src
rm -fv /usr/src/cmm.tgz
tar -xzf cmm.tgz
cd cmm
rm -Rfv /usr/src/cmm*

ConfigServer Mail Queues (cmq)

Integrates with MailScanner, if installed, to offer views/deletion of email in both the Pending and Delivery queues. Searching for and viewing/deleting emails to/from specific domains and addresses

cd /usr/src
tar -xzf cmq.tgz
cd cmq

Login to WHM and scroll to the bottom of the left hand menu and you should see “ConfigServer Mail Queues”

If you want to uninstall, simply:

cd /usr/src
rm -fv /usr/src/cmq.tgz
tar -xzf cmq.tgz
cd cmq
rm -Rfv /usr/src/cmq*

First of all, login to your cPanel account and scroll down to the “Email Management Tools” box and enable SpamAssassin

Click on SpamAssassin and check if it’s active. If not, activate it.

You can configure it by clicking on the “Configure SpamAssassin” button and set the score to 5 or 6. The greater is the number and more possible SPAM you could receive, so consider staying on 5 or 6, as a recommendation. Remember to save.

You can also configure Mozilla Thunderbird to accept SpamAssasin’s headers to help it identify SPAM. Set it on your account settings on a “per account” basis.

Set filters in “Account Level Filtering”

You can add the filter for a specific email address from “cPanel>> Mail>> User Level Filtering” option to DISCARD the incoming emails from that malicious email address you want to block. Here are the steps to set a filter.

1. login to cPanel and go to “cPanel>> Mail>> User Level Filtering” option.

2. Add the following filter for your domain email accounts.


Select “From” from drop down menu, then you’ll need to select “Contains” from the drop down menu.


Enter the email address you want to block” and click on Activate button.

This filter will block one particular email address from coming into the email address on your domain email address\es and at the same time, your email address will not send any bounce back email message to the blocked email address.

In your Exim logs you may see errors like this: Warning: ACL “warn” statement skipped: condition test deferred: ratelimit database not available

temporarily rejected connection in ?connect? ACL: ratelimit database not available

This likely means the Exim cache databases are corrupted. You can clear them by running:

# rm -fv /var/spool/exim/db/*

Then restart Exim.

The files in question are:


Unable to login the Rouncube. Make sure the MySQL password is right

root@server[~]$ grep db_dsnw /usr/local/cpanel/base/3rdparty/roundcube/config/
$rcmail_config[‘db_dsnw’] = ‘mysql://roundcube:ASm_FJDYv2CGfEtH@localhost/roundcube’;

The password in this case is set in the config as: “ASm_FJDYv2CGfEtH”. See if the hash matches what is set for the user:

root@server[~]$ mysql
mysql> use mysql;
mysql> select PASSWORD(‘ASm_FJDYv2CGfEtH’);
mysql> select * from user where User = ’roundcube’;
mysql> update user set Password = PASSWORD(‘ASm_FJDYv2CGfEtH’) where User = ’roundcube’;

If the above didn’t fix it, try to update RoundCube (the right way)

root@server[~]$ mysqldump roundcube > /path/to/backup.sql
root@server[~$ /usr/local/cpanel/bin/update-roundcube –force
root@server[~]$ mysql roundcube < /path/to/backup.sql

If it is not working, please go through these steps

mysql -e “show table status” roundcube |grep -i innodb |awk ‘{print $1,$2}’
cache InnoDB
cache_index InnoDB
cache_messages InnoDB
cache_thread InnoDB
contactgroupmembers InnoDB
contactgroups InnoDB
contacts InnoDB
dictionary InnoDB
identities InnoDB
searches InnoDB
session InnoDB
users InnoDB

Somehow InnoDB had become corrupted and we resolved it by adding


to my.cnf and starting MySQL. Everything was working fine except Roundcube. Commenting out this line and restarting MySQL allowed Roundcube to begin working again.

ERROR:Message not sent. Server replied: Service not available, closing channel
421 Too many concurrent SMTP connections; please try again later.

It means that there are to many open SMTP connections either incoming or
outgoing.The default is 20, you can raise that with the smtp_accept_max
command in your configuration file.

you can check connections through command:

cat /etc/exim.conf |grep smtp_accept_max

By default ,the value is 100 ,You can raise it to 150 then run :

Service exim restart

You can get all the IPs addresses connected to/from TCP port 25 at any given time by running the following command :

netstat -plan|grep ‘:25′|grep ESTAB

That will show the IP addresses connected to/from TCP port 25 at any given time. It’ll change by the second. But if you have 250+ connections and you think there is likely tons of connections from or to single source, you’ll be able to see that easily. Then figure out why that IP address is connecting so much.

grep /var/log/exim_mainlog

# ps -auxwwf | grep exim

# netstat -ano | grep “25”

Clamd AntiVirus daemon giving local socket error

root@ [~]# /etc/init.d/exim restart
Shutting down clamd: [FAILED]
Shutting down exim: [ OK ]
Shutting down spamd: [ OK ]
Starting clamd: ERROR: LOCAL: Socket file /var/clamd could not be bound: Permission denied
ERROR: Can’t unlink the socket file /var/clamd

Starting exim: [ OK ]
0 processes (antirelayd) sent signal 9
/usr/local/cpanel/scripts/update_sa_rules: running in background

Open clamd.conf file

vim /etc/clamd.conf

Comment the below lines by giving #. This will fix the error:

LocalSocket unix:/var/run/clamav/clamd.sock
FixStaleSocket yes

root@ [~]# /etc/init.d/exim restart