Moved to https://gitlab.com/lxmx-tech/prosody-ansible
This role:
-
Facilitates the Prosody XMPP server installation
-
Enables all of the useful XMPP extensions supported by the Conversations XMPP client:
- XEP-0280 - Message Carbons (
mod_carbons.lua
) - XEP-0198 - Stream Management (
mod_smacks.lua
) - XEP-0191 - Blocking Command (
mod_blocking.lua
) - XEP-0352 - Client State Indication (
mod_csi.lua
) - XEP-0313 - Message Archive Management (
mod_mam.lua
)
- XEP-0280 - Message Carbons (
- CentOS 7 machine
- SSL certificate for your domain name, put into
files/ssl/example.com.key
,files/ssl/example.com.pem
(includes the CA chain).
The following variables should be set:
prosody_domain
- the hostname of your server (e.g.example.com
)prosody_db_password
- PostgreSQL database password (can be anything, the DB is created automatically)prosody_enable_mam
- whether or not to enable the MAM module (default isTrue
).
-
Create and run a playbook:
- hosts: servers roles: - prosody vars: prosody_domain: 'example.com' prosody_db_password: 'changeme' prosody_enable_mam: False
ansible-playbook -i hosts prosody.yml
-
Create your admin user on the server:
prosodyctl adduser admin@example.com
-
Configure the DNS settings (replace
example.com
and192.168.1.99
):chat.example.com. 1800 IN A 192.168.1.99 _xmpp-client._tcp.example.com. 1800 IN SRV 5 0 5222 chat.example.com. _xmpp-server._tcp.example.com. 1800 IN SRV 5 0 5269 chat.example.com. ftproxy.example.com. 1800 IN CNAME chat.example.com. conference.example.com. 1800 IN CNAME chat.example.com. _xmpp-server._tcp.conference.example.com. 1800 IN SRV 5 0 5269 chat.example.com.
GNU GPLv3