Want to create interactive content? It’s easy in Genially!

Get started free

UNIDAD 7: Servicio de mensajería instantánea

D.

Created on February 22, 2024

Start designing with a free template

Discover more than 1500 professional designs like these:

Tech Presentation Mobile

Geniaflix Presentation

Vintage Mosaic Presentation

Shadow Presentation

Newspaper Presentation

Zen Presentation

Audio tutorial

Transcript

UNIDAD 7:

Servicio de mensajería instantánea

ÍNDICE

Instalación de Ejabberd

Configuración de Ejabberd

Ejabberd

Prueba y comprobación con Pidgin

Instalación de Pidgin

Configuración de Pidgin

Pidgin

Ejabberd

Breve introducción a la herramienta Ejabberd para entender el contenido.

Ejabberd

Ejabberd actúa como un servidor para el protocolo XMPP (Extensible Messaging and Presence Protocol, que es un protocolo de mensajería instantánea descentralizado y abierto) y también actúa como un broker para MQTT (MQ Telemetry Transport, que es un protocolo de mensajería ligero diseñado para dispositivos con recursos limitados como sensores y dispositivos del Internet de las Cosas (IoT)).

Ejabberd es una plataforma versátil que se puede utilizar para crear una variedad de aplicaciones de comunicación en tiempo real, desde mensajería instantánea hasta sistemas de IoT.

Ejabberd es utilizado principalmente para crear y administrar servicios de mensajería instantánea, tanto para uso personal como empresarial. Ofrece características como mensajería en tiempo real, chat grupal, presencia, transferencia de archivos, y soporte para extensiones y plugins que permiten ampliar su funcionalidad según las necesidades específicas de cada implementación.

Ejabberd

Cosas a saber

Debido a su arquitectura escalable y su capacidad para manejar grandes volúmenes de tráfico, ejabberd es utilizado por muchas empresas y organizaciones para implementar servicios de mensajería instantánea seguros y confiables. Además, su naturaleza de código abierto lo hace flexible y adaptable a una amplia variedad de casos de uso y requisitos de seguridad.

Instalación de ejabberd

Explicación sobre el proceso de instalación del servicio Ejabberd con todos los pasos necesarios.

Actualizamos el sistema

Para ello introducimos los tres comando para actualizar el sistema:

Update

Upgrade

Autoremove

Mostramos nuestro hostname

Debemos tener el hostname de “2smrser.es” tal y como lo configuramos en anteriores prácticas.

Para ver nuestro hostname simplemente debemos escribir en la terminal "hostname".

Hostname

Si deseamos cambiar el nombre del hostname simplemente debemos escribir el siguiente comando:sudo hostnamectl set-hostname nuevo_nombre

instalamos ejabberd

El comando wget es una herramienta que nos permite descargar archivos de internet desde la línea de comandos. Es compatible con una amplia gama de protocolos, incluyendo HTTP, HTTPS, FTP y SFTP.

Para proceder con la instalación de Ejabberd tenemos que hacer uso del comando wget.Usamos el siguiente comando:

instalamos ejabberd

Procedemos a instalar el archivo que hemos descargado previamente.

El comando principal para instalar un archivo .deb es: sudo dpkg -i nombre_del_archivo.deb Usamos el siguiente comando:

instalamos ejabberd

Una vez explicado todo esto para que se entienda todo el procedimiento mejor, procedemos a seguir con la explicación. Ahora ejecutaremos los comando para parar, iniciar y reiniciar para posteriormente comprobar el estado del servicio Ejabberd.

Por último ejecutamos el comando para comprobar el estado del servicio.

Configuración de ejabberd

Explicación sobre el proceso de configuración del servicio Ejabberd con todos los pasos necesarios.

fichero de configuración

El fichero de configuración de este servicio se encuentra en /opt/ejabberd/conf/ejabberd.yml Lo editamos y comprobamos que el nombre en el apartado “hosts” coincide con nuestro dominio.

Ahora vamos a buscar el módulo “mod_muc” el cuál sirve para servidores XMPP para habilitar la funcionalidad de mensajería multipersonal, debajo de este módulo vamos a pegar la siguiente línea pero respetando dos espacios debajo del módulo ya que así funciona en los archivos .yaml. Con esta línea estamos indicando al servicio del dominio donde van a estar disponibles las conversaciones del chat.

fichero de configuración

Posteriormente en este mismo archivo buscamos la línea “acl” (Access Control List), que son las listas de control de acceso. Esto lo que hace es crear una regla que va a determinar quién tiene acceso a determinados recursos. Cuidado, respeta los espacios que se indican: son dos espacios, como en los ficheros .yaml Inserta las siguientes líneas:

Guardamos los cambios y reiniciamos el servico.

Registrar usuarios

El comando para registrar un usuario en Ejabberd tiene la siguiente estructura: ejabberdctl register Nombre Nombre_del_Dominio Contraseña

Procedemos a registrar el usuario siguiendo la estructura del comando proporcionado anteriormente .

accedemos a través del navegador

Accederemos desde el cliente Desktop a la consola de administración de Ejabberd a través del navegador. Para ello en la url debemos poner: http:dirección_IP_del_servidor:puerto_de_Ejabberd/usuario_registrado

Al introducir la url nos aparecerá que tenemos que introducir las credenciales correspondientes.

accedemos a través del navegador

Si accedemos al apartado llamado “Virtual Hosts” accedemos al panel para poder comprobar el dominio que nos aparece, nos aparece 2smrser.es

registrar 2 usuarios

Accedemos a 2smrser.es y buscamos “Users”, una vez dentro podremos crear usuarios.

Crearemos 2 usuarios.

pidgin

Breve introducción a la herramienta Pidgin para entender el contenido.

pidgin

Pidgin es un cliente de mensajería instantánea de código abierto que admite múltiples protocolos de mensajería, incluidos AIM, ICQ, Google Talk, Jabber/XMPP, MSN Messenger, Yahoo!, Bonjour, Gadu-Gadu, IRC y otros. Su principal característica es que permite a los usuarios acceder a múltiples cuentas de mensajería desde una sola interfaz.

Instalación de pidgin

Explicación sobre el proceso de instalación del servicio Pidgin con todos los pasos necesarios.

instalación en ubuntu

Primero debemos actualizar el cliente haciendo uso de:

  • sudo apt update
  • sudo apt upgrade
  • sudo apt autoremove

Instalamos el paquete Pidgin ejecutando el siguiente comando.

instalación en Windows

Primero debemos acceder a nuestro cliente Windows y una vez dentro acceder a la web oficial de Pidgin. Una vez dentro descargamos Pidgin haciendo click en el botón de descargar.

Y eligiendo nuestra versión (Windows).

Configuración de pidgin

Explicación sobre el proceso de configuración del servicio Pidgin con todos los pasos necesarios.

configuración en ubuntu

Abrimos la aplicación pidgin en Desktop.

Una vez abierta pulsamos en el botón "Add..."

Configuración básica

Configuración avanzada

configuración en Windows

Repetimos la misma operación para nuestro cliente Windows, añadiendo el segundo usuario dado de alta en la consola.

Prueba y comprobación con pidgin

Pruebas para comprobar el funcionamiento correcto de Pidgin con todos los pasos necesarios.

Añadir amigo desde windows

Ya tenemos configurados los clientes de mensajería instantánea. Vamos a probarlos.

Nos dirigimos al cliente Windows y pulsamos la siguiente opción: Amigos → Añadir un amigo

autorizar amigo desde ubuntu

Fíjate en el cliente Desktop que tiene que aparecer la autorización enviada.

Pulsamos en “Authorize”.

AÑADIR amigo desde ubuntu

Seguimos los mismos pasos tal y como hemos hecho en Windows.

autorizar amigo desde WINDOWS

Seguimos los mismos pasos tal y como hemos hecho en Ubuntu.

A partir de ahora pueden intercambiar mensajes instantáneos entre las dos cuentas de usuario.

AMBOS USUARIOS SE ENCUENTRAN CONECTADOS

Nos dirigimos a ejabberd y en el apartado de usuarios comprobamos el estado de actividad de nuestros 2 usuarios.

LISTA DE CONTACTOS DE AMBOS USUARIOS

Nos dirigimos a la lista de contactos del usuario1 y comprobamos que tiene al usuario2 en esta lista.

Nos dirigimos a la lista de contactos del usuario2 y comprobamos que tiene al usuario1 en esta lista.

CERRAMOS UBUNTU Y ENVIAMOS MENSAJE DESDE WINDOWS

Cerramos el usuario1 el cual se encuenta en ubuntu.

Una vez hecho esto nos dirigimos al usuario2 el cual se encuentra en Windows y le enviamos un mensaje al usuario1.

Si ahora nos dirigimos a la consola de administración de Ejabberd podemos verificar que existen mensajes en cola del usuario2 al usuario1.

RECEPCIÓN DEL MENSAJE EN COLA

Abrimos de nuevo el usuario1 e iniciamos la conversación con el usuario2 para que llegue el mensaje que estaba en cola.

VERIFICACIÓN DE QUE EL MENSAJE YA NO ESTÁ EN COLA

Verificamos en la consola de administración de Ejabberd que ya no existe mensaje en cola del usuario2.

¡GRACIAS!

Sus puertos

  • Para conexiones de cliente XMPP: El puerto predeterminado es 5222.
  • Para conexiones de servidor XMPP: El puerto predeterminado es 5269.
  • Para el clúster de ejabberd (comunicación interna): Utiliza el puerto 4369.
  • Para el broker MQTT: No tiene un puerto predeterminado específico, ya que se puede configurar para utilizar cualquier puerto disponible.

XMPP y Pidgin

Con Pidgin, podemos configurar una cuenta de XMPP e iniciar sesión para chatear con contactos que también utilicen XMPP, ya sea en servidores locales o en la red XMPP global. Además, Pidgin ofrece características como la capacidad de cifrar las conversaciones mediante OTR (Off-the-Record Messaging) cuando se utiliza con un complemento adecuado.

Aceptar certificado

Nos pregunta si confiamos en el certificado que tenemos instalado en nuestro servidor. Pulsamos en nuestro caso que sí ya que es un certificado autofirmado por nosotros mismos.

Explicación de los comandos

  • sudo apt update: Actualiza la lista de paquetes disponibles en los repositorios.
  • sudo apt upgrade: Actualiza los paquetes instalados a las últimas versiones disponibles.
  • sudo apt autoremove: Elimina automáticamente los paquetes que ya no son necesarios en el sistema.

Configuración avanzada

Nos dirigimos a la configuración avanzada e introducimos lo siguiente:

  • Conectar con el servidor → La dirección IP de nuestro servidor
  • Terminamos la configuración de la cuenta → pulsamos la opción de “Añadir”

Explicación del comando

Por lo tanto en la línea anterior que hemos introducido en la terminal hemos indicado con el comando wget que vamos a instalar un paquete que se encuentra en internet y a continuación hemos introducido la URL de dicho paquete el cuál se encuentra en github (plataforma enfocada en el desarrollo software y dedicada al almacenamiento y control de versiones de código).

Configuración básica

Nos dirigimos a la configuración básica e introducimos lo siguiente:

  • Protocolo → XMPP
  • Nombre de usuario → Uno de los usuarios que hayáis creado anteriormente
  • Dominio → Nuestro dominio (2smrser.es)
  • Contraseña → La correspondiente que pusisteis para ese usuario concreto
  • Recordar contraseña → Opción que debe estar marcada
  • Apodo local → El nombre de usuario

Explicación de los comandos

Si hacemos click sobre 2smrser.es podemos acceder a la información que hay registrada para ese dominio

Compatibilidad entre Pidgin y XMPP

Pidgin es compatible con el protocolo XMPP que estamos utilizando en esta práctica. XMPP es un protocolo abierto y estándar de mensajería instantánea y presencia en línea. Pidgin ha sido compatible con XMPP durante mucho tiempo y es una opción popular para aquellos que desean utilizar este protocolo para la comunicación instantánea.

Explicación de los comandos

  • sudo ejabberdctl stop: utilizamos este comando para parar el servicio.
  • sudo ejabberdctl start: utilizamos este comando para inicia el servicio.
  • sudo ejabberdctl restart: utilizamos este comando para reiniciar el servicio.

Relaciones entre Ejabberd y XMPP

  • Ejabbard es un servidor XMPP, es decir, implementa el protocolo XMPP.
  • XMPP es el protocolo que utiliza Ejabberd para facilitar la comunicación.
  • Ambos son necesarios para que la mensajería instantánea y la comunicación entre dispositivos IoT funcionen con el protocolo XMPP.