view mod_limit_auth/README.markdown @ 5285:8e1f1eb00b58

mod_sasl2_fast: Fix harmless off-by-one error (invalidates existing tokens!) Problem: This was causing the key to become "<token>--cur" instead of the expected "<token>-cur". As the same key was used by the code to both set and get, it still worked. Rationale for change: Although it worked, it's unintended, inconsistent and messy. It increases the chances of future bugs due to the unexpected format. Side-effects of change: Existing '--cur' entries will not be checked after this change, and therefore existing FAST clients will fail to authenticate until they attempt password auth and obtain a new FAST token. Existing '--cur' entries in storage will not be cleaned up by this commit, but this is considered a minor issue, and okay for the relatively few FAST deployments.
author Matthew Wild <mwild1@gmail.com>
date Wed, 29 Mar 2023 16:12:15 +0100
parents 4916c1b6517f
children
line wrap: on
line source

---
summary: Throttle authentication attempts with optional tarpit
...

Introduction
============

This module lets you put a per-IP limit on the number of failed
authentication attempts.

It features an optioanal
[tarpit](https://en.wikipedia.org/wiki/Tarpit_%28networking%29), i.e.
waiting some time before returning an "authentication failed" response.

Configuration
=============

``` {.lua}
modules_enabled = {
  -- your other modules
  "limit_auth";
}

limit_auth_period = 30 -- over 30 seconds

limit_auth_max = 5 -- tolerate no more than 5 failed attempts

 -- Will only work with Prosody trunk:
limit_auth_tarpit_delay = 10 -- delay answer this long
```

Compatibility
=============

Requires 0.9 or later. The tarpit feature requires Prosody trunk.