DIY: Set up the Openfire internal chat server

Openfire is an easy to build and use internal chat server that helps make internal communication more efficient. Get install and setup instructions.

You might think that online chat is a productivity killer, but what if you could have an internal-only chat server that would allow for faster communication and better collaboration? You can with the Openfire Chat Server by Ignite Realtime.

Openfire is an open source, real-time collaboration server that uses XMPP (Jabber). The server is a breeze to install and easy to use. Users can even connect to the Openfire server with different chat clients, such as Empathy and Pidgin.

Openfire is available for the Windows, Linux, and Mac platforms. For this DIY tutorial, I will use Linux (specifically, Ubuntu 11.04), my platform of choice.

Installation requirements

Java JRE is Openfire's only requirement. If you're installing Openfire on the Windows platform, the installer includes Java JRE, but since we're digging into Linux, we must first install the Java JRE.

  1. Open a terminal window.
  2. Issue the command sudo add-apt-repository ppa:ferramroberto/java.
  3. Type your sudo password and hit [Enter].
  4. Issue the command sudo apt-get update.
  5. Issue the command sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts.

Install Openfire on Linux

  1. Download the .deb file from the Openfire download page.
  2. Open a terminal window and change to the directory the .deb was saved into.
  3. Issue the command sudo dpkg -i openfire_XXX.deb (XXX is the release number).
  4. Enter your sudo password and hit [Enter].

Once the installation completes, the server is installed, but there's still another component to this process: the Web install.

Web installation

Open your web browser and point it to http://ADDRESS_TO_SERVER:9090; this will start the web-based installation of the Openfire server. There are five sections to the installation: Language Selection, Server Settings, Database Settings, Profile Settings, Administrator Account.

Step 1: Language Selection Choose which language you want the installer and the admin console to be in (Figure A) and then click Next. Figure A

The language you choose will be the language the rest of the installer uses, so choose wisely. (Click the image to enlarge.)
Step 2: Server Settings Configure the server domain, the admin console port, and the secure admin console port (Figure B) and then click Next. Figure B

Make sure the ports you use are open on your network, or users won't be able to do much collaborating. (Click the image to enlarge.)
Step 3: Database Settings There are two ways to go here (Figure C): You can use the embedded database (this is the fastest and the easiest way to finish the installation), or you can use an external database. I suggest making this choice based on the number of users and the amount of traffic this server might see. If you think it's going to be hammered, you should use a standard database connection (MySQL is preferred).

I recommend opting for the embedded database if this is your first round. It isn't more challenging to install than the standard database, but with the standard database, you will need to have a MySQL server up and running and create a database. I suggest using the embedded database first for testing purposes, and if you decide you want to keep Openfire, then re-install with the standard database approach.

Figure C

The embedded database makes installation incredibly simple. (Click the image to enlarge.)
Step 4: Profile Settings This section wants to know how you plan on authenticating users (Figure D); the three options are: Default, LDAP, Clearspace. I find Default to be the most reliable route. Although if you are on a large network with numerous users and already have an LDAP server set up, you should go with the LDAP method. After you make your selection, click Next to finish the installation. Figure D

Click the image to enlarge.
Step 5: Administrator Account Enter a valid email address and password to be used for the admin user on the system (Figure E) and then click Continue. Figure E

You can't skip this step, because the admin user is required to set up the server. (Click the image to enlarge.)
The next page should give you the Setup Complete message and offer a button to allow you to log in to the admin console. You won't be able to log in -- no matter how many times you try those credentials, they won't work. You must reboot your server before you'll be able to log in as the admin user. Once it's rebooted, log in with:
  • username: admin
  • password: The password created during the admin user stage of the installation.

Adding users

In order for anyone to connect to the Openfire server, they must be added to the system. You simply click the Users/Groups tab on the Admin Console and then click Create New User (Figure F). After you enter the information for the new user, the user will be ready to log in to the server. Make sure you add all of the users necessary (in big environments, this might be taken care of by LDAP). Figure F

If you want more fine-grained control over users, you should consider creating groups that will house different types of users. (Click the image to enlarge.)

Connecting to the server

The way in which the user connects to the server will depend upon the client they use. Here's the gist of how to connect:

  1. Open the chat client.
  2. Add a new Jabber account. The user ID must be in the form of USERID@SERVER_ADDRESS, and the password was set by the administrator when the user was created.

You now have a full-fledged chat server running on your network. Let the collaboration and efficient communication begin!