File

mod_warn_legacy_tls/README.md @ 6202:6d5a19bdd718

mod_openid, mod_json_streams: Remove modules depending on obsolete net.httpserver API These have not been updated for a long time and do not work with Prosody versions from recent years, which is a good indication they are not being used.
author Matthew Wild <mwild1@gmail.com>
date Fri, 14 Feb 2025 14:59:14 +0000
parent 6095:b048767a69b0
line wrap: on
line source

---
labels:
- Stage-Alpha
summary: Warn users of obsolete TLS Versions in clients
---


TLS 1.0 and TLS 1.1 are obsolete. This module warns clients if they are using those versions, to prepare for disabling them. (If you use the default prosody config, this module will be unnessesary in its default setting, since these protocols are not allowed anymore by any supported prosody version.)

This module can be used to warn from TLS1.2 if you want to switch to modern security in the near future.

# Configuration

``` {.lua}
modules_enabled = {
    -- other modules etc
    "warn_legacy_tls";
}

-- This is the default, you can leave it out if you don't wish to
-- customise or translate the message sent.
-- '%s' will be replaced with the TLS version in use.
legacy_tls_warning = [[
Your connection is encrypted using the %s protocol, which has been demonstrated to be insecure and will be disabled soon.  Please upgrade your client.
]]

--You may want to warn about TLS1.2 these days too (This note added 2024), by default prosody will not even allow connections from TLS <1.2
--Example:
legacy_tls_versions = { "TLSv1", "TLSv1.1", "TLSv1.2" }
```

## Options

`legacy_tls_warning`
:   A string. The text of the message sent to clients that use outdated
    TLS versions. Default as in the above example.

`legacy_tls_versions`
:   Set of TLS versions, defaults to
    `{ "SSLv3", "TLSv1", "TLSv1.1" }`{.lua}, i.e. TLS \< 1.2.

# Compatibility

Prosody-Version Status
--------------- ---------------------
trunk           Works as of 24-12-16
0.12            Works