Exercici 1. IM Openfire
Contingut
Enunciat
Instal·la un servidor de missatgeria instantània basat en Openfire i prova'n el funcionament entre dos clients.
Instal·lació
A la secció de descàrregues de la pàgina oficial copiarem l'enllaç de descàrrega de la versió Linux de 64 bits i la descarregarem a la màquina virtual CentOS amb el paquet wget
.
- Nota: en cas de no tenir instal·lat wget, l'instal·larem amb yum:
yum install wget -y
wget http://igniterealtime.org/downloadServlet?filename=openfire/openfire-4.2.3-1.x86_64.rpm
Haurem d'instal·lar unes llibreries de 32 bits perquè el servei funcioni correctament
yum install libldb.i686 -y
També instal·larem un servidor de Bases de Dades MariaDB i configurarem l'arrencada automàtica i engegarem el servei:
yum install mariadb-server -y systemctl enable mariadb systemctl start mariadb
Instal·larem l'arxiu RPM descarregat prèviament amb
yum install openfire-4.2.3-1.x86_64.rpm
Una vegada instal·lat el servidor SQL i OpenFire, crearem la base de dades openfire
i importarem la base de dades que ve donada pel mateix programa:
mysqladmin -u root create openfire cd /opt/openfire/resources/database/ mysql -u root -b openfire < openfire_mysql.sql
Posada en marxa
Haurem d'executar el programa (en primer pla)
cd /opt/openfire/bin ./openfire.sh start
O bé com a dimoni de servei:
/sbin/chkconfig openfire on systemctl start openfire
Configuració
Un cop engegat el servei, podem anar al port 9090 del servidor per HTTP, amb qualsevol navegador web per acabar de posar a punt el servidor d'IM. Primer de tot, haurem d'obrir el port 9090 al Firewall per a poder-hi accedir des de l'amfitrió; i la resta de màquines de la xarxa.
firewall-cmd --add-port=9090/tcp --permanent firewall-cmd --reload
Després navegarem a l'adreça IP de la màquina on hi ha el servidor pel port 9090:
Avançarem a la configuració del nom de host i domini fins que arribem a la finestra de base de dades. Marcarem estàndard perquè utilitzarem MariaDB per a aquesta tasca:
Seleccionarem l'opció MySQL al desplegable i introduirem
- Clase de drivers JDBC:
com.mysql.jdbc.Driver
- URL de la base de datos:
jdbc:mysql://127.0.0.1:3306/openfire?rewriteBatchedStatements=true
- Nom usuari i password BBDD: en funció de la instal·lació de MariaDB
- Clase de drivers JDBC:
Deixarem la Configuración de perfil en el valor Por defecto i continuarem
Finalment, escollirem una contrasenya per a l'usuari administrador del servidor OpenFire via Web:
Hem acabat la instal·lació
Ara podrem fer login a la web amb l'usuari administrador i la contrasenya definida abans
Usuaris
Des de la pestanya Usuarios/Grupos podrem veure una llista dels usuaris donats d'alta actualment per editar-los o bé donar-ne d'alta de nous
Crearem un parell d'usuaris: gsola96 i jugalo per a fer les proves al final
Prova de funcionament
Per a comprovar el funcionament del servidor necessitaré 2 màquines clients. En aquest exercici faré servir el Fedora amfitrió com a client 1 (usuari guillem) i faré servir una màquina virtual amb Fedora 29 per a l'usuari jugalo. En els 2 casos utilitzaré el programa Pidgin.
Client 1
Instal·laré com a root el programari client:
dnf install pidgin -y
Iniciaré sessió com a guillem amb la contrasenya definida al donar d'alta l'usuari
- Problema: no podem iniciar sessió per un problema a la xarxa
- Solució: si veiem a l'apartat Avançat de la configuració de connexió, veiem que hi ha el port 5222 que s'utilitza per alguna cosa.
- Haurem d'obrir el port al servidor de CentOS on hem instal·lat el servei OpenFire i tornarem a provar:
firewall-cmd --add-port=5222/tcp --permanent firewall-cmd --reload
Un cop fet això, veurem com ens surt una advertència perquè el certificat SSL per xifrar la comunicació és autosignat. Ho acceptem i llavors apareixerem com a online:
Client 2
Instal·larem Pidgin amb dnf install empathy -y
com a root i, de la mateixa manera que amb el Client 1, iniciarem sessió al servidor d'IM que hem configurat:
Xat
Per a poder comunicar-nos entre els 2 usuaris haurem de crear primer una sala des de la consola d'administració web de l'Openfire. En el meu cas, creo una sala per a tractar els temes de M08:
Des del Fedora amfitrió (Client 1) busco l'opció per unir-me a la sala i entro. En efecte, estic dins i veig que la descripció, el nom i el tema corresponen amb els estipulats al crear la sala
Jugalo també pot entrar a la sala des del Fedora Virtual (Client 2) i veu a la llista d'assistents que hi ha gsola96:
gsola96 envia un missatge a la sala
jugalo pot veure el missatge i escriu una resposta
gsola96 rep la resposta de jugalo