Differences

This shows you the differences between two versions of the page.

Link to this comparison view

instalacao_e_configuracao_do_openfire_com_mysql_no_debian_squeeze_pt_br [2019/08/08 15:23] (current)
Line 1: Line 1:
 +====== Servidor Jabber com Openfire + MySQL + Debian Squeeze ​ ======
 +
 +
 +Instalação e configuração de um servidor Jabber com Openfire e MySQL. Integração do Openfire com o MySQL, dois clientes locais e um cliente web, integração do Openfire com o cliente MSN, como efetuar a configuração dos clientes Spark e Pidgin. ​
 +
 +
 +**Definição do Jabber pelo Wikipédia:​**
 +
 +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. ​
 +
 +Fonte: http://​pt.wikipedia.org/​wiki/​Jabber
 +
 +Prepare o seu sistema com o seguinte script http://​wiki.douglasqsantos.com.br/​doku.php/​confinicialsqueeze_en para que não falte nenhum pacote ou configuração.
 +
 +
 +Precisamos instalar o MySQL Server para podermos preparar uma base de dados para o nosso Openfire. ​
 +
 +**Vamos instalar o mysql server **
 +<sxh bash>
 +
 +aptitude update && aptitude dist-upgrade -y && aptitude install mysql-server -y
 +</​sxh>​
 +
 +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.
 +
 +<sxh sql>
 +mysql -u root -p
 +mysql> CREATE DATABASE openfire;
 +mysql> GRANT ALL PRIVILEGES ON openfire.* TO openfire@localhost IDENTIFIED BY '​senha';​
 +mysql> QUIT;
 +</​sxh>​
 +
 +
 +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.
 +  - 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. ​
 +
 +<sxh bash>
 +
 +aptitude install sun-java6-jre libmysql-java libapache2-mod-auth-mysql -y
 +</​sxh>​
 +
 +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: ​
 +
 +<sxh bash>
 +
 +aptitude install apache2 -y
 +</​sxh>​
 +
 +Pronto, temos a nossa base web para trabalharmos. ​
 +
 +====== Instalação do Openfire ======
 +
 +
 +
 +Porém vou utilizar a última versão na Data 04/08/2012
 +
 +Vamos baixar a última versão pertinente a hoje do site. 
 +
 +<sxh bash>
 +
 +wget -c http://​wiki.douglasqsantos.com.br/​Downloads/​jabber/​openfire_3.7.1_all.deb
 +</​sxh>​
 +
 +Vamos instalar: ​
 +
 +<sxh bash>
 +
 +dpkg -i openfire_3.7.1_all.deb
 +</​sxh>​
 +
 +Acertando as permissões
 +<sxh bash>
 +
 +chown -R openfire:​openfire /​var/​lib/​openfire
 +</​sxh>​
 +
 +
 +Agora vamos reiniciar o servidor
 +<sxh bash>
 +
 +reboot
 +</​sxh>​
 +
 +Agora vamos testar a porta, para confirmar que ela esta escutando
 +<sxh bash>
 +
 +nmap -sS localhost -T4
 +
 +Starting Nmap 5.00 ( http://​nmap.org ) at 2011-10-10 10:09 BRT
 +Interesting ports on localhost (127.0.0.1):​
 +Not shown: 994 closed ports
 +PORT     STATE SERVICE
 +22/​tcp ​  ​open ​ ssh
 +25/​tcp ​  ​open ​ smtp
 +80/​tcp ​  ​open ​ http
 +111/​tcp ​ open  rpcbind
 +3306/tcp open  mysql
 +9090/tcp open  zeus-admin
 +
 +Nmap done: 1 IP address (1 host up) scanned in 0.35 seconds
 +</​sxh>​
 +
 +Pronto, já estamos com o Openfire e o Java instalados com o MySQL instalado e configurado.
 +
 +====== Agora vamos configurar o Openfire. ======
 +
 +
 +Acesse pelo navegador http://​ip_servidor:​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.
 +  - Informe um domínio: douglasqsantos.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.
 +  - Classe do driver JDBC podemos manter a padrão: com.mysql.jdbc.Driver
 +  - URL do banco de dados, utilizaremos o local onde está a nossa base de dados MySQL. Aqui temos que definir a maquina que esta o banco no nosso caso localhost e o nome da base que vai ser openfire.
 +  - 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 no exemplo foi definido senha.
 +  - Minimum Connections:​ fica por sua conta.
 +  - Maximum Connections:​ fica por sua conta.
 +  - Tempo de expiração da conexão: 1.0 
 +  - Selecione 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 selecione Continuar.
 +  - Agora vamos definir o endereço de email do admin e a 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: 
 +
 +  - Clique em Grupos.
 +  - Clique em Criar Novo Grupo.
 +  - Defina um Nome do Grupo.
 +  - Clique em Criar.
 +
 +**Ex.:**
 +
 +  - Nome do Grupo: TI
 +  - Descrição:​ Departamento de Tecnologia ​
 +
 +Pronto, o primeiro grupo está criado. ​
 +
 +Agora vamos criar um usuário.
 +
 +  - Clique em Usuário
 +  - 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
 +  - Selecione 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. ​
 +
 +  - Selecione: Usuário > Criar novo usuário.
 +  - Nome de usuário: marcos.silva
 +  - Nome: Marcos da Silva
 +  - Email: marcos.silva@douglasqsantos.com.br
 +  - Senha: senha.
 +  - Confirmar senha: senha
 +  - Is Administrator?​ yes
 +  - Selecione criar usuário.
 +
 +
 +Agora vamos atribuir este usuário a o grupo administração. ​
 +
 +
 +  - Selecione Grupos.
 +  - Aparecerão os grupos TI e Administração que acabamos de criar.
 +  - Selecione o grupo Administração ​
 +  - Agora selecione 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
 +  - Selecione 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. ​
 +
 +  - Clique em Grupos
 +  - Listar grupos.
 +  - Agora aparecerão dois grupos, Administração e TI.
 +  - Selecione 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.
 +  - Selecione o checkbox Compartilhar grupo com usuários adicionais
 +  - Agora selecione os grupos que você quer que vejam que o grupo administração está online, ou selecione a opção todos os usuários.
 +  - Selecione salvar as configurações da lista de contatos.
 +
 +
 +Agora para o Grupo TI: 
 +
 +  - Selecione em Grupos.
 +  - Listar grupos.
 +  - Aparecerão dois grupos, Administração e TI.
 +  - Selecione 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.
 +  - Selecione o 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
 +  - Selecione 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: ​
 +
 +  - 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:
 +
 +  - Menu contas/​Gerenciar contas
 +  - Clique em adicionar
 +  - Em protocolo selecione XMPP
 +  - Nome de usuário: jose.silva
 +  - Domínio: douglasqsantos.com.br
 +  - Senha: senha
 +  - Apelido local: nome que aparece para os outros usuários
 +  - Agora selecione avançado.
 +  - Em servidor de conexão informe o ip do seu servidor.
 +  - Selecione 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 https.
 +
 +Vamos obter e disponibilizar o cliente web.
 +
 +<sxh bash>
 +
 +cd /tmp
 +wget -c http://​wiki.douglasqsantos.com.br/​Downloads/​jabber/​sparkweb.tar.gz
 +tar -xzvf sparkweb.tar.gz -C /var/www/
 +cd /​var/​www/​sparkweb
 +cp SparkWeb.html index.html
 +</​sxh>​
 +
 +Pronto, já temos o cliente.
 +
 +====== Agora vamos acertar os Virtuals Host para os nossos serviços trabalharem com https ======
 +
 +
 +Vamos gerar a key para o https
 +
 +Preparando o diretório que vai armazenar os certificados
 +<sxh bash>
 +
 +mkdir -p /​etc/​ssl/​apache
 +cd /​etc/​ssl/​apache
 +</​sxh>​
 +
 +Gerando a key
 +<sxh bash>
 +
 +openssl genrsa -des3 -out server.key 1024
 +Generating RSA private key, 1024 bit long modulus
 +....................++++++
 +...........++++++
 +e is 65537 (0x10001)
 +Enter pass phrase for server.key: senha
 +Verifying - Enter pass phrase for server.key: senha
 +</​sxh>​
 +
 +Vamos gerar agora a requisição de assinatura para o certificado
 +<sxh bash>
 +
 +openssl req -new -key server.key -out server.csr
 +Enter pass phrase for server.key: senha
 +You are about to be asked to enter information that will be incorporated
 +into your certificate request.
 +What you are about to enter is what is called a Distinguished Name or a DN.
 +There are quite a few fields but you can leave some blank
 +For some fields there will be a default value,
 +If you enter '​.',​ the field will be left blank.
 +-----
 +Country Name (2 letter code) [AU]:BR
 +State or Province Name (full name) [Some-State]:​Parana
 +Locality Name (eg, city) []:Curitiba
 +Organization Name (eg, company) [Internet Widgits Pty Ltd]:​Douglas
 +Organizational Unit Name (eg, section) []:Douglas
 +Common Name (eg, YOUR name) []:​sparkweb.douglasqsantos.com.br
 +Email Address []:​douglas.q.santos@gmail.com
 +
 +Please enter the following '​extra'​ attributes
 +to be sent with your certificate request
 +A challenge password []:
 +An optional company name []:Douglas
 +</​sxh>​
 +
 +Agora vamos auto assinar o nosso certificado
 +<sxh bash>
 +
 +openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt
 +Signature ok
 +subject=/​C=BR/​ST=Parana/​L=Curitiba/​O=Douglas/​OU=Douglas/​CN=sparkweb.douglasqsantos.com.br/​emailAddress=douglas.q.santos@gmail.com
 +Getting Private key
 +Enter pass phrase for server.key: senha
 +</​sxh>​
 +
 +Agora vamos acertar as permissões das chaves
 +<sxh bash>
 +
 +chmod 0400 server.*
 +cp server.key server.key.orig
 +</​sxh>​
 +
 +Agora vamos tirar a senha do certificado assinado para que o apache não fique pedindo senha a cada vez que for inicializar
 +<sxh bash>
 +
 +openssl rsa -in server.key.orig -out server.key
 +Enter pass phrase for server.key.orig:​ senha
 +writing RSA key
 +</​sxh>​
 +
 +Vamos acertar as permissões de todas as chaves ​
 +<sxh bash>
 +
 +chmod 0400 /​etc/​ssl/​apache/​* ​
 +</​sxh>​
 +
 +Vamos agora configurar o host virtual com o acesso via https para o nosso sparkweb.
 +
 +OBS:. Não esqueça de inserir uma entrada no servidor DNS para resolver o seu endereço http://​sparkweb.douglasqsantos.com.br para o ip do servidor. ​
 +
 +Você também pode testar editando o arquivo /etc/hosts do cliente que vai acessar da seguinte formar
 +<sxh bash>
 +
 +vim /etc/hosts
 +[...]
 +ip_servidor ​ sparkweb.douglasqsantos.com.br sparkweb
 +</​sxh>​
 +
 +
 +Quando o cliente for acessar esse endereço vai ser resolvido diretamente para o ip do servidor e o apache vai receber a solicitação do mailadmin.douglasqsantos.com.br ​
 +
 +Aqui estamos redirecionando qualquer acesso ao site via http para https para forçar o cliente utilizar criptografia na conexão
 +
 +<sxh apache>
 +
 +vim /​etc/​apache2/​sites-available/​sparkweb
 +<​VirtualHost *:​80> ​
 +  ServerName sparkweb.douglasqsantos.com.br
 +  Redirect / https://​sparkweb.douglasqsantos.com.br/ ​
 +</​VirtualHost> ​
 + 
 +<​VirtualHost *:​443> ​
 +        ServerAdmin webmaster@douglasqsantos.com.br ​
 +        ServerName sparkweb.douglasqsantos.com.br
 +  DocumentRoot "/​var/​www/​sparkweb"​
 +   <​Directory "/​var/​www/​sparkweb">​
 +     ​Options -Indexes FollowSymLinks MultiViews
 +     ​AllowOverride All
 +     Order Allow,deny
 +     Allow From All
 +   </​Directory> ​   ​
 +        CustomLog /​var/​log/​apache2/​sparkweb.access.log combined ​
 +        ErrorLog /​var/​log/​apache2/​sparkweb.error.log ​
 +        LogLevel warn 
 +  SSLEngine on
 +  SSLCipherSuite ALL:​!ADH:​!EXPORT56:​RC4+RSA:​+HIGH:​+MEDIUM:​+LOW:​+SSLv2:​+EXP:​+eNULL
 +  SSLCertificateFile "/​etc/​ssl/​apache/​server.crt"​
 +  SSLCertificateKeyFile "/​etc/​ssl/​apache/​server.key"​
 +        <​FilesMatch "​\.(cgi|shtml|phtml|php)$">​
 +     ​SSLOptions +StdEnvVars
 +  </​FilesMatch>​
 +     ​BrowserMatch "​.*MSIE.*"​ \
 +     ​nokeepalive ssl-unclean-shutdown \
 +     ​downgrade-1.0 force-response-1.0
 +  ServerSignature Off
 +</​VirtualHost>​
 +</​sxh>​
 +
 +Configurando a porta que o nosso host Virtual vai estar escutando.
 +<sxh apache>
 +
 +vim /​etc/​apache2/​ports.conf
 +[...]
 +NameVirtualHost *:443
 +</​sxh>​
 +
 +Vamos carregar o módulo ssl para o apache.
 +<sxh bash>
 +
 +a2enmod ssl
 +</​sxh>​
 +
 +Vamos acertar as permissões do diretório
 +<sxh bash>
 +
 +chown -R www-data:​www-data /​var/​www/​sparkweb/​
 +</​sxh>​
 +
 +Vamos carregar o nosso host Virtual
 +<sxh bash>
 +
 +a2ensite sparkweb
 +</​sxh>​
 +
 +Agora vamos habilitar ele com o seguinte comando. ​
 +<sxh bash>
 +
 +/​etc/​init.d/​apache2 reload
 +</​sxh>​
 +
 +Vamos fazer um acerto no arquivo de configuração do sparkweb vamos deixar o server como sparkweb.douglasqsantos.com.br
 +<sxh xml>
 +vim /​var/​www/​sparkweb/​index.html
 +[...]
 +<script type="​text/​javascript">​
 +function jive_sparkweb_getConfig()
 +{
 +        return {
 +                server: "​sparkweb.douglasqsantos.com.br",​
 +                connectionType:​ "​socket",​
 +                port: "​5222",​
 +                autoLogin: "​false"​
 +        };
 +}
 +</​script>​
 +</​sxh>​
 +
 +Agora podemos acessar ele pelo endereço http://​sparkweb.douglasqsantos.com.br ​
 +
 +Podemos acessar ele pelo endereço local: ​
 +
 +  - http://​sparkweb.douglasqsantos.com.br
 +  - http://​ip_servidor/​sparkweb
 +
 +
 +
 +Insira o seu usuário em **User name**, o servidor em **Server** e a senha em **Password**. ​
 +
 +
 +====== Gerenciamento de Logs ======
 +
 +
 +Habilite o seguinte plugin no seu servidor Openfire: Monitoring Service ​
 +
 +Após isso selecione a opção servidor no seu openfire/​Arquivamento. ​
 +
 +E fique a vontade para configurar os seus logs. fácil fácil. ​
 +
 +**OBS: Caso utilize o monitoramento consulte o seu setor juridico pois todos os usuários tem que estar sabendo que estão sendo monitorados e eles tem que assinar um termo sobre isso.**
 +
 +====== Habilitando o plugin para o integrar o openfire com o MSN ======
 +
 +
 +Vamos obter o plugin do msn 
 +<sxh bash>
 +
 +cd /tmp && wget -c http://​wiki.douglasqsantos.com.br/​Downloads/​jabber/​gateway.tar.gz
 +</​sxh>​
 +
 +Agora vamos descompactar ele em /​var/​lib/​openfire/​plugins/​. ​
 +<sxh bash>
 +
 +tar -xzvf gateway.tar.gz -C /​var/​lib/​openfire/​plugins/​
 +</​sxh>​
 +
 +Agora temos que habilitar ele no nosso servidor openfire. ​
 +
 +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: ​
 +
 +  - Selecione plugins.
 +  - Selecione plugins disponíveis.
 +  - Procure o plugin "​Gateway IM", na última coluna está a opção instalar, selecione ela.
 +
 +
 +
 +Pronto, habilitamos o plugins para a integração do Openfire com o MSN. 
 +
 +  - Agora selecione em servidor/​gateways.
 +  - Temos várias opções, mas aqui estarei mostrando a integração com o MSN.
 +  - Selecione o 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:
 +  - Selecione adicionar um novo registro.
 +  - Em usuário (JID) tem que informar o usuário openfire.
 +  - Em gateway selecionar MSN
 +  - Em usuário informar o usuário msn.
 +  - Em senha a senha do msn.
 +  - 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. ​
 +
 +Caso precise alterar a quantidade de memoria para o java faça da seguinte forma
 +<sxh bash>
 +
 +vim /​etc/​default/​openfire
 +DAEMON_OPTS="​-Xmx1024m"​
 +</​sxh>​
 +
 +Aqui o Xmx1024m é a quantidade de memoria utilizada pelo java aqui estou setando 1GB 
 +
 +** Outro plugin que pode ser utilizado para a configuração do MSN com o openfire pode ser obtido em [[http://​wiki.douglasqsantos.com.br/​Downloads/​jabber/​kraken.jar | Kraken]] **
 +
 +====== Referências ======
 +
 +  - http://​www.igniterealtime.org/​projects/​openfire/​
 +  - http://​www.igniterealtime.org/​projects/​openfire/​documentation.jsp