This page is a work in progress by MalakymR (talk | contribs). Treat its contents with caution.
Prosody is a modern XMPP communication server. It aims to be easy to set up and configure, and efficient with system resources. Additionally, for developers it aims to be easy to extend and give a flexible system on which to rapidly develop added functionality, or prototype new protocols.
USE flags for net-im/prosody Prosody is a flexible communications server for Jabber/XMPP written in Lua
||Add support for IP version 6|
||Use LuaJIT instead of vanilla Lua|
||Use libevent for event handling|
||Use dev-libs/libressl instead of dev-libs/openssl when applicable (see also the ssl useflag)|
||Add mySQL Database support|
||Add support for the postgresql database|
||Add support for sqlite - embedded sql database|
||Add support for SSL/TLS connections (Secure Socket Layer / Transport Layer Security)|
||Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently)|
||Support for compressing XMPP streams with mod_compression|
Install the software on the system.
emerge --ask net-im/prosody
By default prosody will allow in-band registration, it is important we turn this off unless required, otherwise the server may be used as a spam relay.
allow_registration = false; --VirtualHost "localhost" VirtualHost "example.org" -- enabled = false -- Remove this line to enable this host
rc-update add prosody default
prosodyctl adduser firstname.lastname@example.org
Enter new password: Retype new password:
Add a second user for testing
prosodyctl adduser username2
This will produce a working setup that will allow communication between clients on this server only. Unless SRV records are setup client software will require the hostname of the server i.e. xmpp.example.org
There are many clients to choose from, with varying levels of support for XEP modules.