Ejabberd - XMPP
Se trata de un servidor de mensajería instantánea de código abierto. Válido para plataformas Unix BSD, GNU/Linux o Microsoft Windows entre otras. Para la comunicación instantánea se utiliza XMPP.
Última actualización
Se trata de un servidor de mensajería instantánea de código abierto. Válido para plataformas Unix BSD, GNU/Linux o Microsoft Windows entre otras. Para la comunicación instantánea se utiliza XMPP.
Última actualización
Alexey Shchepin fundó el proyecto en 2002 y continúa manteniéndolo. El nombre « ejabberd » significa « ». Se escribe en letras minúsculas solamente, que es uso común en el mundo de . El objetivo del proyecto ejabberd es la creación de un servidor estable y con variedad de posibilidades.
La documentación y casos de uso la puedes encontrar aquí:
Vamos a ver como funciona:
Lo primero, como siempre, será actualizar los paquetes de nuestro sistema:
Tras tener los paquetes actualizados, procedemos a instalar eJabberd. Para eso nos descargaremos el paquete directamente desde el :
Se puede instalar eJabberd desde repositorios de Ubuntu, pero parece que tiene un bug y no se puede levantar correctamente el servicio, por lo que recomiendo instalar el paquete manualmente.
Una vez se hayan instalado todos los paquetes, procedemos a parar el servicio.
A continuación configuraremos el servicio de eJabber, como hemos configurado anteriormente el hostname del servidor, tendremos configuración ya con nuestro dominio. Para eso editaremos el fichero de configuración:
Ahora añadiremos o modificaremos:
Añadimos el dominio del servidor al host
Buscamos el apartado trusted_network
y lo ponemos en all
Ahora le vamos a dar permisos de administrador al usuario admin
que hemos creado:
El acceso web viene habilitado por defecto por las siguientes líneas, no hace falta que cambies nada:
Vamos hasta el apartado de mod_muc
para añadir un host
personalizado:
Por defecto, el host
de mod_muc
es conference.[tu_dominio]
, pero en este caso lo hemos cambiado por muc.alexdns
. Si no quieres modificar este host, ten en cuenta el subdominio conference.alexdns.local
.
Con eJabberd hay una forma para comprobar que la configuración que tenemos es correcta, para ello ejecutaremos este comando:
La salida de este comando es el siguiente:
Si pulsamos enter
para continuar, nos mostrará el log del inicio del servicio y podremos acceder al panel de admin.
Ahora que tenemos todo funcionando, podemos crear un usuario para comprobar que funciona en un cliente de XMPP:
Debemos crear primero de todo el usuario admin
:
Para comprobar que usuarios hay creados podemos usar el comando:
Ahora podemos acceder al acceso web desde http://[tu_ip]:5280/admin
y nos cargará lo siguiente tras iniciar sesión con el usuario admin@[tu_dominio]
:
Lo que deberíamos hacer ahora es crear dos usuarios normales para probar la conexión. Para ello accede a Dominios virtuales>localhost>usuarios
:
Utilizaremos DOS máquinas virtuales cada una con una cuenta diferente y configuraremos:
Nombre: (el que hayas creado en el admin)
Dominio: alexdns.local
Recurso: (opcional, es para identificar dispositivos)
Contraseña: ****
Debes pasar a opciones avanzadas y configurar "Conectar con el servidor" y poner la IP correcta:
Te pedira aceptar el certificado SSL y podremos iniciar conversaciones con nuestros amigos y amigas simplemente añadiendo el usuario en una MV y otra sesión con otro usuario en otra MV:
Una vez hayas llegado hasta aquí es posible que te interese crear salas de chat para tus usuarios, vamos a ver como.
En nuestro caso, si has seguido la guía anterior deberias tener configurado como sala MUC (Multi-User Chat), muc.alexdns.local
por lo que ahora toca ir a pidgin:
Abre Pidgin y ve a Amigos > Unirse a un chat.
En la ventana emergente:
Cuenta: Tu cuenta XMPP ya conectada.
Sala: El nombre que quieres para la sala (ej. cafeteria
).
Servidor: Usualmente muc.alexdns.local
Alias: (Opcional) Nombre para mostrar la sala en tu lista.
Contraseña: (Opcional) si quieres restringir el acceso.
Haz clic en Unirse.
Si la sala no existía antes, se creará automáticamente (esto depende de los permisos en mod_muc
).
Una vez dentro de la sala puedes:
Hacer la sala persistente.
Establecer quién puede entrar.
Poner contraseña.
Hacerla pública o privada.
Podemos utilizar el cliente que más nos guste, hay y versiones como Dino pero en este caso usaremos Pidgin, que también es un cliente XMPP bastante sencillo y agradable.