From b26de34e0d107a9e9dd74c44fa39f2d25b0dcc4a Mon Sep 17 00:00:00 2001 From: jakob42 Date: Wed, 31 Jul 2024 07:10:38 +0200 Subject: [PATCH] example_configs: add Prosody --- README.md | 1 + example_configs/prosody.md | 15 +++++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 example_configs/prosody.md diff --git a/README.md b/README.md index 91ddb26..8e16579 100644 --- a/README.md +++ b/README.md @@ -398,6 +398,7 @@ folder for help with: - [Organizr](example_configs/Organizr.md) - [Portainer](example_configs/portainer.md) - [PowerDNS Admin](example_configs/powerdns_admin.md) +- [Prosody](example_configs/prosody.md) - [Proxmox VE](example_configs/proxmox.md) - [Radicale](example_configs/radicale.md) - [Rancher](example_configs/rancher.md) diff --git a/example_configs/prosody.md b/example_configs/prosody.md new file mode 100644 index 0000000..6d40bbf --- /dev/null +++ b/example_configs/prosody.md @@ -0,0 +1,15 @@ +# Configuration for Prosody XMPP server + +Prosody is setup with virtual hosts, at least one. If you want to have users access only specific virtual hosts, create a group per vHost (I called it `xmpp-example.com`). If not, remove the memberOf part in the filter below. I would also create a read only user (mine is called `query`) with the group `lldap_strict_readonly` to find the users that will be used to bind. + +In `prosody.cfg.lua` you need to set `authentication` to `ldap` and the following settings: + +```authentication = "ldap" +ldap_base = "dc=example,dc=com" +ldap_server = "lldap_ip:3890" +ldap_rootdn = "uid=query,ou=people,dc=example,dc=com" +ldap_password = "query-password" +ldap_filter = "(&(uid=$user)(memberOf=cn=xmpp-$host,ou=groups,dc=example,dc=com)(objectclass=person))" +``` + +Restart Prosody and you should be good to go.