17.07 / July 6, 2017
|XMPP Servers:||Servers Category|
|XMPP Clients:||Clients Category|
|User Guides:||User Guide Category|
ejabberd is an XMPP application server, written mainly in the Erlang programming language. It can run under several Unix-like operating systems such as Mac OS X, GNU/Linux, FreeBSD, NetBSD, OpenBSD and OpenSolaris. Additionally, ejabberd can run under Microsoft Windows. The name ejabberd stands for Erlang Jabber Daemon (Jabber being a former name for XMPP) and is written in lowercase only, as is common for daemon software.
ejabberd has been in development since 2002 and is used all over the world to power the largest XMPP deployments. This project is so versatile that you can deploy it and customize it for very large scale, no matter what is your use case.
This incredible power comes with a price. You need to learn how to leverage it. Fortunately, the goal of this website is to get you started on your path to mastery. Whether you are a sysadmin, an architect, a developer planning to extend it, or even a simple XMPP user, we have something for you here.
Installing on Ubuntu
Start out by adding the `ejabberd` user and install needed dependencies.
adduser --system --group --home /var/lib/ejabberd --disabled-login ejabberd -q apt update && apt install -y gcc autoconf automake make clang git erlang expat libyaml-dev libexpat-dev libssl-dev
Download the ejabberd git.
mkdir -p /var/src/; cd /var/src/; rm -rf ejabberd git clone https://github.com/processone/ejabberd.git
Compile and install ejabberd.
cd /var/src/ejabberd/ && ./autogen.sh && ./configure --prefix="" --enable-user=ejabberd && \ make && make install
And once complete, start ejabberd.
ejabberdctl start && echo $?
Adding a new user
ejabberdctl register <user> <domain> <password>
ejabberdctl register alice example.com S3cure9assw0rd