JMAP client triggering (non-documented) "Too Many Authentication Attempts" autoban #2922
Replies: 4 comments 2 replies
-
|
I’m seeing this as well with Bulwark as the JMAP client. In my case, login appears to succeed at first, but shortly after Stalwart starts returning So this does not seem isolated. I’m also trying to determine whether Bulwark is retrying failed auth in a loop, or whether Stalwart is counting some successful/repeated JMAP auth pattern more aggressively than expected. |
Beta Was this translation helpful? Give feedback.
-
|
Adjust the rate limit settings to avoid that. Alternatively grant your account the |
Beta Was this translation helpful? Give feedback.
-
|
My client was blocked after just 4 request in 20 seconds. So not sure the problem is the amount of requests at all. |
Beta Was this translation helpful? Give feedback.
-
|
I found something new by re-examining clean-slate server logs:
What can I see in the logs How to fix the JMAP auth per request !!! It is likely that with this fix, whatever was causing the auth.fail (related to the next problem below) + fail2ban will go away How I confirmed it: (unit test code summary after fix): Why did the auth fail after a gap in requests While looking for log messages, I found that the auth flow in reasoning: |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Issue Description
When using a JMAP client that authenticates a dozen or so times (all successful) and makes a couple of dozen JMAP successful requests, it triggers a "Too Many Authentication Attempts" IP ban. Here is a summary of logs:
EVENT COUNTS IN ~ 2 min
Expected Behavior
Based on documentation, issues, and discussion searches, I could not find any other expected behavior than simply letting the JMAP user+IP alone.
I guess the solution is to clarify how limit rates are enforced and configured, and to fix INFO messages about "Banned due to authentication errors".
Actual Behavior
User/IP blocked: (from logs)
Reproduction Steps
(JMAP tends to be pretty talkative as it asks for different data in different requests...)
Relevant Log Output
Stalwart Version
v0.15.x
Installation Method
Docker
Database Backend
PostgreSQL
Blob Storage
PostgreSQL
Search Engine
PostgreSQL
Directory Backend
Internal
Additional Context
Server is behind Traefik and using JMAP-webmail as client
I acknowledge that:
traceand included relevant log output if applicable.Beta Was this translation helpful? Give feedback.
All reactions