• If you are still using CentOS 7.9, it's time to convert to Alma 8 with the free centos2alma tool by Plesk or Plesk Migrator. Please let us know your experiences or concerns in this thread:
    CentOS2Alma discussion

Resolved Plesk 17.5, Dovecot, error "process_limit (100) reached", but why?

King555

Regular Pleskian
I'm using Plesk Onyx 17.5 with the latest Update 48 and the Dovecot POP3/IMAP service on a Debian 8.1 x64 system.

During the last weeks and months my Dovecot service crashes one time per day or more. This is not a huge problem, because Watchdog restarts the service after max. 2.5 minutes.

But today I tried to find the reason for the crashes. So I analyzed the /var/log/mail.info file and at the time of the crash the only interesting line was this:

Warning: service(imap-login): process_limit (100) reached, client connections are being dropped

My values are 500 and 50 in Plesk and of course I found this in the Plesk Help Center: Unable to login to email via IMAP despite the fact the limits are not exceeded: Connection to storage server failed: process_limit reached

Now I could just create the config file, which is mentioned in the article, and go ahead. But I read the help section of the mail settings page in Plesk and now I'm unsure about what to do.

The maximum amount of connections with Dovecot means (according to the help): Maximum logged in users
The maximum amount of connections per IP means the number of connections over the same protocol per mail user.

Especially the first info is strange, "Maximum logged in users". I'm the only user of my server. I have 7 mail accounts which are registered on my smartphone in the app "K9 Mail" and are all in "push mode". So the maximum number of logged in users is 7. Why does the error message say there are more than 100 connections? Even if the app establishes 10 connections per account, 100 is not reached.

Can anybody tell me what could be the reson of the error mesage and if this could also be the reason for the crashes?

Thanks!
 
This process limit is a "login" counter limit. It is different from the actual number of concurrent connections. I suggest this change:

Edit or create /etc/dovecot/conf.d/99-imap-login.conf with this content:
Code:
service imap-login {
process_limit = <high number here, e.g. 1000>
process_min_avail = <fairly low number here, e.g. 16>
}
 
P.S. I forgot to mention that the number of connections and login attempts is not only limited to your own, but all others are included, such as hackers that are trying to brute force the login.
 
Thanks for your reply.

This process limit is a "login" counter limit
I was aware that this is not the number of connections, the help says this, but when does the login counter increases? Already when someone tries to login (but has no correct password) or only when he/she actually logs in? Is this value for "login connections", which are attempts and real logins?

I suggest this change:
I will try this and give feedback. But I have a question: What means "process_min_avail"? Is this the "Connections per IP" from the Plesk settings page (although it's not saved in that specific conf file)?

the number of connections and login attempts is not only limited to your own, but all others are included, such as hackers
Yes, I know, and my server is indeed constantly banning strange IPs via fail2ban all day, which connect to the mail services.
 
Although my last questions are still unanswered, changing the values to 1024 and 16 solved my problem, no crashes so far.
 
Back
Top