Mercurial > prosody-modules
view mod_tls_policy/README.markdown @ 5536:96dec7681af8
mod_firewall: Update user marks to store instantly via map store
The original approach was to keep marks in memory only, and persist them at
shutdown. That saves I/O, at the cost of potentially losing marks on an
unclean shutdown.
This change persists marks instantly, which may have some performance overhead
but should be more "correct".
It also splits the marking/unmarking into an event which may be watched or
even fired by other modules.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 08 Jun 2023 16:20:42 +0100 |
parents | ad24f8993385 |
children |
line wrap: on
line source
--- summary: Cipher policy enforcement with application level error reporting ... # Introduction This module arose from discussions at the XMPP Summit about enforcing better ciphers in TLS. It may seem attractive to disallow some insecure ciphers or require forward secrecy, but doing this at the TLS level would the user with an unhelpful "Encryption failed" message. This module does this enforcing at the application level, allowing better error messages. # Configuration First, download and add the module to `module_enabled`. Then you can decide on what policy you want to have. Requiring ciphers with forward secrecy is the most simple to set up. ``` lua tls_policy = "FS" -- allow only ciphers that enable forward secrecy ``` A more complicated example: ``` lua tls_policy = { c2s = { encryption = "AES"; -- Require AES (or AESGCM) encryption protocol = "TLSv1.2"; -- and TLSv1.2 bits = 128; -- and at least 128 bits (FIXME: remember what this meant) } s2s = { cipher = "AESGCM"; -- Require AESGCM ciphers protocol = "TLSv1.[12]"; -- and TLSv1.1 or 1.2 authentication = "RSA"; -- with RSA authentication }; } ``` # Compatibility Requires LuaSec 0.5