Configuração Jabber-2-Jabber (s2s)

Publicado por Hudson Martins em 14/04/2008

[ Hits: 7.564 ]

 


Configuração Jabber-2-Jabber (s2s)



Configurar s2s Jabberd14-1.6.0

Antes de tudo, gostaria de cumprimentar a todos e compartilhar mais um pouco de experiências adquiridas dentro desse mundo (Linux).

Recentemente, estava precisando e ao mesmo tempo estava tendo algumas dificuldades conectar dois servidores Jabber. Procurei na internet todo tipo de dica, mas descobri que não havia muita documentação sobre o assunto.

Encontrei algumas dicas isoladas, mas nada com explicações mais detalhada. Então, resolvi juntar um pouco dessas dicas e me aprofundar ainda mais no estudo do servidor Jabber.

Logo, partindo do princípio que o serviço já está instalado, configurado e rodando, vamos nos prender apenas a configuração da sessão de conexão entre os serviços Jabber.

Uma dica que achei muito interessante é por o serviço "s2s" inserido em um arquivo fora do arquivo principal e que possa rodar como um serviço externo, possibilitando, assim, a configuração e manutenção sem a necessidade de derrubar o serviço principal e, não havendo a preocupação em ter que desconectar os usuários do servidor. Acesse este link para ver esta dica:
Voltando então ao nosso assunto, temos a seguinte situação:



Vamos pôr, então, a mão na massa agora.

Observação: Os dois servidores possuem IP fixo e válido na internet.

Bem, primeiro vamos pôr o IP e o domínio do Jabber 01 no hosts do segundo servidor. Para isto, iremos inserir a seguinte linha:

<ip jabber 01>         servjabber1         servjabber1.com

O mesmo no segundo servidor, sendo:

<ip jabber 02>         servjabber2        servjabber2.com

Iremos configurar agora o arquivo jabber.xml de ambos servidores. Uma outra observação é que a conexão entre esses servidor ficarão fechadas. Este configuração é uma ótima opção para quem deseja interligar servidores das filiais de sua empresa, servidores de comunidades ou escolas. Desta forma podemos deixar separado o serviço e o banco de dados e não teremos o problema de cair a conexão com internet e uma determinada filial ou comunidade ficar sem a comunicação interna também.

Bem, no arquivo jabber.xml do primeiro servidor jabber, localize a sessão que trata da conexão entre os servidores (server-to-server).

Nesta sessão, no primeiro servidor, teremos algo do tipo:

<service id="dnsrv.servjabber1.com">
    <host/>
    <load>
       <dnsrv>/usr/local/lib/libjabberddnsrv.so<dnsrv>
    </load>
    <dnsrv xmlns="jabber:config:dnsrv">
       <resend service="_xmpp-server._tcp">s2s.servjabber1.com</resend>
       <resend service="_jabber._tcp">s2s.servjabber1.com</resend>
       <resend>s2s.servjabber1.com</resend>
    </dnsrv>
</service>

No segundo servidor teremos:

<service id="dnsrv.servjabber1.com">
    <host/>
    <load>
       <dnsrv>/usr/local/lib/libjabberddnsrv.so</dnsrv>
    </load>
    <dnsrv xmlns="jabber:config:dnsrv">
       <resend service="_xmpp-server._tcp">s2s.servjabber2.com</resend>
       <resend service="_jabber._tcp">s2s.servjabber2.com</resend>
       <resend>s2s.servjabber2.com</resend>
    </dnsrv>
</service>

Na sessão "service" do s2s teremos a seguinte configuração. No primeiro servidor:



<service id="s2s.servjabber1.com">
    <load>
       <dialback>/usr/local/lib/libjabberddialback.so</dialback>
    </load>
    <dialback xmlns="jabber:config:dialback">
       <host name='servjabber2.com' xmpp='yes' tls='yes' auth='db'/>
       <ip port="5269">ip da placa de rede local</ip>
       <karma>
          <init>50</init>
          <max>50</max>
          <inc>4</inc>
          <dec>1</dec>
          <penalty>-5</penalty>
          <restore>50</restore>
       </karma>
    </dialback>
</service>

No segundo servidor:

<service id="s2s.servjabber2.com">
    <load>
       <dialback>/usr/local/lib/libjabberddialback.so</dialback>
    </load>
    <dialback xmlns="jabber:config:dialback">
       <host name='servjabber1.com' xmpp='yes' tls='yes' auth='db'/>
       <ip port="5269">ip da placa de rede local</ip>
       <karma>
          <init>50</init>
          <max>50</max>
          <inc>4</inc>
          <dec>1</dec>
          <penalty>-5</penalty>
          <restore>50</restore>
       </karma>
    </dialback>
</service>

Agora basta reiniciar os serviços e começar a inserir os contatos do primeiro servidor no segundo e vice-versa.

Os usuários logados no primeiro servidor irão inserir os contatos da seguinte forma: [email protected]

E os usuários logados no segundo servidor farão da seguinte forma: [email protected]

Espero ter ajudado e viva o Linux. Um grande abraço a todos e até a próxima.

Outras dicas deste autor

Inserir o Fluxbox no menu do GDM

Leitura recomendada

Invertendo botões touchpad no Xubuntu 11.04

Instalando o "Kubuntu" no Ubuntu 10.10

Resolvendo erro ao iniciar o KDE no Slackware 13.37

Desativando placa de vídeo dedicada (GPU) AMD/NVIDIA no Ubuntu/Linux Mint

Resolvendo problemas com HD SATA

  

Comentários
[1] Comentário enviado por agk em 15/04/2008 - 11:55h

Parabéns colega, esse tipo de dica vale mais que muito artigo que tem por aí.



Contribuir com comentário