User:MalakymR/Drafts/Prosody/Rev1

From Gentoo Wiki
Jump to: navigation, search
Warning
This page is a work in progress by MalakymR (talk | contribs). Treat its contents with caution.
Resources

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.

Installation

USE flags

USE flags for net-im/prosody Prosody is a flexible communications server for Jabber/XMPP written in Lua

jit Use LuaJIT instead of vanilla Lua
libevent Use libevent for event handling
zlib Support for compressing XMPP streams with mod_compression

Emerge

Install the software on the system.

root #emerge --ask net-im/prosody

Configuration

Files

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.

FILE /etc/jabber/prosody.cfg.lua
allow_registration = false;
--VirtualHost "localhost"
VirtualHost "example.org"
        -- enabled = false -- Remove this line to enable this host

Service

root #/etc/init.d/prosody start
root #rc-update add prosody default

Adding Users

root #prosodyctl adduser username@domain.tld
Enter new password:
Retype new password:

Add a second user for testing

root #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

Client Software

There are many clients to choose from, with varying levels of support for XEP modules.

  • Conversations - Requires SSL so will not work until a certificate is setup (self-signed okay)
  • Xabber - Android (missing file transfer modules)
  • net-im/pidgin - GUI Windows/Linux/Android
  • Profanity.im - curses based
  • net-irc/xmpp-irssi - Addon for curses based net-irc/irssi