#InstantMessaging #OpenFire #Self-Hosted
Full steps can be found at https://i12bretro.github.io/tutorials/0209.html
XMPP Server Download and Installation
- Log into the Ubuntu/Debian device
- Run the following commands in terminal:
# update software repositories
sudo apt update
# install available software updates
sudo apt upgrade
# download OpenFire installer
wget https://www.igniterealtime.org/downloadServlet?filename=openfire/openfire_4.5.2_all.deb -O openfire.deb
# execute the installer
sudo apt install ./openfire.deb
# start the OpenFire service
sudo systemctl enable --now openfire
# install MySQL/MariaDB
sudo apt install mariadb-server
# configure the MySQL database
sudo su
mysql_secure_installation
- Press Enter to login as root
- Type Y and press Enter to set a root password, type the password twice to confirm
- Type Y and press Enter to remove anonymous users
- Type Y and press Enter to disallow root login remotely
- Type Y and press Enter to remove the test database
- Type Y and press Enter to reload privilege tables
- Run the following command to login into MySQL: mysql -u root
- Authenticate with the root password set earlier
- Run the following commands to create the OpenFire database and database user
MariaDB [(none)]≫ CREATE DATABASE openfire;
MariaDB [(none)]≫ GRANT ALL PRIVILEGES ON openfire.* TO openfire@localhost IDENTIFIED BY '0p3nF1re!!';
MariaDB [(none)]≫ FLUSH PRIVILEGES;
MariaDB [(none)]≫ USE openfire;
MariaDB [(none)]≫ source /usr/share/openfire/resources/database/openfire_mysql.sql;
MariaDB [(none)]≫ QUIT; - Open a web browser and open to http://localhost:9090/setup/index.jsp
- Select a language ≫ Click Continue
- Set the XMPP domain name and input the server fully qualified domain name ≫ Click Continue
- Select Standard Database Connection ≫ Click Continue
- Enter the following database parameters:
Database Driver Presets:MySQL
JDBC Driver Class: com.mysql.jdbc.Driver
Database URL: jdbc:mysql://127.0.0.1:3306/openfire?rewriteBatchedStatements=true&characterEncoding=UTF-8&characterSetResults=UTF-8&serverTimezone=UTC
Username: openfire
Password: 0p3nF1re!! - Select Default on the Profile Settings page ≫ Click Continue
- Input an admin email address and password ≫ Click Continue
- Click the Login to the admin console button
- Login with username admin and the password created previously
- Click the Users/Groups tab
- Click Create New User in the left navigation menu
- Create a username and password for the new user
- Follow the steps to create as many users as needed, at least 2 are needed for testing
Setting Up A XMPP Client
- Run the following command in terminal:
sudo apt install pidgin - Launch Pidgin
- Click Add...
- Select XMPP from the protocol dropdown
- Input the first username created above along with the XMPP domain setup in OpenFire and the user's password
- Click the Advanced tab ≫ Select Use encryption if available from the Connection security dropdown
- Enter the OpenFire fully qualified server name in the server field
- Click the Add button
- Click Accept on the self-signed certificate popup
- Copy the extracted Pidgin Portable folder to another device
- Launch Pidgin Portable on the second device
- Select Modify Account
- Update the username and password to be a different account from the previous device
- From one of the devices, select Buddies ≫ Add Buddy
- Input the opposite devices's username
- On the second device accept the message request and the two devices should be able to send and receive instant messages using the OpenFire XMPP server
Connect with me and others
★ Discord: https://discord.com/invite/EzenvmSHW8
★ Reddit: https://reddit.com/r/i12bretro
★ Twitter: https://twitter.com/i12bretro
▶️ DTube