Integrando Openfire 4.0 com o Active Diretory

Olá turma, neste procedimento, estarei demonstrando como integrar o Openfire 4.0 com o Active Directory. Para isso precisamos já estar com o openfire instalado, apenas será feita a configuração via interface web. Caso não tenha o openfire instalado, pode se utilizar um tutorial nosso para instalação no Ubuntu 14.04.
Pré-requisitos
• Openfire instalado, mais não configurado
• Domínio do Active Directory já configurado.
Neste exemplo estaremos utilizando um domínio com o nome blank.int, configurado no Windows 2012. Openfire 4.0.1 instalado no Ubuntu Server 14.04, onde teremos 3 Empresas em 3 regiões diferentes, Colatina, Aracruz e Linhares e iremos precisar configurar um serviço do openfire para essas 3 empresas, onde teremos 3 grupos com esses nomes e cada grupo terá seus usuários.

1. Preparando o Active Directory.
Primeiro iremos criar um grupo de usuários que terão acesso a aplicação. Ele deve ser do Tipo de Global de Segurança.
Usaremos o padrão G_A_OPENFIRE (GRUPO_ACESSO_OPENFIRE)

Image for post

Iremos incluir todos os grupos usuários que terão acesso ao Serviço do Openfire dentro deste grupo.

Image for post

Agora criaremos um Grupo que irá conter todos os Grupos que irão ficar disponíveis no Openfire. Ele deverá ser do tipo Universal de Segurança.
Nome: G_O_GRUPOS (G_OPENFIRE_GRUPOS)

Image for post

Nesse passo agora, precisaremos criar grupos divididos, onde ficará cada usuário, criaremos os grupos chamados Colatina, Aracruz e Linhares.
Nome: Grupos_Openfire_CIDADE.

Image for post

Inclui todos os grupos criados anteriormente dento de G_O_GRUPOS.

Image for post

Antes de proceguir, inclua os usuários dentro de cada grupo que lhe pertence.E pronto todo o processo necessário dentro do AD está concluído, partiremos agora para o Openfire.

2. Configuração do Openfire
É necessária uma instalação limpa do seu openfire, caso não tenha a instalação, pode-se utilizar o processo que expliquei em uma anteriomente. Pode ser conferido neste link.
No navegador digite http://IP_DO_SEU_SERVIDOR:9090
Selecione o idioma de sua escolha.

Image for post

No campo Domínio, informe o nome hostname ou IP do servidor, os outros dois campos não precisam ser alterados, mais neles são para informar as portas de acesso a página de administração do openfire. Clique em Continuar.

Image for post

Selecione a opção “Conexão Padrão do Banco de Dados” para utilizar um banco de dados externo, nesse exemplo utilizaremos o banco criado no outro tutorial. A segunda opção o Openfire irá utilizar um banco de dados interno, como é informado na opção, é uma forma simples de configuração e rápida, porem a performance pode ser inferior ao de um banco de dados externo.

Image for post

Na próxima janela, Configurações do Banco de Dados — Conexão Padrão, segue a figura abaixo.
Iremos utilizar as mesmas configurações do procedimento utilizado no post anterior.
Atenção para os campos abaixo.
• Predefinições do Driver de Banco de Dados: MySQL
• Classe do Driver JDBC: com.mysql.jdbc.Driver
• URL do banco de dados: jdbc:mysql://127.0.0.1:3306/openfire?rewriteBatchedStatements=true
• Nome do Usuário: openfire
• Senha (Cadastrada no momento da instalação do MySQL): openfire@123
• Minimum Connections: 5
• Maximum Connections: 25
• Tempo de expiração da Conexão: 1.0

Image for post

Selecione a opção Servidor de Diretórios (LDAP), para realizar a integração com o Active Directory.

Image for post

Escolha a opção Active Directory,
Em Tipo de servidor, informe o IP do seu Domain Controller ou hostname e a porta de comunicação LDAP 389.
Para pegar o DN BASE, pode utilizar uma ferramenta chamada ADSI no Windows, nela você consegue pegar o caminho do domínio completo para jogar no openfire. Em DN Base, informe seu domínio. Ex: seudominio.com.br DC=seudominio,DC=com,DC=br
Em DN Administrador, informe a conta com permissões administrativas (Deve ser uma conta válida do Active Directory). Ex: CN=administrador,CN=users,DC=seudominio,DC=com,DC=br
Após inserir as informações clique em salvar e continuar.
Obs.: Neste tutorial utilizei o domínio BLANK.INT
Em domínio que estejam no 2012 podemos informar a conta desta maneira: nomeuser@seudominio.
O openfire não enxerga Unidades Organizacionais, apenas grupos, logo não conseguimos criar filtros por OU.

Image for post

Podemos utilizar o botão de Testar, você receberá uma mensagem parecida com esta:

Image for post

Clique em Salvar e Continuar.
Na próxima janela é onde iremos configurar o mapeamento de usuários, iremos utilizar um Filtro de pesquisa no AD. Clique em Configurações Avançadas e procure pelo campo Filtro de Usuário.
Nome de Usuário: sAMAccountName
Altere o campo Filtro de Usuário.
De: (objectClass=User) ou (objectClass=organizationalPerson)
Para: (&(objectCategory=person)(objectClass=user)(memberOf=CN=G_A_OPENFIRE,OU=IM,OU=INT,DC=blank,DC=int))

Image for post

Com este filtro o openfire irá procurar os usuários que estão dentro do grupo Openfire do Active Directory.
E clique em Testar Conexão.
Se tudo ocorrer bem, aparecer uma tela igual a essa com um usuário aleatório que está dento daqueles grupos criados anteriormente. Você pode testar novamente clicando no “Próximo perfil Aleatório”.

Image for post

Clique em Fechar e depois Salvar e Continuar.
Na próxima janela é onde iremos configurar a sincronização dos Grupos.
Iremos utilizar o Filtro: Logo clique em Configurações Avançadas e troque o filtro padrão para:
(&(objectCategory=Group)(memberOf=CN=G_O_GRUPOS,OU=IM,OU=INT,DC=blank,DC=int))

Image for post

Novamente clique em Testar, e veja se irá encontrar um dos grupos criados no AD.

Image for post

Clique em Salvar e Continuar.

Nesta última janela precisaremos informar quais contas de usuários terão acesso administrativos ao console web do Openfire. Informe uma das contas configuradas anteriormente dentro do grupo Openfire criado no Active Directory. Selecione a sua conta que será o administrador e clique em continuar, não precisa ser necessariamente somente 1 usuário.

Image for post

Pronto a configuração está concluída, clique no botão Loge-se no console de administração.

Image for post

3. Gerenciando usuários
Após o termino da configuração, informe o login e senha de uma conta administrativa e clique em login.

Image for post

Acesse a guia Usuários/Grupos. Será listada os usuários que fazem parte do grupo Openfire do Active Directory. Para incluir novos usuários, basta apenas incluir no grupo Openfire criado no Active Diretory e dentro de um dos grupos de localização. E para remover, pasta apenas remover o usuário dos grupos.
Verifique seus Usuários:

Image for post

E Grupos:

Image for post

Pronto seu openfire está todo configurado e pronto para ser utilizado, basta logar com o seu cliente IM.

Antes de finalizarmos, iremos realizar algumas pequenas mudanças, iremos desativar as opções de Registro de conta via cliente, alteração de Senha e bloquear o Login Anônimo, pois tudo será gerenciado pelo Active Directory. Para isso navegue Configurações do Servidor > Registro & Login e Desative essas opções.

Image for post

4.Conclusão.
Com isso, ele estará dividido por Grupos dentro do Openfire. Os grupos que serão listados no openfire, devem estar dentro do grupo G_O_Openfire. Para os usuários ficarem divididos por grupos, eles deveram estar dentro de cada grupo no Active Directory, além de estarem no grupo G_A_Openfire (Grupo Acesso Openfire), nele que será definido se o usuário terá ou não acesos ao openfire. Desta forma melhoramos a segurança um pouco no openfire, definindo quem poderá ou não acessar a ferramenta. Além de utilizar filtros personalizados para que não sejam sincronizadas contas de usuários de terceiros e nem contas de computadores, problema que ocorre quando utilizamos os filtros padrões que o Openfire possui.

Originally published at https://www.bernardolankheet.com.br on February 5, 2016.

Monitoring, DevOps Student and content creation!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store