Diferencia entre revisiones de «Ejabberd»

(Véase también)
(Etiqueta: nuestro-nuestra)
(Véase también)
(Etiqueta: nuestro-nuestra)
Línea 129: Línea 129:
  
 
*[[GNU/Linux]]
 
*[[GNU/Linux]]
*[[XMPP]]
+
*[[XMPP]] (Extensible Messaging and Presence Protocol)
  
 
== Enlaces externos ==
 
== Enlaces externos ==

Revisión del 16:54 8 nov 2010

Ejabberd


Ejabberd
Información sobre la plantilla
CreadorProcessOne

Introdución

ejabberd es un servidor de mensajería instantánea de código abierto (GNU GPL) para plataformas Unix (BSD, GNU/Linux, etc), Microsoft Windows y otras. Para la comunicación instantánea se utiliza XMPP. Está escrito principalmente en Erlang, es software concurrente y distribuido.

Alexey Shchepin fundó el proyecto en 2002 y continúa manteniéndolo. El nombre ejabberd significa Erlang Jabber Daemon . Se escribe en letras minúsculas solamente, que es uso común en el mundo de Unix. El objetivo del proyecto ejabberd es la creación de un servidor XMPP estable y con variedad de posibilidades.
Fuente:Wikipedia


Ejabberd nos permitirá

  1. Crear Usuarios
  2. Salas de Chat
  3. Administradores y más

¿En donde podremos implementar Ejabberd?

Ejabberd puede ser implementado en una Oficina, Centro de Estudio, Aulas o el Hogar. Ejabberd nos permitirá crear nuestro propio "Servidor Chat" donde podremos crear "Usuarios" personalizados.

Si disponemos de una IP Pública, en su defecto un Dominio Registrado, también podremos usar Ejabberd como Servidor de Mensajería en Internet, no solo nuestra Red Local. En esta entrada de Wiki realizaremos una configuración básica para su puesta en función.

Instalación

Ejabberd se encuentra en los "Repositorios de Debian" Para instalar vamos a ejecutar en nuestra Terminal Favorita:

 #aptitude install ejabberd 

Configuración

Esta prueba ha sido realizada en una Red Local con 15 máquinas, El servidor Debian posee como IP Local xxx.xxx.xxx.xxx Y como Ip Pública XXX.XXX.XXX.XXX

Lo primero que haremos será decirle a nuestro Servidor Ejabberd cual será el Dominio a utilizar, para ello hemos escogido la IP con nuestra Red Local [xxx.xxx.xxx.xxx] para ello en nuestra terminal como Usuario Root haremos lo siguiente:

 #nano /etc/ejabberd/ejabberd.cfg 

Ahora buscamos las siguientes líneas donde configuraremos de la siguiente manera:

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Options which are set by Debconf and managed by ucf


%% Admin user
{acl, admin, {user, "", "ip servidor"}}.

%% Hostname
{hosts, ["ip servidor"]}.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Para administrar nuestro Servidor Ejabberd vía Web [Http] deberemos verificar que tengamos la siguiente línea

{5280, ejabberd_http, [
                         http_poll,
                         web_admin
                        ]}


]}.

Recuerda: Que debes tener abierto el puerto 5280 en tu Firewall o Router en caso que este se encuentre administrado.

Creando el Usuario Administrador

Antes de ingresar a Ejabberd por Web, debemos de crear un Usuario Administrador, para ello haremos lo siguiente desde Terminal como Usuario Root.

La sintaxis es:

#ejabberdctl register <usuario> <servidor> <contraseña>

por lo que en la terminal haremos:

# ejabberdctl register migue ip-servidor 123456

Ahora debemos decirle a Ejabberd que "Migue" será un Usuario con privilegios de Administrador, para ello, entramos nuevamente a nuestro archivo de configuración:

# nano /etc/ejabberd/ejabberd.cfg

Y agregamos a "Migue" en la siguiente línea

%%% ====================
%%% ACCESS CONTROL LISTS

%%
%% The 'admin' ACL grants administrative privileges to Jabber accounts.
%% You can put as many accounts as you want.
%%

{acl, admin, {user, "migue", "ip-servidor"}}.

%%{acl, admin, {user, "ermine", "example.org"}}.

Verificando que Ejabberd funcione correctamente

Primero reiniciaremos Ejabberd

# /etc/init.d/ejabberd restart

Ahora verificaremos que está funcionando

# ejabberdctl status

Nos tiene que decir:

Node ejabberd@TU_SERVIDOR is started. Status: started
ejabberd is running

Ingresando a Ejabberd vía Http

Para ello en tu navegador tienes que colocar: http://ip-servidor:5280/admin

Te pedirá un usuario, en cual será

migue@ip-servidor

La contraseña será que has especificado al momento de crear tu Usuario, en nuestro caso es:

123456

Creando Usuarios

Para esta prueba se creará un "Usuario" de prueba para que se comunique con "Migue" [Administrador]

# ejabberdctl register usuario 192.168.15.130 123456

Configuración del programa Cliente

Programa para GNU/Linux

Para esta prueba hemos utilizado Kopete como programa de mensajería cliente en GNU/Linux. Su configuración es la siguiente:
Usuario: migue@ip-servidor
Servidor: xxx.xxx.xxx.xxx
Puerto: 5222

Programa para Windows

Para nuestro usuario de Prueba llamado usuario hemos instalado Pidgin como cliente Jabberd
Usuario: usuario@ip-servidor
Servidor: xxx.xxx.xxx.xxx
Puerto: 5222
Finalmente

Hemos configurado Ejabber en nuestro hogar, para ello hemos hecho la prueba con GNU/Linux y Windows en una Máquina Virtual con Microsoft Windows Xp

Nuestro Servidor Ejabberd está funcionando
Autenticación mediante LDAP

He aqui una confguración básica de como logre autenticar mi ejabberd con el LDAP mediante el metodo auth_method, LDAP.

{auth_method, ldap}.
{ldap_servers, ["10.x.x.x"]}.
{ldap_rootdn, "cn=admin,dc=mydominio,dc=com"}.
{ldap_password, "password"}.
{ldap_base, "dc=mydominio,dc=com"}.
{ldap_filter, "(objectClass=sambaSamAccount)"}.

Y ya
listo

Véase también

Enlaces externos

Proyecto principal

Fuentes