Jabber is an open source instant message protocol. Debian is a particular distribution of Linux that rocks. Woody is a particular version of Debian.
STEP 1: Install the Jabber Package
Using dselect, or your favorite Debian package tool, install the jabber package. It is located in the non-US tree, so you might have to add that to your package lists.
STEP 2: Configuring Hostname Lookup
Often, you will be running the Jabber server on a Linux host on your internal LAN. If this is the case, and the Linux host can't be looked up by DNS, as is common, then you must have an entry for your machine in the /etc/hosts file.
First, get the full hostname of your server with the following command.
hostname -f
Next, get the IP address of the machine. You can find this using the ifconfig command.
Let's say beamish.bogusdomain.net is the full hostname, and 192.168.1.2 is the IP address.
Put the following in your /etc/hosts file.
192.168.1.2 beamish.bogusdomain.net beamishIf the full hostname has no domain; for example beamish is simply the full hostname, then this is what your /etc/hosts entry will look like.
192.168.1.2 beamish beamish
On the other hand, if your hostname can be looked up with DNS, then no worries, mate!
STEP 3: Edit the Jabber Config File
Edit the /etc/jabber/jabber.xml file.
Find the <host> tag. It will probably look like this:
<host><jabberd:cmdline flag="h">localhost</jabberd:cmdline></host>Change localhost to your hostname instead. For example if you hostname is beamish, then the entry will look like this:
<host><jabberd:cmdline flag="h">beamish</jabberd:cmdline></host>
Next, you don't want to restrict any client programs, so you should enable plain text authentication.
Find the line that looks like this:
<!-- <mod_auth_plain>./jsm/jsm.so</mod_auth_plain> -->
Uncomment it so that it looks like this:
<mod_auth_plain>./jsm/jsm.so</mod_auth_plain>
STEP 4: Restart the Jabber Server
/etc/init.d/jabber stop; sleep 5; /etc/init.d/jabber start
STEP 5: Using Jabber
Now, clients should be able to create and use Jabber accounts on your server. The client must be configured so that the server name matches what you put in the <host> tag in the jabber.xml file. However, the client must also have the IP address of the server, if the server name cannot be looked up by DNS. This is usually under a Connect Server or ServerAddress field, which is sometimes to be found in the advanced options of the Jabber client.
For each account that is created on the Jabber server, an XML file will be created under the /var/lib/jabber/server directory, viewable only by root.
STEP 6: Allowing Remote Access to an Internal Jabber Server (Optional)
If the Jabber server is running on a host on your internal LAN, and you want it to be accessable from the Internet, then forward TCP port 5222 from your router to the internal host.
| Copyright (C) 2003 Adam P. Whitney |