This document comprises the installation and administrative guide for the Jabberd 2 Server (Jabberd), the latest release of the popular open source messaging system based on the Jabber Protocol. The goal of Jabber is to provide an XML protocol for synchronous and asynchronous communication for client to client, client to server, and server to server messaging, although the primary use for Jabber is instant messaging (IM).
The Jabberd server is the original open-source server implementation of the Jabber protocol, and it remains the most popular software for deploying Jabber either inside a company or as a public IM service. Jeremie Miller initiated the Jabber Project in 1998 as a free and open alternative to proprietary IM services. The Jabberd server continues to be the core of the Jabber Project, and Jabberd 2 is the successor to the widely used Jabberd 1.4 server. Jabberd 2 is based on a completely new code base with a new architecture, additional features and improved adherence to the Jabber protocol.
The creation of a common messaging protocol, now known as XMPP (Extensible Messaging and Presence Protocol), has allowed for the creation of numerous Jabber server implementations in addition to the Jabberd server. Among these are several open source projects, including WP Jabber and ejabberd, as well as several commercial offerings from companies such as i3connect, Jabcast, Tipic and Jabber, Inc.
The authors of this document intend to provide a complete guide for jabberd 2 installation, administration and development:
The intended audience are people who wish to install and/or maintain a jabberd 2 server on Unix, or one of its variants. As such, this document covers jabberd installation on Unix operating systems only.
The authors have made every attempt to make this a step-by-step guide; however, some familiarity with a Unix or Linux operating system is assumed:
It is assumed that the reader has a basic familiarity with using a Jabber client. Additionally, it is assumed that the reader is familiar with hardware and software, such as a firewall, router or modem, that the jabber server will use to connect to the Internet if any such hardware is used. Configuration of these secondary programs and devices is beyond the scope of this guide.
This guide is organized into sections grouped according to intended use by the user:
The Quickstart Guide is designed to get experienced users up and running quickly. Detailed Jabberd 2 installation instructions that begin in Section 2, Preparing to Install Jabberd 2. Sections 5 and 6 list common Configuration and Administration tasks, respectively, while the remaining sections provide detailed configuration information.
This document is provided primarily as an installation guide, and as such, special conventions are used to make installation easier for the user. The conventions below appear throughout the installation sections of this guide:
|
Convention |
Name |
Description |
|---|---|---|
|
P |
Parameter |
Information about your specific setup that you will enter into a configuration file, etc. |
|
C |
Checkpoint |
A point at which to stop and check your setup. |
|
N |
Note |
An informational note. |
|
I |
Important |
An important note or warning. |
|
F |
Required Files |
Software or specific files needed to complete a step or series of steps. |
|
O |
Optional Step |
A step that is not required for the most basic installation. |
|
E |
External System |
A step that may require configuration on an external system, such as a router. |
The most useful of these conventions are "Parameters." Section 2 begins with a list of information about your setup (Parameters) that you will need during the installation steps. You can gather all this information before you start installing Jabberd, and then you can refer back to your list for every step that displays a P.
The installation guide is organized into numbered steps and sub-steps, etc. Users are encouraged to use the guide as a check list. When all of the sub-steps of a step are completed, then the parent step itself is also completed. Note that all children (sub-steps) of an "Optional Step" are optional also. Note that the "Optional Step" designation provides information about the conditions and/or requirements under which the optional step should be performed.
Steps labeled with "External System" provide the user with information about set up that may need to be performed on a system external to jabberd. These systems include routers, firewalls, DNS servers, etc. "External System" notes are intended to be informational rather than comprehensive. The remaining conventions are self-explanatory.
Note that each command listed in this guide refers to a command entered at a command prompt or at a command prompt shell, such as X-term or E-term. Note also that in this document, the term "Jabberd" refers to the Jabberd 2 server, except where noted. The term "Jabber" refers to Jabber-based system or systems, and "XMPP" refers to the protocol over which Jabber systems run.
This document was created using Structured Text. Structured Text uses standard text formatting conventions, such as underscores, to represent formatted text. Efforts have been made to keep the text and HTML representations close. One exception is the use of a bang character ("!") in the text version to escape unwanted formatting in the HTML version. "Bangs" appear at the beginning of some lines in the text version, and these can be ignored. They do not appear in the HTML version.
Visit the Jabber Software Foundation for the latest news about jabberd 2, jabber clients, and the Jabber Protocol. The Jabber Faq answers basic questions about Jabber. Readers are encouraged to visit the Jadmin Archive for questions about jabber administration, or subscribe to the Jadmin Mailing List for the most up to date jabberd administration information. Jabberd 2 development information can be found in the Jabberd Archive or by subscribing to the Jabberd List.
There are also several good books about Jabber. Note that books below detail jabberd 1.4 only as of this writing in 2003:
The Jabber Installation and Administration Guide is copyright (c) 2003 by Will Kamishlian and Robert Norris.
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/1.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
Robert Norris, who is the primary Jabberd 2 developer, and the posters on the Jabberd List provided technical information for this document.
© 2003 Will Kamishlian and Robert Norris
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/1.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
