This module replaces mod_s2soutinjection and uses more modern and reliable methods for overriding connection targets.
Enable the module as usual, then specify a map of XMPP remote
hostnames to URIs like "tcp://host.example:port", to have
Prosody connect there instead of doing normal DNS SRV resolution.
Currently supported schemes are tcp:// and
tls://. A future version could support more methods
including alternate SRV lookup targets or even UNIX sockets.
URIs with IP addresses like tcp://127.0.0.1:9999 will
bypass A/AAAA DNS lookups.
The special target "*" may be used to redirect all
servers that don’t have an exact match.
One-level wildcards like "*.example.net" also work.
Standard DNS SRV resolution can be restored by specifying a truthy value.
-- Global section
modules_enabled = {
-- other global modules
"s2sout_override";
}
s2sout_override = {
["example.com"] = "tcp://other.host.example:5299";
["xmpp.example.net"] = "tcp://localhost:5999";
["secure.example"] = "tls://127.0.0.1:5270";
["*.allthese.example"] = = "tcp://198.51.100.123:9999";
-- catch-all:
["*"] = "tls://127.0.0.1:5370";
-- bypass the catch-all, use standard DNS SRV:
["jabber.example"] = true;
}| Prosody version | status |
|---|---|
| 0.12.4 | Will work |
| 0.12.3 | Will not work |
| 0.11 | Will not work |
With the plugin installer in Prosody 0.12 you can use:
sudo prosodyctl install --server=https://modules.prosody.im/rocks/ mod_s2sout_override
For earlier versions see the documentation for installing 3rd party modules