OpenFire
https://www.igniterealtime.org/projects/openfire/index.jsp
https://www.igniterealtime.org/downloads/index.js
The full version of this for Linux is in an RPM file, rather than Linux Mint DEB. It can be converted
sudo apt-get install alien dpkg-dev debhelper build-essential
sudo alien packagename.rpm
sudo dpkg -i packagename.deb
So example
sudo apt-get install alien dpkg-dev debhelper build-essential
cd ~/Downloads
sudo alien openfire-4.0.3-1.i386.rpm
sudo dpkg -i openfire-4.0.3-1.i386.deb
Jabberd
Jabberd but really much more complicate because the directions are for an old version. Visit the web site for current install(very messy IMHO)
https://help.ubuntu.com/lts/serverguide/jabberd2-server.html
Pretty straight forward, start with lan and then can be opened up to the wan.
Installation
To install jabberd2, in a terminal enter:
sudo apt install jabberd2
Configuration
A couple of XML configuration files will be used to configure jabberd2 for Berkeley DB user authentication. This is a very simple form of authentication. However, jabberd2 can be configured to use LDAP, MySQL, PostgreSQL, etc for for user authentication.
First, edit /etc/jabberd2/sm.xml changing:
<id>jabber.example.com</id>Replace jabber.example.com with the hostname, or other id, of your server.
Now in the <storage> section change the <driver> to:
<driver>db</driver>Next, edit /etc/jabberd2/c2s.xml in the <local> section change:
<id>jabber.example.com</id>And in the <authreg> section adjust the <module> section to:
<module>db</module>Finally, restart jabberd2 to enable the new settings:
sudo systemctl restart jabberd2.service
You should now be able to connect to the server using a Jabber client like Pidgin for example.