Exercici 1. IM Openfire

De Lordwektabyte Wiki
Salta a la navegació Salta a la cerca

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:

Finestra inicial de configuracioó via web


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:

M08UF3EX12.png


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
M08UF3EX13.png


Deixarem la Configuración de perfil en el valor Por defecto i continuarem

M08UF3EX14.png


Finalment, escollirem una contrasenya per a l'usuari administrador del servidor OpenFire via Web:

M08UF3EX15.png


Hem acabat la instal·lació

M08UF3EX16.png


Ara podrem fer login a la web amb l'usuari administrador i la contrasenya definida abans

M08UF3EX17.png


Finestra principal d'administració d'OpenFire


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

M08UF3EX19.png


Crearem un parell d'usuaris: gsola96 i jugalo per a fer les proves al final

M08UF3EX110.png


M08UF3EX111.png


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

M08UF3EX113.png


Problema: no podem iniciar sessió per un problema a la xarxa
M08UF3EX114.png


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.
S'ha produït un error en crear la miniatura: No es pot desar la miniatura a la destinació


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:

M08UF3EX116.png


M08UF3EX117.png


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:

M08UF3EX118.png


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:

M08UF3EX20.png


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

S'ha produït un error en crear la miniatura: No es pot desar la miniatura a la destinació


Jugalo també pot entrar a la sala des del Fedora Virtual (Client 2) i veu a la llista d'assistents que hi ha gsola96:

M08UF3EX22.png


gsola96 envia un missatge a la sala

S'ha produït un error en crear la miniatura: No es pot desar la miniatura a la destinació


jugalo pot veure el missatge i escriu una resposta

M08UF3EX24.png


gsola96 rep la resposta de jugalo

S'ha produït un error en crear la miniatura: No es pot desar la miniatura a la destinació