Ejabberd

From SME Server
Revision as of 08:02, 5 October 2007 by Jpl (talk | contribs) (→‎Installation)
Jump to navigationJump to search

Ejabberd Jabber XMPP server for SME 7.x

Maintainer

Jean-Paul Leclère
mailto:jean-paul@leclere.org

Description

Ejabberd is a (GNU GPL) robust full-featered Jabber XMPP server. It can support thousands of simultaneous users.

smeserver-ejabberd provides ejabberd services for SME, with dedicated configuration panel in the server-manager, and also specific embedded administration web pages via https.

Download

You can download this package here. If you would like to save it directly on your SME Server, you should give this command at a linux-prompt

wget http://mirror.contribs.org/smeserver/contribs/jpl/smecontribs/smeserver-ejabberd/smeserver-ejabberd-1.1.4-1.el4.eos.i386.rpm

Installation

Installation needs following steps.

  • smeserver-ejabberd package installation :
yum localinstall smeserver-ejabberd-1.1.4-1.el4.eos.i386.rpm
  • sme configuration database update :
/etc/e-smith/events/actions/initialize-default-databases
  • server-manager panels navigation update :
/etc/e-smith/events/actions/navigation-conf
  • creation of your ejabberd admin account

For security reasons you need to create the admin@yourdomain Jabber account as soon as you enable your ejabberd service because this account will have administration rigths for your ejabberd administration. Jabber services are disabled after package installation, so there is no risk before you enable ejabberd with the server-manager panel and create this account.

  1. In your ejabberd panel, enable your ejabberd server, verify or change your Jabber domain and set registration parameter to "Allowed for everybody"
  2. With a Jabber client, register the account "admin@yourdomain" with a (secure) password, and remember this password. This "admin@yourdomain" account and associated password wil be needed to access the administration web page of your ejabberd server at https://yourserver.yourdomain:5280/admin (if enabled in your ejabberd panel).
  3. After setting admin account, you can return to your ejabberd panel and change registration setting for your requirements

Use

Jabber services panel

  • Jabber services access

No access --> ejabberd service disabled
Allow access only from local networks --> ejabberd enabled for all your local networks on LAN port
Allow public access --> ejabberd enabled on LAN and WAN ports

  • Jabber domain

You can choose which of your server domains is used by ejabberd for JID accounts.

  • Type of access

non secured access available --> non encryted access on port 5222, TLS access on port 5223
secured TLS access only --> TLS access on ports 5222 and 5223

  • Jabber client registering

Registering with a Jabber client is disabled --> Jabber clients cannot register accounts
Allowed for enabled user accounts of your server --> Jabber clients can only register accounts for users already registered in your SME server (but not for admin account)
Allowed for everybody --> Jabber clients can register accounts without restriction

  • Welcome message

Set the subject and text of the message sent to your new Jabber users. If subject is left blank, no welcome message will be sent.

  • Jabber admin web page

smeserver-ejabberd provides a web interface at https://yourserver.yourdomain:5280/admin/ to monitor and manage your ejabberd accounts and services. A full account JID with ejabberd admin rigths (default is admin) is needed to access ejabberd admin web pages.
This account is not set by the rpm package installation and must be created with a Jabber client, as specified in installation instructions. enabled --> access to admin web pages is enabled
disabled --> access to admin web pages is disabled

Ejabberd administration and monitoring web pages

When enabled, you can connect via https to your Jaber server administration and monitoring web pages at https://yourserver.yourdomain:5280/admin/
You must provide a full Jabber account (user@yourdomain) with admin rigths on ejabberd services (by default this account should be set to admin@yourdomain).
See documentation about the web interface at http://www.process-one.net/docs/ejabberd/guide_en.html#htoc72

Ejabberd command line administration

For specific needs you can use (with care) the ejabberd command line program : /opt/ejabberd/bin/ejabberdctl
But you must execute this program with :

sudo -u ejabberd -H /opt/ejabberd/bin/ejabberdctl options

To see available options, just type :

sudo -u ejabberd -H /opt/ejabberd/bin/ejabberdctl


Warning.png Warning:
You must not try to start or stop your ejabberd server with ejabberdctl. ejabberd service is supervised by runit and must only be controled by runit commands or by the Jabber services panel in the server-manager.


Backup and restore

ejabberd has an internal specific Mnesia datatabase for users data.
When you backup your server with core backup program, ejabberd database is saved and backuped in file /home/e-smith/db/ejabberd/ejabberd.backup.
But restoring your ejabberd backuped data on a new fresh installation of SME server needs four steps :

  • restore old server backup or copy /home/e-smith/db/ejabberd/ejabberd.backup from old server
  • reinstall smeserver-ejabberd
  • start ejabberd services
  • launch ejabberd database restore action :
/etc/e-smith/events/actions/ejabberd-load-tables

Bugs

Please raise bugs under the SME-Contribs section in bugzilla and select the smeserver-ejabberd component or use this link .