There’s a variety of reasons as to why you may want to turn your VPS into a private instant messaging server. Regardless of your motivations, we’ve compiled a guide that will help you understand the basics of installing, operating and managing a VPS running Jabber, a popular instant messaging platform.
The Background of Jabber
Before we dive head first into Jabber, let’s spend a few moments on the background of the Jabber project. Jabber is an initiative to produce an open source, XML-based instant messaging platform.
Jabber was started in 1998 by Jeremie Miller. The Jabber standards and architecture help create a distributed IM system. Systems administrators may notice that Jabber is similar to an email server, with users connecting to these systems locally.
Jabber vs. Other IM Platforms
This approach is diametrically opposed to the monolithic system architecture provided by other service providers as AIM, ICQ, MSN and Yahoo, where a single central server or group of centralized servers provide the messaging service.
Jabber’s similarities to email architecture doesn’t stop there. Jabber addresses its users with an addressing scheme almost identical to the basic SMTP scheme. For example, myname@myserver.com is a valid Jabber address.
The XMPP Protocol Explained
Jabber was the original name for the XMPP protocol: Extensible Messaging and Presence Protocol that is based on XML. Unlike most instant messaging protocols, XMPP is defined in an open standard and uses an open systems approach of development and application, by which anyone may implement an XMPP service and inter-operate with other organizations’ implementations.
Although many server and client implementations are distributed as free and open-source software, numerous freeware and commercial software implementations of the XMPP protocol also exist.
Getting Started with Installing Jabber
Let’s get started and see how to install one of the available versions on our server. We chose to use “eJabberd” which has also a nice web interface that allows you to easily administer it once installed.
The installation is pretty simple. Just connect on you VPS and type the following command:
> sudo apt-get install ejabberd (Ubuntu/Debian) > yum install ejabberd (CentOS/Fedora)
After it is installed, you will need to edit the configuration file found at /etc/ejabberd/ejabberd.cfg in order to change the listening address. Find and change the following line (unless you only want to run on localhost):
{hosts, ["localhost"]}.
And change it to:
{hosts, ["localhost","servername.com"]}.
or
{hosts, ["localhost","PUBLIC-IP-ADDRESS"]}.
Once this is done, we will now need to create the admin user ad give the user administrative rights on this server. Find the following line in the configuration file:
{acl, admin, {user, "", "localhost"}}.
And change it to:
{acl, admin, {user, "admin ", "servername.com"}}.
Or, depending what address you chose earlier:
{hosts, ["localhost","PUBLIC-IP-ADDRESS"]}.
Save and exit and restart the service with the following command:
> /etc/init.d/ejabberd restart
We will just have to set the password for your admin user in order to connect to the web interface. Do this using the following command:
> ejabberdctl register admin servername.com password
or this if you used the public ip address in the configuration file:
> ejabberdctl register admin PUBLIC-IP-ADDRESS password
We are now ready to connect to the web interface and add more users. Open your browser and connect to the following address:
http://servername.com:5280/admin
or
http://PUBLIC-IP-ADDRESS:5280/admin
You will be asked for the admin credential we just created, so type them in and welcome to your web interface.
In order to add more users just click on “Virtual Hosts” on the left menu, then select the server’s address (should be servername.com or PUBLIC-IP-ADDRESS) and then select “Users”.
You can now choose a username and a password for each one of your users. You can of course do the same from the command line using the following command:
> ejabberdctl register user servername.com password
or this if you used the public ip address in the configuration file:
> ejabberdctl register user PUBLIC-IP-ADDRESS password
Connecting to Your Jabber Server
Once this step will is complete, you will just have to connect to your new private instant messaging server using one of the various available clients. Adium is popular for OSX while Pidgin is a popular choice for Linux and Windows.
Once your preferred IM app is downloaded and installed, you will be asked to add an account.
Select the XMPP protocol and add the username and password you had just created in previous steps.
Conclusion
Once you are connected, you will be able to add and message all the other users created on your Jabber VPS.
Congratulations, You are now the new owner of a private instant messaging server!
Related Posts:
- Have you ever visited the web’s busiest hosting forum? LowEndTalk awaits. - September 27, 2022
- Grab the deals first by subscribing to our new deal alerts - September 16, 2022
- LowEndBox is on Instagram and TikTok! - August 5, 2022
I guess it should be mentioned that you probably want to create SRV records for your XMPP server (similar to MX records for SMTP), so you can have XMPP addresses @domain.tld, even if the A or AAAA records for domain.tld don’t point to the machine hosting your XMPP server.
See, for example, here:
http://prosody.im/doc/dns
Oh, and also: You should be able to add and message anyone on any XMPP server out there, not just your own, just as with email, that’s kindof the point.
“Jabber is based on the XMPP protocol: Extensible Messaging and Presence Protocol that is based on XML.”
No, it isn’t. XMPP is a continuation of the Jabber protocol, and “Jabber” isn’t really in use anymore, even if it is still being used in some areas for legacy reasons.
What is good alternative
Nice one
Why not use Prosody instead of ejabberd? Is there an advantage to one over the other?
I disagree that https://and22066.files.wordpress.com/2017/03/seattle_vps_host.pdf
Best regards, Kristel