How To Install And Configure Ejabberd On An Ubuntu Server

Recently, a colleague and I were given the task of setting up an xmpp server. After much research, we decided on going with ejabberd. I have a dual boot set up on my HP machine but since I was much more comfortable with Windows 7 at the time(I pretty much love Linux now), I decided to try setting up on windows. Unfortunately, I run into some issues and decided to try setting up on Ubuntu instead(I guess that’s the advantage of having a dual boot set up. You get to have more options).

After writing a wiki on how the installation was done, I decided to use it for my first blog ever.

According to wikipedia:

Ejabberd is an XMPP application server, written mainly in the Erlang programming language. ejabberd stands for Erlang Jabber Daemon (Jabber being a former name for XMPP)


To install ejabberd on ubuntu, erlang has to be installed as well

sudo apt-get install erlang ejabberd


After installation, ejabberd has to be configured.

  1. Run this command to start ejabberd configuration via command line:
    sudo dpkg-reconfigure ejabberd

This opens a different interface for configuring ejabberd.

  • The first step asks for the name of the host ejabberd will serve. If the installation is set up on your local machine then leave it as localhost and press enter
  • The second step asks for the username of an admin account for the host you set up in step 1. This account will be used to login to the ejabberd web interface for admin which is:

    . ejabberdhost should be replaced with the host that was set up in step 1. Enter a username and press enter

  • The third step asks for the password for the admin account set up in step 2. Enter a password and press enter to continue.
  • The fourth step asks for the same password that was entered in step 3. This is for verification. Reenter the password and press enter to continue.
    Now ejabberd is configured and an admin account has been created. You can now login to the admin web interface from your browser with the username and password you chose during configuration.

That’s it. You now have ejabberd set up.

You can start ejabberd with this command:

sudo /etc/init.d/ejabberd start

You can also stop ejabberd with this command:

sudo /etc/init.d/ejabberd start

You can register a user with this command:

sudo ejabberdctl register username host password

Any extra configuration can be done in the configuration file: