SlideShare uma empresa Scribd logo
1 de 10
Introdução ao Jabber


Jabber é um protocolo aberto, com bases XML, para sistemas de mensagens
instantâneas. Softwares com base Jabber são distribuídos em milhares de servidores
através da internet, e usados por cerca de dez milhões de pessoas em todo mundo, de
acordo com a Fundação Jabber Software.

Jeremie Miller iniciou o projecto em 1988; a principal versão pública ocorreu em Maio
de 2000. O produto principal do projecto é o jabberd, um servidor em que os clientes
Jabber se ligam para comunicar. Este servidor pode criar uma rede privada Jabber
(por detrás de um firewall, por exemplo) ou pode se juntar à rede Jabber global e
pública.

Um conceito chave do sistema Jabber são os transportes, também conhecido como
gateways, que permite aos utilizadores acederem a redes usando outros protocolos -
tais como o AIM, o ICQ (usando o OSCAR), MSN Messenger e Windows Messenger
(usando o .NET Messenger Service), SMS ou E-mail. Ao contrário dos clientes de
multiprotocolo, como o Trillian ou Gaim, Jabber fornece este acesso no nível de
servidor comunicando via serviços especiais de gateway em um computador remoto.
Qualquer utilizador Jabber pode se registrar com uma destas gateways fornecendo a
informação necessária para aceder a essa rede, e pode então comunicar-se com os
utilizadores dessa rede como se fossem utilizadores de Jabber. Isto significa que
qualquer cliente que suportar inteiramente o protocolo Jabber pode ser usado para
aceder a qualquer rede em que exista uma gateway, sem necessitar de código extra
no cliente.

As bases do protocolo Jabber, agora administrado pela fundação Jabber Software,
foram aceitas pela IETF como padrão sob o nome XMPP, com RFC número 3920. É
frequentemente considerado como estando na competição com o SIMPLE, baseado
no protocolo do SIP, como protocolo padrão da notificação de presença e de instant
messaging; no entanto, o design do XMPP tem por finalidade fornecer uma plataforma
de interface mais geral entre aplicações.



Instalação do MySQL, Java, Apache e Openfire

Instalação do MySQL e configuração da base de dados para o Openfire

Precisamos instalar o MySQL Server para podermos preparar uma base de dados
para o nosso Openfire.

Vamos instalar o mysql server:

# aptitude install mysql-server

Após a instalação aparecerá uma tela de wizard para a definição da senha do root da
base de dados. Defina uma senha e confirme-a.

Agora vamos acessar o banco de dados e criar a nossa base.

# mysql -u root -p
Digite a senha que foi definida na instalação do MySQL.

Agora que já estamos no MySQL, digite os seguintes comandos:

mysql> CREATE DATABASE openfire;
mysql> GRANT ALL PRIVILEGES ON openfire.* TO openfire@localhost
IDENTIFIED BY ´senha´;
mysql> QUIT;

Explicando:
   • Na primeira linha estamos criando um banco de dados com o nome "openfire",
       que será utilizado pelo servidor Openfire.
   • Na segunda linha estamos dando para o usuário "openfire" todos os privilégios
       neste banco de dados e estamos definindo para ele uma senha denominada
       "senha".
   • Na terceira linha estamos saindo do banco de dados.


Pronto, agora já temos a nossa base de dados onde ficaram armazenados todos os
dados pertinentes ao nosso servidor Openfire.

Instalação do Java e do Apache

Como o Openfire trabalha em cima de Java, temos que instalá-lo.

Nos repositórios do Debian já temos o Java, precisamos somente instalá-lo.

# aptitude install sun-java6-jre

Pronto, com isso o Java já será instalado e suas dependências.

Como pretendemos colocar para trabalhar um cliente web e a administração do
servidor Openfire é web, vamos instalar o Apache:

# aptitude install apache2

Pronto, temos a nossa base web para trabalharmos.

Instalação do Openfire

No repositório do Debian temos o Openfire, podemos instalá-lo com o seguinte
comando:

# aptitude install openfire

Porém vou utilizar a última versão.

Vamos baixar a última versão pertinente a hoje do site.

# cd /tmp # wget -c http://download.igniterealtime.org/openfire/openfire_3.6.4_all.deb

Ou seja, o openfire_3.6.4_all.deb.

Vamos instalar:
# dpkg -i openfire_3.6.4_all.deb

Pronto, já estamos com o Openfire e o Java instalados com o MySQL instalado e
configurado.

Agora podemos ir para a parte de administração do nosso servidor.


Configuração do servidor Openfire

Agora vamos configurar o Openfire.

Acesse pelo navegador:

http://ip_servidor:9090

Se o seu servidor for local pode utilizar o seguinte endereço.

http://127.0.0.1:9090

Aparecerá uma tela de boas vindas perguntando o idioma, selecione o que você achar
mais conveniente e clique em continuar.

Nesta tela vamos começar a configuração do servidor, informe um domínio e as portas
para administração do servidor, uma porta para trabalhar via HTTP e uma para
trabalhar via HTTPS.

Ex.:
   •   Informe um domínio: domínio.com.br
   •   Porta do console admin: 9090
   •   Porta segura do console admin: 9091


Depois de definir o domínio e as portas, clique em continuar.

Nesta tela podemos definir o tipo de banco de dados, como pretendemos configurar o
Openfire com o MySQL, utilizaremos a primeira opção: conexão padrão do banco de
dados. Clique em continuar.

Nesta tela, na opção "Predefinições do driver de banco de dados", utilizaremos a
opção MySQL.

A segunda classe do driver JDBC podemos manter a padrão: com.mysql.jdbc.Driver

Na terceira opção, URL do banco de dados, utilizaremos o local onde está a nossa
base de dados MySQL. Se você está utilizando o Openfire e o MySQL na mesma
máquina, pode definir da seguinte maneira:

Jdbc:mysql://localhost:3306/openfire

Se estiver em outra máquina faça o seguinte:

Jdbc:mysql://ip_outramaquina:3306/openfire
Onde ip_outramaquina é o ip da máquina onde está a sua base MySQL.

Nome do usuário fica como definimos na base de dados mysql: openfire

Senha: a que você definiu para o usuário na opção IDENTIFIED BY no MySQL.

Minimum Connections: fica por sua conta.

Maximum Connections: fica por sua conta.

Tempo de expiração da conexão: 1.0

Daí clique em continuar.

Se for preenchido tudo corretamente, passaremos para a próxima pagina, a de
configuração de perfis. Podemos utilizar a primeira opção e clicar em continuar.

Agora vamos definir o endereço de email do admin e a senha.

Ex.:
   •   Endereço de email do admin: admin@dominio.com.br
   •   Nova senha: senha
   •   Confirme a senha: senha


Sempre utilize senhas fortes com caracteres maiúsculos e minúsculos, caracteres
especiais para deixar a sua senha mais difícil de ser descoberta.

Após definir a senha, clique em continuar e pode se logar no console de
administração.

Logue com o usuário admin e a senha que você definiu.


Criação de usuários e grupos e configuração do compartilhamento de lista de
    contatos

Vamos criar um grupo.

O padrão é você criar grupos e atribuir aos grupos os usuários.

Então vamos criar um grupo chamado TI:

1. Clique em "Grupos".
2. Clique em "Criar Novo Grupo".
3. Defina um "Nome do Grupo".

Ex.:
   •   Nome do Grupo: TI
   •   Descrição: Departamento de Tecnologia


Clique em "Criar".
Pronto, o primeiro grupo está criado.

Agora vamos criar um usuário.

1. Clique em "Usuário".
2. Criar Novo usuário.

O nome de usuário é o nome que será utilizado pelo cliente. Pode ser utilizada
nomenclatura como nome+sobrenome.

Ex.:
   •   Nome de usuário: jose.silva
   •   Nome: José da Silva
   •   Email: jose.silva@dominio.com.br
   •   Senha: senha
   •   Confirmar senha: senha
   •   Is Administrator? Nesta opção você define se o usuário é administrador ou não
       do seu servidor.


Clique em criar Usuário.

Na senha defina uma senha padrão para o primeiro acesso e peça para que os
usuários a troquem no primeiro logon.

Pronto, agora temos um usuário e um grupo.

Agora vamos atribuir este usuário a um grupo.

Clique em "Grupos". Aparecerá o grupo TI e que acabamos de criar. Clique em
"Editar". Agora podemos adicionar o jose.silva ao grupo TI.

Na parte da tela, onde está escrito "Membros deste grupo", temos um campo
"Adicionar Usuário(s):", aqui vamos digitar o nome do jose.silva e clicaremos em
adicionar.

Pronto, agora o usuário jose.silva faz parte do grupo de TI.

Vamos criar mais um grupo!

Clique em: Grupos > Criar novo grupo

Nome do grupo: Administração
Descrição: Administração.

Clique em "Criar grupo".

Pronto, o segundo grupo está criado.

Agora vamos criar mais um usuário.

Clique em: Usuário > Criar novo usuário.
Nome de usuário: marcos.silva
Nome: Marcos da Silva
Email: marcos.silva@dominio.com.br
Senha: senha.
Confirmar senha: senha
Is Administrator? yes

Clique em criar usuário.

Agora vamos atribuir este usuário a o grupo administração.

Clique em grupos. Aparecerão os grupos TI e Administração que acabamos de criar.
Clique no grupo Administração depois em editar. Agora podemos adicionar o
marcos.silva ao grupo Administração.

Na parte da tela onde está escrito "Membros deste grupo" temos um campo "Adicionar
Usuário(s):", aqui vamos digitar o nome do marcos.silva e clicar em adicionar.

Pronto, agora o usuário marcos.silva faz parte do grupo de Administração.

Agora podemos utilizar o compartilhamento de lista de contatos, um recurso muito útil.

1. Clique em "Grupos"
2. Listar grupos.

Agora aparecerão dois grupos, Administração e TI. Clique em editar no grupo
Administração. Em compartilhamento da lista de contatos selecione a segunda opção:

Ativar o compartilhamento de lista de contatos de grupo.

No campo que apareceu, digite o nome da lista de contatos de grupo, este nome será
visto pelos outros grupos. Ex.: Administração Geral.

Clique no checkbox "Compartilhar grupo com usuários adicionais" e selecione os
grupos que você quer que vejam que o grupo administração está online, ou selecione
a opção todos os usuários e clique em salvar as configurações da lista de contatos.

Agora para o Grupo TI:

Clique em "Grupos". Listar grupos. Aparecerão dois grupos, Administração e TI.

Clique em editar no grupo TI. Em compartilhamento da lista de contatos selecione a
segunda opção. Ativar o compartilhamento de lista de contatos de grupo. No campo
que apareceu, digite o nome da lista de contatos de grupo, digite um nome, este será
visto pelos outros grupos. Ex.: Tecnologia da Informação.

Clique no checkbox "Compartilhar grupo com usuários adicionais" e selecione os
grupos que você quer que vejam que o grupo TI está online, ou selecione a opção
todos os usuários e clique em salvar as configurações da lista de contatos.

Agora quando os usuários conectarem vão aparecer os grupos TI e Administração
com os seus respectivos integrantes.


Configuração dos clientes
Demonstrarei como configurar os clientes Spark e Pidgin.

Podemos obter os clientes pelos seguintes endereços:
   • Spark: http://www.igniterealtime.org/downloads/index.jsp#spark
   • Pidgin: http://www.pidgin.im/


Se utilizar o Spark a configuração será a seguinte:
   • Usuário: jose.silva
   • Senha: senha
   • Servidor: ip_servidoropenfire


Em usuário informe o nome do usuário cadastrado no Openfire. Em senha informe a
senha definida para o usuário. Servidor informe o endereço ip do servidor Openfire, se
seu servidor Openfire estiver local, digite localhost ou 127.0.0.1, se estiver em outra
máquina digite o ip da outra máquina.

Se utilizar o pidgin:
   1. Menu contas/Gerenciar contas
   2. Clique em adicionar
   3. Em protocolo selecione Google talk
   4. Nome de usuário: jose.silva
   5. Domínio: domínio.com.br
   6. Senha: senha
   7. Apelido local: nome que aparece para os outros usuários
   8. Agora clique em avançado.
   9. Em servidor de conexão informe o ip do seu servidor.
   10. E clique em adicionar.


Pronto, estamos com os clientes configurados!

Para alterarmos a senha padrão dos clientes, no cliente Pidgin isso é feito pelo menu
Contas/nomeusuário@dominio.com.br/(XMPP)/alterar senha.

No cliente Spark isso é feito pelo menu Spark/Preferências:
   • A primeira opção Chat
   • Em informações gerais
   • Trocar senha para: novasenha
   • Confirme a senha: novasenha

Suporte a cliente web

Agora que já temos o nosso cliente local, vamos disponibilizar mais uma ferramenta,
um cliente web. Isso pode ser muito útil quando você acaba precisando falar com
alguém da empresa e está fora em uma lan ou na casa de um amigo, onde não tem o
cliente Spark ou o Pidgin.

Podemos disponibilizar o acesso via http ou https.

Vamos baixar e disponibilizar o cliente web.

# cd /var/www
# wget -c http://download.igniterealtime.org/sparkweb/sparkweb_0_9_0.tar.gz
# tar -xzvf sparkweb.tar.gz
# cd sparkweb
# mv SparkWeb.html index.html

Pronto, já temos o cliente.

Podemos acessar ele pelo endereço local:

http://127.0.0.1/sparkweb

Ou remoto:

http://ip_servidor/sparkweb

Insira o seu usuário em "User name", o servidor em "Server" e a senha em
"Password".

Pronto!


Geração de logs de acesso

Podemos configurar o Openfire para gerar logs das conversas. Você pode ver todas
as conversas que precisar depois de instalarmos e habilitarmos um plugin.

Vamos baixar o plugin:

# cd /var/lib/openfire/plugins
# wget -c
http://maven.reucon.com/public/com/reucon/openfire/plugins/archive/1.0.5/archive-
1.0.5.jar
# /etc/init.d/openfire restart

Pronto, já estamos com o plugin, agora temos que habilitar no servidor para gerar os
logs.

Acesse a console de administração do servidor:

http://ip_servidor:9090

Usuário: admin
Senha: senha

Clique em servidor/configuração do servidor.
Clique na opção "Archive Settings".

Clique na segunda opção: Enable - Messages are archived and indexed.

Clique em salvar.

Para consultarmos as conversas:

Clique em servidor/configuração do servidor.
Clique na opção Search archive.
Nesta tela nos temos várias opções de consulta por participantes, por data ou por
palavras-chave.

Selecione o seu tipo de consulta e clique em search.

Abaixo das opções de pesquisa existem duas colunas. A da esquerda é a dos
participantes e a da direita a conversa. Temos controle total das conversas.


Integração do Openfire com o MSN

Agora vamos utilizar mais uma ferramenta para deixar o nosso servidor mais
completo. Vamos instalar um plugin para a integração do Openfire com o MSN.

O cliente que dá suporte a este tipo de integração é o Spark.

No console de administração do Openfire:

1. Clique em plugins.
2. Clique em plugins disponíveis.
3. Procure o plugin "Gateway IM", na última coluna está a opção instalar, clique nela.

Pronto, habilitamos o plugins para a integração do Openfire com o MSN.

Agora clique em servidor/gateways.

Temos várias opções, mas aqui estarei mostrando a integração com o MSN. Clique no
checkbox do MSN Messenger. Aparecerão 3 opções: Testes, Opções e Permissões.

Em "Opções" podemos configurar se vai aparecer notificação de emails, updates de
nicknames, habilitar buddy icons e reconectar se desconectado. As opções ficam a
seu critério.

Em "Permissões" temos as seguintes questões:
  • Todos os usuários podem se registrar;
  • Esse usuário e/ou grupos podem se registrar;
  • Somente registro manual (veja a seção registro para gerenciar).


Se habilitar a primeira opção, todos os usuários poderão habilitar a integração do
cliente Spark ou Pidgin com o MSN.

Em "Esse usuário ou grupo" podemos limitar quem pode se registrar.

Somente registro manual, o administrador do servidor Openfire poderá cadastrar os
usuários que devem ter acesso ao MSN pelo Openfire.

Se utilizar a última opção, em servidor/gateways, do lado esquerdo, terá uma opção
registros. Para registrar os usuários:

1. Clique em adicionar um novo registro.
2. Em usuário (JID) tem que informar o usuário openfire.
3. Em gateway selecionar MSN
4. Em usuário informar o usuário msn.
5. Em senha a senha do msn.
6. Em apelido o apelido que será mostrado para os usuários do MSN.

Se escolher a primeira opção os usuários entrarão com o usuário e senha do MSN
diretamente no seu cliente.

No cliente Spark habilita-se um ícone do MSN em cinza. É só clicar no ícone e
selecionar a primeira opção, informar usuário e senha e pronto!

Nos usuários que forem do MSN vai aparecer o símbolo do MSN do lado direito do
nome.

Acho que agora temos um servidor Openfire completo e com várias ferramentas.

Qualquer dúvida fico a disposição.

Mais conteúdo relacionado

Destaque

El mejor regalo delaney
El mejor regalo  delaneyEl mejor regalo  delaney
El mejor regalo delaneymaridelaney
 
Cinética de lactato de sujeitos hiv após treinamento combinado
Cinética de lactato de sujeitos hiv após treinamento combinadoCinética de lactato de sujeitos hiv após treinamento combinado
Cinética de lactato de sujeitos hiv após treinamento combinadoAdilson Reis Filho
 
Presentacion del viaje a paris.jpg
Presentacion del viaje a paris.jpgPresentacion del viaje a paris.jpg
Presentacion del viaje a paris.jpgsandragrtecno
 
Power point informatica
Power point informaticaPower point informatica
Power point informaticadorisullca
 
Contrato telexfree pt
Contrato telexfree ptContrato telexfree pt
Contrato telexfree ptmaurosimoes
 
Lançamento do UNIFEMM Business School
Lançamento do UNIFEMM Business SchoolLançamento do UNIFEMM Business School
Lançamento do UNIFEMM Business SchoolCarolina da Silva
 

Destaque (7)

El mejor regalo delaney
El mejor regalo  delaneyEl mejor regalo  delaney
El mejor regalo delaney
 
Cinética de lactato de sujeitos hiv após treinamento combinado
Cinética de lactato de sujeitos hiv após treinamento combinadoCinética de lactato de sujeitos hiv após treinamento combinado
Cinética de lactato de sujeitos hiv após treinamento combinado
 
Presentacion del viaje a paris.jpg
Presentacion del viaje a paris.jpgPresentacion del viaje a paris.jpg
Presentacion del viaje a paris.jpg
 
Power point informatica
Power point informaticaPower point informatica
Power point informatica
 
Kamuka nago-kobi
Kamuka nago-kobiKamuka nago-kobi
Kamuka nago-kobi
 
Contrato telexfree pt
Contrato telexfree ptContrato telexfree pt
Contrato telexfree pt
 
Lançamento do UNIFEMM Business School
Lançamento do UNIFEMM Business SchoolLançamento do UNIFEMM Business School
Lançamento do UNIFEMM Business School
 

Semelhante a Introdução ao jabber

Configuração Ethernet Wireless Linux
Configuração Ethernet Wireless LinuxConfiguração Ethernet Wireless Linux
Configuração Ethernet Wireless LinuxSoftD Abreu
 
Tutorial completo montando uma lan house
Tutorial completo montando uma lan houseTutorial completo montando uma lan house
Tutorial completo montando uma lan housejulioblogger
 
Projeto jorge,jefff, matheus
Projeto   jorge,jefff, matheusProjeto   jorge,jefff, matheus
Projeto jorge,jefff, matheusEadanalise
 
Instalação e configuração apache Ubuntu Server
Instalação e configuração apache Ubuntu ServerInstalação e configuração apache Ubuntu Server
Instalação e configuração apache Ubuntu ServerAparicio Junior
 
Slide 01 introdução ao php e ao code igniter
Slide 01   introdução ao php e ao code igniterSlide 01   introdução ao php e ao code igniter
Slide 01 introdução ao php e ao code igniterRaniere de Lima
 
Tutorial de instalacao_configuracao_utilizacao_nessus_scanner
Tutorial de instalacao_configuracao_utilizacao_nessus_scannerTutorial de instalacao_configuracao_utilizacao_nessus_scanner
Tutorial de instalacao_configuracao_utilizacao_nessus_scannerRosan Tavares
 
Sistema operativo de rede
Sistema operativo de redeSistema operativo de rede
Sistema operativo de redeAndré bogas
 
Como Instalar O WordPress
Como Instalar O WordPressComo Instalar O WordPress
Como Instalar O WordPressmauricio souza
 
Configurando aplicações em ambiente RedHat OpenShift através do Eclipse
Configurando aplicações em ambiente RedHat OpenShift através do EclipseConfigurando aplicações em ambiente RedHat OpenShift através do Eclipse
Configurando aplicações em ambiente RedHat OpenShift através do EclipseAlberlan Barros
 
Tutorial instalacão java
Tutorial instalacão javaTutorial instalacão java
Tutorial instalacão javaAparicio Junior
 
Entendendo Juju Charms
Entendendo Juju CharmsEntendendo Juju Charms
Entendendo Juju CharmsDemis Gomes
 
Criando Sites Com CMS
Criando Sites Com CMSCriando Sites Com CMS
Criando Sites Com CMSClaudio Toldo
 
Aprendendo mais sobre redes no nt
Aprendendo mais sobre redes no ntAprendendo mais sobre redes no nt
Aprendendo mais sobre redes no ntwebexpertise
 
Servidor - Criação de Domínios
Servidor - Criação de DomíniosServidor - Criação de Domínios
Servidor - Criação de Domíniosrphasaigg
 
Introdução ao IBM Data Studio
Introdução ao IBM Data StudioIntrodução ao IBM Data Studio
Introdução ao IBM Data StudioDevmedia
 

Semelhante a Introdução ao jabber (20)

Configuração Ethernet Wireless Linux
Configuração Ethernet Wireless LinuxConfiguração Ethernet Wireless Linux
Configuração Ethernet Wireless Linux
 
Tutorial completo montando uma lan house
Tutorial completo montando uma lan houseTutorial completo montando uma lan house
Tutorial completo montando uma lan house
 
Trab linux+sarg
Trab linux+sargTrab linux+sarg
Trab linux+sarg
 
Projeto jorge,jefff, matheus
Projeto   jorge,jefff, matheusProjeto   jorge,jefff, matheus
Projeto jorge,jefff, matheus
 
Instalação e configuração apache Ubuntu Server
Instalação e configuração apache Ubuntu ServerInstalação e configuração apache Ubuntu Server
Instalação e configuração apache Ubuntu Server
 
Slide 01 introdução ao php e ao code igniter
Slide 01   introdução ao php e ao code igniterSlide 01   introdução ao php e ao code igniter
Slide 01 introdução ao php e ao code igniter
 
Tutorial de instalacao_configuracao_utilizacao_nessus_scanner
Tutorial de instalacao_configuracao_utilizacao_nessus_scannerTutorial de instalacao_configuracao_utilizacao_nessus_scanner
Tutorial de instalacao_configuracao_utilizacao_nessus_scanner
 
Tutorial java
Tutorial javaTutorial java
Tutorial java
 
Sistema operativo de rede
Sistema operativo de redeSistema operativo de rede
Sistema operativo de rede
 
Como Instalar O WordPress
Como Instalar O WordPressComo Instalar O WordPress
Como Instalar O WordPress
 
Configurando aplicações em ambiente RedHat OpenShift através do Eclipse
Configurando aplicações em ambiente RedHat OpenShift através do EclipseConfigurando aplicações em ambiente RedHat OpenShift através do Eclipse
Configurando aplicações em ambiente RedHat OpenShift através do Eclipse
 
Tutorial instalacão java
Tutorial instalacão javaTutorial instalacão java
Tutorial instalacão java
 
Entendendo Juju Charms
Entendendo Juju CharmsEntendendo Juju Charms
Entendendo Juju Charms
 
Treinamento DBA Essential
Treinamento DBA EssentialTreinamento DBA Essential
Treinamento DBA Essential
 
Criando Sites Com CMS
Criando Sites Com CMSCriando Sites Com CMS
Criando Sites Com CMS
 
Aprendendo mais sobre redes no nt
Aprendendo mais sobre redes no ntAprendendo mais sobre redes no nt
Aprendendo mais sobre redes no nt
 
Windows server_2016
 Windows server_2016 Windows server_2016
Windows server_2016
 
Servidores linux
Servidores linuxServidores linux
Servidores linux
 
Servidor - Criação de Domínios
Servidor - Criação de DomíniosServidor - Criação de Domínios
Servidor - Criação de Domínios
 
Introdução ao IBM Data Studio
Introdução ao IBM Data StudioIntrodução ao IBM Data Studio
Introdução ao IBM Data Studio
 

Introdução ao jabber

  • 1. Introdução ao Jabber Jabber é um protocolo aberto, com bases XML, para sistemas de mensagens instantâneas. Softwares com base Jabber são distribuídos em milhares de servidores através da internet, e usados por cerca de dez milhões de pessoas em todo mundo, de acordo com a Fundação Jabber Software. Jeremie Miller iniciou o projecto em 1988; a principal versão pública ocorreu em Maio de 2000. O produto principal do projecto é o jabberd, um servidor em que os clientes Jabber se ligam para comunicar. Este servidor pode criar uma rede privada Jabber (por detrás de um firewall, por exemplo) ou pode se juntar à rede Jabber global e pública. Um conceito chave do sistema Jabber são os transportes, também conhecido como gateways, que permite aos utilizadores acederem a redes usando outros protocolos - tais como o AIM, o ICQ (usando o OSCAR), MSN Messenger e Windows Messenger (usando o .NET Messenger Service), SMS ou E-mail. Ao contrário dos clientes de multiprotocolo, como o Trillian ou Gaim, Jabber fornece este acesso no nível de servidor comunicando via serviços especiais de gateway em um computador remoto. Qualquer utilizador Jabber pode se registrar com uma destas gateways fornecendo a informação necessária para aceder a essa rede, e pode então comunicar-se com os utilizadores dessa rede como se fossem utilizadores de Jabber. Isto significa que qualquer cliente que suportar inteiramente o protocolo Jabber pode ser usado para aceder a qualquer rede em que exista uma gateway, sem necessitar de código extra no cliente. As bases do protocolo Jabber, agora administrado pela fundação Jabber Software, foram aceitas pela IETF como padrão sob o nome XMPP, com RFC número 3920. É frequentemente considerado como estando na competição com o SIMPLE, baseado no protocolo do SIP, como protocolo padrão da notificação de presença e de instant messaging; no entanto, o design do XMPP tem por finalidade fornecer uma plataforma de interface mais geral entre aplicações. Instalação do MySQL, Java, Apache e Openfire Instalação do MySQL e configuração da base de dados para o Openfire Precisamos instalar o MySQL Server para podermos preparar uma base de dados para o nosso Openfire. Vamos instalar o mysql server: # aptitude install mysql-server Após a instalação aparecerá uma tela de wizard para a definição da senha do root da base de dados. Defina uma senha e confirme-a. Agora vamos acessar o banco de dados e criar a nossa base. # mysql -u root -p
  • 2. Digite a senha que foi definida na instalação do MySQL. Agora que já estamos no MySQL, digite os seguintes comandos: mysql> CREATE DATABASE openfire; mysql> GRANT ALL PRIVILEGES ON openfire.* TO openfire@localhost IDENTIFIED BY ´senha´; mysql> QUIT; Explicando: • Na primeira linha estamos criando um banco de dados com o nome "openfire", que será utilizado pelo servidor Openfire. • Na segunda linha estamos dando para o usuário "openfire" todos os privilégios neste banco de dados e estamos definindo para ele uma senha denominada "senha". • Na terceira linha estamos saindo do banco de dados. Pronto, agora já temos a nossa base de dados onde ficaram armazenados todos os dados pertinentes ao nosso servidor Openfire. Instalação do Java e do Apache Como o Openfire trabalha em cima de Java, temos que instalá-lo. Nos repositórios do Debian já temos o Java, precisamos somente instalá-lo. # aptitude install sun-java6-jre Pronto, com isso o Java já será instalado e suas dependências. Como pretendemos colocar para trabalhar um cliente web e a administração do servidor Openfire é web, vamos instalar o Apache: # aptitude install apache2 Pronto, temos a nossa base web para trabalharmos. Instalação do Openfire No repositório do Debian temos o Openfire, podemos instalá-lo com o seguinte comando: # aptitude install openfire Porém vou utilizar a última versão. Vamos baixar a última versão pertinente a hoje do site. # cd /tmp # wget -c http://download.igniterealtime.org/openfire/openfire_3.6.4_all.deb Ou seja, o openfire_3.6.4_all.deb. Vamos instalar:
  • 3. # dpkg -i openfire_3.6.4_all.deb Pronto, já estamos com o Openfire e o Java instalados com o MySQL instalado e configurado. Agora podemos ir para a parte de administração do nosso servidor. Configuração do servidor Openfire Agora vamos configurar o Openfire. Acesse pelo navegador: http://ip_servidor:9090 Se o seu servidor for local pode utilizar o seguinte endereço. http://127.0.0.1:9090 Aparecerá uma tela de boas vindas perguntando o idioma, selecione o que você achar mais conveniente e clique em continuar. Nesta tela vamos começar a configuração do servidor, informe um domínio e as portas para administração do servidor, uma porta para trabalhar via HTTP e uma para trabalhar via HTTPS. Ex.: • Informe um domínio: domínio.com.br • Porta do console admin: 9090 • Porta segura do console admin: 9091 Depois de definir o domínio e as portas, clique em continuar. Nesta tela podemos definir o tipo de banco de dados, como pretendemos configurar o Openfire com o MySQL, utilizaremos a primeira opção: conexão padrão do banco de dados. Clique em continuar. Nesta tela, na opção "Predefinições do driver de banco de dados", utilizaremos a opção MySQL. A segunda classe do driver JDBC podemos manter a padrão: com.mysql.jdbc.Driver Na terceira opção, URL do banco de dados, utilizaremos o local onde está a nossa base de dados MySQL. Se você está utilizando o Openfire e o MySQL na mesma máquina, pode definir da seguinte maneira: Jdbc:mysql://localhost:3306/openfire Se estiver em outra máquina faça o seguinte: Jdbc:mysql://ip_outramaquina:3306/openfire
  • 4. Onde ip_outramaquina é o ip da máquina onde está a sua base MySQL. Nome do usuário fica como definimos na base de dados mysql: openfire Senha: a que você definiu para o usuário na opção IDENTIFIED BY no MySQL. Minimum Connections: fica por sua conta. Maximum Connections: fica por sua conta. Tempo de expiração da conexão: 1.0 Daí clique em continuar. Se for preenchido tudo corretamente, passaremos para a próxima pagina, a de configuração de perfis. Podemos utilizar a primeira opção e clicar em continuar. Agora vamos definir o endereço de email do admin e a senha. Ex.: • Endereço de email do admin: admin@dominio.com.br • Nova senha: senha • Confirme a senha: senha Sempre utilize senhas fortes com caracteres maiúsculos e minúsculos, caracteres especiais para deixar a sua senha mais difícil de ser descoberta. Após definir a senha, clique em continuar e pode se logar no console de administração. Logue com o usuário admin e a senha que você definiu. Criação de usuários e grupos e configuração do compartilhamento de lista de contatos Vamos criar um grupo. O padrão é você criar grupos e atribuir aos grupos os usuários. Então vamos criar um grupo chamado TI: 1. Clique em "Grupos". 2. Clique em "Criar Novo Grupo". 3. Defina um "Nome do Grupo". Ex.: • Nome do Grupo: TI • Descrição: Departamento de Tecnologia Clique em "Criar".
  • 5. Pronto, o primeiro grupo está criado. Agora vamos criar um usuário. 1. Clique em "Usuário". 2. Criar Novo usuário. O nome de usuário é o nome que será utilizado pelo cliente. Pode ser utilizada nomenclatura como nome+sobrenome. Ex.: • Nome de usuário: jose.silva • Nome: José da Silva • Email: jose.silva@dominio.com.br • Senha: senha • Confirmar senha: senha • Is Administrator? Nesta opção você define se o usuário é administrador ou não do seu servidor. Clique em criar Usuário. Na senha defina uma senha padrão para o primeiro acesso e peça para que os usuários a troquem no primeiro logon. Pronto, agora temos um usuário e um grupo. Agora vamos atribuir este usuário a um grupo. Clique em "Grupos". Aparecerá o grupo TI e que acabamos de criar. Clique em "Editar". Agora podemos adicionar o jose.silva ao grupo TI. Na parte da tela, onde está escrito "Membros deste grupo", temos um campo "Adicionar Usuário(s):", aqui vamos digitar o nome do jose.silva e clicaremos em adicionar. Pronto, agora o usuário jose.silva faz parte do grupo de TI. Vamos criar mais um grupo! Clique em: Grupos > Criar novo grupo Nome do grupo: Administração Descrição: Administração. Clique em "Criar grupo". Pronto, o segundo grupo está criado. Agora vamos criar mais um usuário. Clique em: Usuário > Criar novo usuário.
  • 6. Nome de usuário: marcos.silva Nome: Marcos da Silva Email: marcos.silva@dominio.com.br Senha: senha. Confirmar senha: senha Is Administrator? yes Clique em criar usuário. Agora vamos atribuir este usuário a o grupo administração. Clique em grupos. Aparecerão os grupos TI e Administração que acabamos de criar. Clique no grupo Administração depois em editar. Agora podemos adicionar o marcos.silva ao grupo Administração. Na parte da tela onde está escrito "Membros deste grupo" temos um campo "Adicionar Usuário(s):", aqui vamos digitar o nome do marcos.silva e clicar em adicionar. Pronto, agora o usuário marcos.silva faz parte do grupo de Administração. Agora podemos utilizar o compartilhamento de lista de contatos, um recurso muito útil. 1. Clique em "Grupos" 2. Listar grupos. Agora aparecerão dois grupos, Administração e TI. Clique em editar no grupo Administração. Em compartilhamento da lista de contatos selecione a segunda opção: Ativar o compartilhamento de lista de contatos de grupo. No campo que apareceu, digite o nome da lista de contatos de grupo, este nome será visto pelos outros grupos. Ex.: Administração Geral. Clique no checkbox "Compartilhar grupo com usuários adicionais" e selecione os grupos que você quer que vejam que o grupo administração está online, ou selecione a opção todos os usuários e clique em salvar as configurações da lista de contatos. Agora para o Grupo TI: Clique em "Grupos". Listar grupos. Aparecerão dois grupos, Administração e TI. Clique em editar no grupo TI. Em compartilhamento da lista de contatos selecione a segunda opção. Ativar o compartilhamento de lista de contatos de grupo. No campo que apareceu, digite o nome da lista de contatos de grupo, digite um nome, este será visto pelos outros grupos. Ex.: Tecnologia da Informação. Clique no checkbox "Compartilhar grupo com usuários adicionais" e selecione os grupos que você quer que vejam que o grupo TI está online, ou selecione a opção todos os usuários e clique em salvar as configurações da lista de contatos. Agora quando os usuários conectarem vão aparecer os grupos TI e Administração com os seus respectivos integrantes. Configuração dos clientes
  • 7. Demonstrarei como configurar os clientes Spark e Pidgin. Podemos obter os clientes pelos seguintes endereços: • Spark: http://www.igniterealtime.org/downloads/index.jsp#spark • Pidgin: http://www.pidgin.im/ Se utilizar o Spark a configuração será a seguinte: • Usuário: jose.silva • Senha: senha • Servidor: ip_servidoropenfire Em usuário informe o nome do usuário cadastrado no Openfire. Em senha informe a senha definida para o usuário. Servidor informe o endereço ip do servidor Openfire, se seu servidor Openfire estiver local, digite localhost ou 127.0.0.1, se estiver em outra máquina digite o ip da outra máquina. Se utilizar o pidgin: 1. Menu contas/Gerenciar contas 2. Clique em adicionar 3. Em protocolo selecione Google talk 4. Nome de usuário: jose.silva 5. Domínio: domínio.com.br 6. Senha: senha 7. Apelido local: nome que aparece para os outros usuários 8. Agora clique em avançado. 9. Em servidor de conexão informe o ip do seu servidor. 10. E clique em adicionar. Pronto, estamos com os clientes configurados! Para alterarmos a senha padrão dos clientes, no cliente Pidgin isso é feito pelo menu Contas/nomeusuário@dominio.com.br/(XMPP)/alterar senha. No cliente Spark isso é feito pelo menu Spark/Preferências: • A primeira opção Chat • Em informações gerais • Trocar senha para: novasenha • Confirme a senha: novasenha Suporte a cliente web Agora que já temos o nosso cliente local, vamos disponibilizar mais uma ferramenta, um cliente web. Isso pode ser muito útil quando você acaba precisando falar com alguém da empresa e está fora em uma lan ou na casa de um amigo, onde não tem o cliente Spark ou o Pidgin. Podemos disponibilizar o acesso via http ou https. Vamos baixar e disponibilizar o cliente web. # cd /var/www
  • 8. # wget -c http://download.igniterealtime.org/sparkweb/sparkweb_0_9_0.tar.gz # tar -xzvf sparkweb.tar.gz # cd sparkweb # mv SparkWeb.html index.html Pronto, já temos o cliente. Podemos acessar ele pelo endereço local: http://127.0.0.1/sparkweb Ou remoto: http://ip_servidor/sparkweb Insira o seu usuário em "User name", o servidor em "Server" e a senha em "Password". Pronto! Geração de logs de acesso Podemos configurar o Openfire para gerar logs das conversas. Você pode ver todas as conversas que precisar depois de instalarmos e habilitarmos um plugin. Vamos baixar o plugin: # cd /var/lib/openfire/plugins # wget -c http://maven.reucon.com/public/com/reucon/openfire/plugins/archive/1.0.5/archive- 1.0.5.jar # /etc/init.d/openfire restart Pronto, já estamos com o plugin, agora temos que habilitar no servidor para gerar os logs. Acesse a console de administração do servidor: http://ip_servidor:9090 Usuário: admin Senha: senha Clique em servidor/configuração do servidor. Clique na opção "Archive Settings". Clique na segunda opção: Enable - Messages are archived and indexed. Clique em salvar. Para consultarmos as conversas: Clique em servidor/configuração do servidor. Clique na opção Search archive.
  • 9. Nesta tela nos temos várias opções de consulta por participantes, por data ou por palavras-chave. Selecione o seu tipo de consulta e clique em search. Abaixo das opções de pesquisa existem duas colunas. A da esquerda é a dos participantes e a da direita a conversa. Temos controle total das conversas. Integração do Openfire com o MSN Agora vamos utilizar mais uma ferramenta para deixar o nosso servidor mais completo. Vamos instalar um plugin para a integração do Openfire com o MSN. O cliente que dá suporte a este tipo de integração é o Spark. No console de administração do Openfire: 1. Clique em plugins. 2. Clique em plugins disponíveis. 3. Procure o plugin "Gateway IM", na última coluna está a opção instalar, clique nela. Pronto, habilitamos o plugins para a integração do Openfire com o MSN. Agora clique em servidor/gateways. Temos várias opções, mas aqui estarei mostrando a integração com o MSN. Clique no checkbox do MSN Messenger. Aparecerão 3 opções: Testes, Opções e Permissões. Em "Opções" podemos configurar se vai aparecer notificação de emails, updates de nicknames, habilitar buddy icons e reconectar se desconectado. As opções ficam a seu critério. Em "Permissões" temos as seguintes questões: • Todos os usuários podem se registrar; • Esse usuário e/ou grupos podem se registrar; • Somente registro manual (veja a seção registro para gerenciar). Se habilitar a primeira opção, todos os usuários poderão habilitar a integração do cliente Spark ou Pidgin com o MSN. Em "Esse usuário ou grupo" podemos limitar quem pode se registrar. Somente registro manual, o administrador do servidor Openfire poderá cadastrar os usuários que devem ter acesso ao MSN pelo Openfire. Se utilizar a última opção, em servidor/gateways, do lado esquerdo, terá uma opção registros. Para registrar os usuários: 1. Clique em adicionar um novo registro. 2. Em usuário (JID) tem que informar o usuário openfire. 3. Em gateway selecionar MSN
  • 10. 4. Em usuário informar o usuário msn. 5. Em senha a senha do msn. 6. Em apelido o apelido que será mostrado para os usuários do MSN. Se escolher a primeira opção os usuários entrarão com o usuário e senha do MSN diretamente no seu cliente. No cliente Spark habilita-se um ícone do MSN em cinza. É só clicar no ícone e selecionar a primeira opção, informar usuário e senha e pronto! Nos usuários que forem do MSN vai aparecer o símbolo do MSN do lado direito do nome. Acho que agora temos um servidor Openfire completo e com várias ferramentas. Qualquer dúvida fico a disposição.