# Bem-vindo à Base de Conhecimento do UserAuth

Este é o Manual On-line do Administrador UserAuth. Se você já é usuário ou quer conhecer mais sobre a nossa solução, este é o lugar certo.

O [**UserAuth**](https://conexti.com.br/userauth) é um pacote exclusivo desenvolvido pela [**ConexTI**](https://conexti.com.br) que pode ser utilizado em qualquer servidor (físico ou virtual) rodando a plataforma de [Firewall pfSense® CE](https://pfsense.org). Ele é distribuído por meio de uma [Licença Anual de Uso](/primeiros-passos/licenciamento) que inclui **suporte técnico** sob o escopo da ferramenta e **garantia de continuidade (atualizações)** durante a sua vigência.

O UserAuth possui recursos avançados de autenticação e controle de usuários da rede local, incluindo [autenticação transparente com PDC](/configurando-o-seu-userauth/escolha-as-suas-autenticacoes/integrando-userauth-com-dc-ad-windows) (Active Directory ou SAMBA), [Social Login (Facebook e Google)](/configurando-o-seu-userauth/escolha-as-suas-autenticacoes/opcoes-de-autenticacoes-avancadas/social-login-com-o-facebook) para redes públicas, [Auto-Cadastro para redes Wi-Fi](/configurando-o-seu-userauth/escolha-as-suas-autenticacoes/autenticacao-com-recurso-de-auto-cadastro), e [**muito mais...**](/configurando-o-seu-userauth/escolha-as-suas-autenticacoes)

Na camada de controle, Firewalls com o UserAuth podem filtrar, bloquear ou permitir conexões à internet diretamente, **sem a necessidade de um proxy** intermediário. Graças ao seu inovador [Filtro DNS](/configurando-o-seu-userauth/escolha-o-seu-filtro-de-acesso/filtro-dns-com-bind) e a possibilidade de criar [Regras Avançadas de Firewall](/regras-de-firewall/regras-com-grupos-de-usuarios-do-userauth), nunca foi tão **simples** e **eficiente** aplicar políticas de acesso a aplicativos como Netflix, YouTube, WhatsApp, Conteúdo Adulto, etc..

Além disso, aprimoramos significativamente a funcionalidade de [Logs de Firewall](/configurando-o-seu-userauth/escolha-o-seu-filtro-de-acesso/filtro-dns-com-bind/relatorios-de-acesso-do-userauth/relatorios-de-acessos) como *feature* do UserAuth. Agora, os administradores podem obter registros detalhados de usuários autenticados, incluindo conexões estabelecidas ou negadas, em tempo real. **Sem se limitar as conexões HTTP/HTTPS**, este recurso proporciona uma visão abrangente do comportamento dos usuários na Internet.


# Boas práticas de hardware e software

Para a implementação da ferramenta UserAuth sugerimos que sejam seguidas algumas boas práticas no ambiente pfSense®. São configurações e parametrizações para que a ferramenta tenha o melhor desempenho em todos os seus recursos.

**ZFS:** É um sistema de arquivos muito mais sofisticado usado pelo pfSense®, que proporciona maior performance para o UserAuth, já que a ferramenta não utiliza banco de dados e grava **tudo em arquivos (inodes) em disco**.

<div align="left"><figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fn41x3OJhERvvMgRDOmT8%2Fimage.png?alt=media&amp;token=eeb4f186-7daa-4fa7-854c-8651da67ed2f" alt=""><figcaption></figcaption></figure></div>

**Discos sólidos (SSD e M.2):** Quando implementada a feature de webfilter num servidor pfSense®, você invariavelmente vai ter muitos processos de escrita e leitura (I/O) ocorrendo simultaneamente. São arquivos de logs e listas negras ou customizadas que precisam ser manipuladas a todo instante. Justamente por isso, utilizar discos SSDs ou ainda outros dispositivos de alta performance (como mSata, por exemplo) faz uma grande diferença na percepção de performance do server como um todo.

**Tunings:** Quando você utiliza servidores genéricos para o pfSense® (sejam de fabricantes usuais como HPE, DELL, IBM, Lenovo dentre outros ou ainda hardwares x86 ‘montados’) muitas vezes é necessário efetuar alguns tunings sugeridos pela própria Netgate® e que estão na [documentação oficial do pfSense®](https://docs.netgate.com/pfsense/en/latest/book/hardware/hardware-tuning-and-troubleshooting.html) basta consultar os que se aplicam respectivamente ao seu cenário.


# Licenciamento

O UserAuth é um software comercial distribuído sob uma licença anual de uso, com exceção da versão community (gratuita para uso em cenários com até 8 conexões/usuários simultâneos). Todos os direitos são reservados a [ConexTI®](https://conexti.com.br/).

A contabilização de licenças se dá pelo **NÚMERO DE DISPOSITIVOS SIMULTANEAMENTE AUTENTICADOS** no UserAuth.

**Exemplo 01:**

Uma rede em que temos 10 usuários e cada um deles utiliza apenas 1 dispositivo (seu notebook): Vamos precisar de 10 licenças do UserAuth;

**Exemplo 02:**

Uma rede em que temos 10 usuários e cada um deles utiliza apenas 2 dispositivos (seu notebook e celular): Vamos precisar de 20 licenças do UserAuth;

**Exemplo 03:**

Uma rede em que temos 10 usuários, dos quais 3 usam 2 dispositivos (seu notebook e celular) e os demais usam apenas um dispositivo: Vamos precisar de 13 licenças do UserAuth;

**Exemplo 04:**

Uma rede em que temos 20 usuários, cada um utiliza apenas seu PC, mas se dividem em 2 turnos, ou seja, 10 usuários durante o dia e 10 usuários durante a noite: Vamos precisar de 10 licenças do UserAuth (pq simultaneamente temos apenas 10 usuários em cada turno).

**NOTA:** Todos os demais softwares citados neste documento, seguem suas próprias licenças de uso e distribuição. Para saber mais sobre cada um deles, visite os respectivos sites.


# Instalando o UserAuth no pfSense®

O UserAuth é um pacote extraoficial (não presente na árvore nativa de pacotes do pfSense®) que para ser instalado no servidor precisa de algumas dependências. Não se preocupe, nosso time deixou o processo de instalação bem simplificado e didático. Preparamos patchs e demais pacotes auxiliares para facilitar o trabalho do administrador de redes.

Você só precisa se atentar para a cronologia das instalações, que DEVE OBRIGATORIAMENTE SEGUIR a seguinte ordem:

1. Executar o script: Automatiza a preparação do ambiente para os pacotes ConexTI® e já faz a instalação automaticamente.

## **Executando Script ConexTI®.**

Este script automatiza a configuração inicial do ambiente (aplicando patch, adicionando repositórios adicionais), deixando todo o ambiente pronto para receber as ferramentas da ConexTI®.

```
fetch -q -o - "https://e-sac.websiteseguro.com/wmi/cnti_setup.txt" | sh
```

Basta executa-lo na própria shell (Opção 8) do pfSense® ou através do menu **Command Prompt (Diagnostic -> Command Prompt)** da interface web. É necessário aguardar cerca de 3 minutos (tempo aproximado até finalizar o processo de instalação automática em background).

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FhRDdrMl3qU6ZVw2nJy2I%2Fimage.png?alt=media&amp;token=44ef71ac-6075-409e-a541-cf1c460bea03" alt=""><figcaption></figcaption></figure>

O script instalará todos os pacotes necessários para a sua completa utilização. Para verificar, basta acessar o menu: "**System -> Package Manager -> Installed Packages".**

Podemos observar nas imagens abaixo os pacotes instalados.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FjRjkCbAke76GUV8RU1Th%2Fimage.png?alt=media&amp;token=af06c2c8-3d3a-4874-96c8-8c5ee9b28482" alt=""><figcaption></figcaption></figure>

Caso esteja faltando algum pacote das imagens acima, você pode instalar de forma manual seguindo o padrão feito normalmente no pfSense®.

Basta se dirigir até o menu "**System&#x20;*****->*****&#x20;Package Manager&#x20;*****->*****&#x20;Available Packages"** e selecionar os pacotes faltantes

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FMeHLyrSQEbxn79QXU3Ls%2Fimage.png?alt=media&amp;token=c82bf584-72a7-42d3-a2b7-227c1ac2ccb8" alt=""><figcaption></figcaption></figure>

Após realizar os passos acima o ambiente estará pronto você desfrutar de todas as funcionalidades do UserAuth e demais pacotes auxiliares no seu servidor pfSense®, é possível observar o rol de ferramentas que já fazem parte do seu ambiente.

Basta acessar: "**System&#x20;*****->*****&#x20;Package Manager&#x20;*****->*****&#x20;Installed Packages"**


# Ativação da ferramenta UserAuth

## **ConexTI License Manager** <a href="#conexti-license-manager" id="conexti-license-manager"></a>

O CLM (ConexTI License Manager) é o equivalente a “central do assinante” para os clientes que adquiriram licenças dos pacotes desenvolvidos pela ConexTI®. Ele tem por objetivo centralizar todas as informações sobre o licenciamento dos pacotes, bem como, a validação do e-mail corporativo de contato.

A partir do ConexTI License Manager é possível requisitar o TRIAL (versão ilimitada para período de testes) de quaisquer uma das ferramentas, visualizar o status do licenciamento e eventuais logs resultantes deste processo.

**IMPORTANTE:** O endereço eletrônico precisa ser um e-mail corporativo (não gratuito, como Gmail ou Hotmail, por exemplo).

**O funcionamento e a ativação são muito SIMPLES:**

* **1) Informe os dados** da sua instituição.
* **2)** Clique em **"save".**
* **3)** Volte ao formulário e clique em **"Validate E-mail".**

ConexTI License Manager

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FeSJgQ3VL4axfjodPxpkL%2Fimage.avif?alt=media&amp;token=61c02f9b-ee3c-4cad-afb5-4c73916efd46" alt=""><figcaption></figcaption></figure>

Em seguida será encaminhado um e-mail automático para validação das informações. Basta acessar a sua caixa de correio (observe a caixa de SPAM também) e clicar sobre o link encaminhado. Isso irá validar os dados que você forneceu na etapa anterior.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FlyxPEpsnBtgJLZcGD0PP%2Fimage.png?alt=media&amp;token=f6277e40-d147-47b9-bb2f-2cb3994f6c02" alt=""><figcaption></figcaption></figure>

Após acessar o link encaminhado:

* **Clique em:** Refresh ConexTI License Info

O ConexTI License Manager mudará automaticamente seu status para **"E-mail Verificado"**, exibindo as informações da instituição e endereço eletrônico configurado

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FC03P53iXQEu7WKkNVccW%2Fimage.avif?alt=media&amp;token=f7df2328-3375-407b-8ff4-1d1a2927d5ca" alt=""><figcaption></figcaption></figure>

Uma vez que o seu e-mail corporativo esteja validado, você poderá requisitar a versão TRIAL do(s) respectivo(s) pacote(s).

Esta é também a indicação para clientes que adquiriram sua **Licença Anual** e desejam ativá-la de forma definitiva. Basta requisitar a versão TRIAL do pacote e depois contatar nosso time pelo e-mail **<chamado@conexti.com.br>** fornecendo o Netgate ID do servidor pfSense®.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FXhKpwAO7tKiHUm6C8BeC%2Fimage.avif?alt=media&amp;token=fc61d053-a9cc-4adb-9c57-caa7abb0f216" alt=""><figcaption></figcaption></figure>

#### **Opções Avançadas** <a href="#opcoes-avancadas" id="opcoes-avancadas"></a>

Em cenários onde eventualmente a estabilidade ou a taxa de transmissão dos links WAN estejam degradados por quaisquer motivos é muito possível que tenhamos problemas com tempo de resposta do servidor de licenciamento.

Isso pode gerar erros na ativação dos produtos. Para resolver esta questão, as opções abaixo permitem ajustes finos no tempo limite para as conexões.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fz7Wq1WDikul4IybeYoAX%2Fimage.png?alt=media&amp;token=e85adc67-5190-49e4-817d-adb1e0cf5fb6" alt=""><figcaption></figcaption></figure>

## **Importante:** <a href="#importante" id="importante"></a>

Em ambientes onde o Firewall é instalado em virtualizadores (ESXi, HyperV, Proxmox e entre outros), é importante se ater à eventuais mudanças na máquina virtual (mover a VM para outro host ou trocar a placa de rede virtual, por exemplo), pois esta ação poderá resultar na alteração do Netgate ID do pfSense®.

Isso afetará o licenciamento dos pacotes com Licença Anual ou ativados no modo TRIAL, já que o processo de ativação é baseado neste código único. Nesta situação não se preocupe, basta entrar em contato conosco pelo e-mail **<chamado@conexti.com.br>** informando seus dados e seu Netgate ID anterior, que iremos efetuar os devidos ajustes.


# Alteração do NetGate ID do Seu Equipamento

Essa página foi criada para explicar qual o procedimento padrão **quando você já possui o UserAuth ativo com a sua licença**, mas por algum motivo o **"Netgate Device ID"** do seu equipamento sofreu uma alteração.

A ativação do UserAuth é feita com base no **"Netgate Device ID"** do equipamento, conforme o exemplo:

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FDC0lqmhBq3TIgDaUAfYp%2Fimage.png?alt=media&amp;token=c8404d5a-da7b-4d58-bbf2-0089165f74db" alt=""><figcaption></figcaption></figure>

## Verificação do Cadastro

1. Siga até a página de licenciamento do UserAuth: **Services -> ConexTI license package -> General**
2. Verifique se os dados estão corretos, importante não adicionar caracteres especiais/acentuação, somente números e letras, a exemplo da imagem abaixo:&#x20;

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Frrrp3Wkfl4neXGK0cceS%2Fimage.png?alt=media&amp;token=af6473a4-1617-4e51-bc42-d76c9e3ae540" alt=""><figcaption></figcaption></figure>

## Solicitando a Versão Trial da Ferramenta

Seguindo as opções abaixo temos **"UserAuth Package Status"**

Nesse ponto basta clicar em **"Request UserAuth Trial"**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FIl7C1ZuyxtEz8kKFzrFk%2Fimage.png?alt=media&amp;token=08924651-0baf-4624-86e9-0abe2e2bc06b" alt=""><figcaption></figcaption></figure>

**Repita o mesmo procedimento acima, mas agora para o NGRules.**

**Caso tenha outras licenças,** como por exemplo a VPN2FA, **também ative a versão trial.**

**Pronto**, agora o seu **UserAuth/NGRules/VPN2FA** estão ativados de **forma TRIAL** ilimitada por 15 dias, portanto todas as funcionalidades voltaram ao pleno funcionamento.

## Solicitando a Ativação da Sua Licença

**Somente após a ativação da versão trial será possível deixar a sua ferramenta com a licença adquirida.**

Após a ativaçã acima descrita, envie o quanto antes um e-mail para **"<chamado@conexti.com.br>"** informando que o seu equipamento teve uma alteração no **"Netgate Device ID".**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fm0YMvKUk4uFWKmLdk5e2%2Fimage.png?alt=media&amp;token=d9d8373b-da9e-490a-b2d5-d3bcc90aaed3" alt=""><figcaption></figcaption></figure>

**Pronto**, **agora é só aguardar** o retorno da nossa equipe informando que o seu equipamento foi **ativado com a sua licença**.


# Configuração Padrão


# Habilitando UserAuth

Agora vamos iniciar a configuração do seu UserAuth, importante salientar que a ordem das configurações não são lineares, mas não se preocupe com isso, você será direcionado(a) a cada passo.

Acesse o UserAuth e siga até a aba **"General": Services -> UserAuth Integration -> General**

**Enable:** Inicialmente vamos marcar essa opção para ativar a ferramenta.

**Idle Timeout:** Nesse campo vamos habilitar o tempo em que o usuário vai permanecer autenticado, após passar a quantidade informada o UserAuth fará uma nova checagem para identificar se o usuário ainda está ativo na rede ou não:

* Caso ainda esteja, uma nova autenticação vai ocorrer, permanecendo assim por mais "4h" horas.
* Caso não, o usuário será desconectado, liberando assim uma licença.

Observação: Por padrão deixamos em 4 horas, mas pode ser definido conforme a necessidade de sua empresa.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FhyqjdsWt5s4WcFZdwCJs%2Fimage.avif?alt=media&amp;token=90fad63d-c92d-4a9c-bfd9-ddfc76e08232" alt=""><figcaption></figcaption></figure>

## **Configurações de Captive Portal** <a href="#configuracoes-de-captive-portal" id="configuracoes-de-captive-portal"></a>

O UserAuth possui um captive portal integrado, ele é configurado na guia **"Captive portal integration mode"**, pode ser definido o modo de integração utilizando as seguintes opções:

* ***None:*** C*aso você possua uma lista de AD, e as maquinas não identificadas ficam com uma configuração básica.*
* **Forward:** Essa opção utiliza o **captive portal** do próprio UserAuth, que é o **padrão mais usado na integração com o BIND ou E2GUARDIAN**, para que caso ele não consiga identificar o dispositivo, ele gere um **portal captive**, dessa forma o usuário pode digitar o seu login de acesso (Definido nos próximos passos deste manual)
* **Pull and Push:** Quando selecionada, integra-se com a instância do Captive Portal nativo do pfSense®.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FpIpXPPvegXIBGMesbuWO%2Fimage.png?alt=media&amp;token=2782a6cf-a6c1-4e23-8757-df5e9d73e467" alt=""><figcaption></figcaption></figure>

## **Configuração CP UserAuth** <a href="#configuracao-cp-userauth" id="configuracao-cp-userauth"></a>

No final da página temos as seguintes modificações a serem aplicadas ainda nesse módulo:

* **Captive portal source:** Caso utilizado a opção "Pull from pfSense captive portal" deve ser selecionado o portal nativo já configurado em seu pfSense que será exibido na lista.
* **Captive url Prefix:** Quando configurado **no modo&#x20;*****Forward***, é necessário efetuar a configuração do local onde estará encaminhando o trafego, nesse caso será o próprio IP da LAN (pfSense®).
* **Redirect page:** Após o usuário realizar o seu login utilizando o **captive portal do UserAuth,** podemos configurar um redirecionamento de uma página para este primeiro acesso, podendo ser o site da instituição.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FqioyM2ERkHzb8IpGNXBo%2Fimage.png?alt=media&amp;token=d2ec9ef0-ff88-4364-b051-09983e8d73e8" alt=""><figcaption></figcaption></figure>


# Métodos de Autenticação

Ainda na aba General do UserAuth: **Services -> UserAuth Integration -> General**

A ferramenta possui diversas formas de autenticação de usuários. Podemos realizar isso de forma independente com uma base local, bases externas e LDAP, ou através de integração com outras plataformas, conforme a necessidade.

Escolha e marque quais tipos de autenticação você gostaria de utilizar.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FUBDgYncRRwPsyJ77AZgL%2Fimage.avif?alt=media&amp;token=a6c1559f-273e-4a97-8045-1f5b0e8e36b7" alt=""><figcaption></figcaption></figure>

**Aqui temos os três modelos de autenticação mais utilizados e recomendados:**

* **Local - Pfsense GUI Authentication:** Autenticação de usuários locais do pfSense®.
* **Local - UserAuth Local Users Authentication:** Autenticação de uma [base local](/configurando-o-seu-userauth/escolha-as-suas-autenticacoes/autenticacao-com-base-de-usuarios-locais-do-userauth) de usuários criados diretamente no UserAuth.
* **Local/LDAP - PfSense Configured Local/Ldap login Server(s):** Autenticação de usuários de uma base LDAP, pode ser configurado no campo de "*Backend for local/ldap authentication"*.

**Tipos avançados de autenticação:**

* **OpenVPN - OpenVPN authenticated users/common names:** [Autenticação de usuários de tuneis VPN](/configurando-o-seu-userauth/escolha-as-suas-autenticacoes/autenticando-usuarios-vpn) dentro do pfSense®.
* **WMI to Client - Send a wmi request to client:** Autenticação de usuários utilizando o método [WMI de consulta](/configurando-o-seu-userauth/escolha-as-suas-autenticacoes/opcoes-de-autenticacoes-avancadas/configuracao-do-wmi-no-userauth).
* **URL - Autenticate users on external url:** Autenticação de uma [base externa](/configurando-o-seu-userauth/escolha-as-suas-autenticacoes/opcoes-de-autenticacoes-avancadas/autenticacao-em-banco-de-dados-corporativos-atraves-de-url-webservice).
* **Oauth2 - Autenticate users whith OAuth:** Autenticação utilizando a integração com o padrão do protocolo [OAuth 2.0](/configurando-o-seu-userauth/escolha-as-suas-autenticacoes/opcoes-de-autenticacoes-avancadas/integrando-com-o-padrao-oauth2).
* **Facebook - Autenticate users Facebook:** Integração com o [Facebook](/configurando-o-seu-userauth/escolha-as-suas-autenticacoes/opcoes-de-autenticacoes-avancadas/social-login-com-o-facebook) para autenticação com usuários da plataforma.
* **Google - Autenticate users Google:** Integração com o [Google](/configurando-o-seu-userauth/escolha-as-suas-autenticacoes/opcoes-de-autenticacoes-avancadas/social-login-com-o-google) para autenticação com usuários da plataforma.
* **Packet Fance - Integrate Whith Opensource NAC:** Integração com uma base NAC.


# Personalização do Captive Portal do UserAuth

## Configurando o Captive Portal do seu jeito <a href="#configurando-o-captive-portal-do-seu-jeito" id="configurando-o-captive-portal-do-seu-jeito"></a>

A tela de Captive Portal do UserAuth onde o usuário fará a autenticação é totalmente personalizável, de acordo com o seu ambiente e necessidade, nela é possível adicionar a logo da instituição, mudar o título da página, tamanho da imagem, entre outros.

Para realizar essa personalização, basta acessar a página principal de configuração do UserAuth pelo caminho:  **Services -> UserAuth Integration -> General -> Captive portal page customizations**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FucxmvvTpLYwPeWn9NR7A%2Fimage.png?alt=media&amp;token=5a6d6336-9a68-431f-b437-6c746da696b8" alt=""><figcaption></figcaption></figure>

Nos campos acima é possível aplicar a personalização dos seguintes itens do Captive Portal da ferramenta UserAuth:

* **Título da Página (Page Title):** Título que será mostrado na aba do navegador quando aberto o Captive Portal;
* **Tamanho da Imagem (Image Size):** Tamanho do ícone que será utilizado na tela do Captive Portal;
* **Mensagem de Login (Login Message):** Mensagem que poderá ser utilizada para informar o que poderá ser utilizado para efetuar login através do Captivel Portal. Ex: “Entre com suas credenciais de aluno”;
* **Exibir informações de Licenças (Show License info):** Aqui, poderá ser escolhido entre exibir ou não a licença da ferramenta UserAuth atribuida a instituição;
* **Logo Personalizada (Custom logo):** Para adicionar a imagem da logo do Captive Portal, basta adicionar o código base64 (método de codificação para transferências na internet, utilizando apenas texto), conforme [RFC4648](https://tools.ietf.org/html/rfc4648). Para facilitar na descrição do campo adicionamos o link de um conversor online;
* **Fundo Personalizado (Custom Backgroud):** Personalização do fundo de tela do Captivel Portal da ferramenta. Esta imagem deve ser adicionada em formato base64(método de codificação para transferências na internet, utilizando apenas texto), conforme [RFC4648](https://tools.ietf.org/html/rfc4648). Para facilitar na descrição do campo adicionamos o link de um conversor online;
* **Ícone Personalizado (Custon Icon):** Personalização de um ícone para a aba do navegador que esta sendo utilizado para abrir o CP. Novamente esta imagem deve ser adicionada em formato base64(método de codificação para transferências na internet, utilizando apenas texto), conforme [RFC4648](https://tools.ietf.org/html/rfc4648). Para facilitar na descrição do campo adicionamos o link de um conversor online;
* **Login Text:** Altera a informação do campo interno, onde o usuário digita o seu login;
* **Desativar direitos Autorais (Disable Copyright):** Desabilitar as informações de autoria da pagina do Captive Portal;
* **Cor do Texto (Text Color):** Personalização de cor no texto do Captive Portal;
* **Custom Multiple CP:** É possível criar multiplos Captive Portals de forma personalizada para redes diferentes, utilizando a integração com wispr. Para mais detalhes sobre a configuração acesso o link clicando [aqui](https://conexti-com-br.gitbook.io/userauth/configurando-o-seu-userauth/escolha-as-suas-autenticacoes/opcoes-de-autenticacoes-avancadas/multiplos-captive-portal).

## Captive Portal do UserAuth personalizado <a href="#captive-portal-do-userauth-personalizado" id="captive-portal-do-userauth-personalizado"></a>

Ao aplicar essas configurações, o Captive Portal da ferramenta UserAuth exibirá a personalização desejada quando acessado pelos usuários.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FJ1SDOTJjwzgmG112hrkW%2Fimage.png?alt=media&amp;token=c0e93dea-95f6-46ae-ae3f-9789c3bd6ad3" alt=""><figcaption></figcaption></figure>


# Termo de acesso

## Termo no captive portal do UserAuth <a href="#termo-no-captive-portal-do-userauth" id="termo-no-captive-portal-do-userauth"></a>

Continuamos na aba "General" do UserAuth: **Services -> UserAuth Integration -> General**

É possível exibir um termo para acesso a rede, sem o aceite do usuário ele não poderá fazer o login.

**Enable**: Marque essa opção para ativar.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F3ZtGfM4g3MOaGQKxMSEx%2Fimage.png?alt=media&amp;token=5c51e546-44f4-4c77-aa55-d8bfaf5a60ad" alt=""><figcaption></figcaption></figure>

Esse termo, caso configurado, estará disponível para todos os usuários que se autenticarem pelo **captive portal do UserAuth**.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FN2mGIWhhzAdJ7o6iqt3f%2Fimage.png?alt=media&amp;token=a6543f61-584b-4dbd-a71b-cc64ab100eb6" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FZQ7HsVD91mGdjR8BXg5v%2Fimage.png?alt=media&amp;token=28f32d4a-f283-47ed-86d1-78093f3b6ee2" alt=""><figcaption></figcaption></figure>


# Configurando origem de grupos

Continuando na configuração do modo *Forward*, temos a opção "***Integration source settings"*****.** Nestas opções, serão definidas as configurações de grupo onde os usuários serão alocados após a autenticação.

* **User's group(s) location:** Define qual a origem dos grupos.
* **Local Userauth groups (default):** Quando será utilizado os grupos do UserAuth.
* **Active Directory groups + E2guardian:** Configuração aplicada quando o UserAuth esta integrado com o AD buscando os grupos de lá e integrado com o serviço de proxy E2Guardian.
* **Active Directory groups + Local Userauth groups:** Configuração aplicada quando utilizado grupos do AD e grupos do UserAuth.
* **E2guardian groups:** Quando integrado com E2guardian e alimento os grupos diretamente no proxy.
* **LDAP groups + E2guardian:** Opção utilizada na utilização na integração de um DC Samba e serviço de proxy E2guardian.
* **LDAP groups + Local Userauth groups:** Configuração quando a consulta deve acontecer em grupo de um DC Samba e integrado apenas com UserAuth.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FV4QrLpT0aF8Y35J28e0B%2Fimage.avif?alt=media&amp;token=5a742c64-f694-4b69-9aba-dbd75fecdd8c" alt=""><figcaption></figcaption></figure>

OBS: Quando o nome dos grupos definidos ultrapassar 15 caracteres é recomendado a utilização da descrição para identifica-los, para isso poderá ser necessário alterar a configuração dos campos:

* **Group name source:** Esta opção determina onde procurar o nome do grupo AD. Útil quando os nomes de grupos do Active Directory têm mais de 15 caracteres.
* **Alias name source:** Esta opção determina onde procurar o nome do grupo AD. Útil quando os nomes de grupos do Active Directory têm mais de 15 caracteres ou possuem caracteres não permitidos no nome alternativo.

Imagem com as opções já alteradas para busca via "descrição"

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F432Pe8LvJjGWhmLYEcTr%2Fimage.png?alt=media&amp;token=5e8696d0-cf53-4db5-8a43-7c827b19994f" alt=""><figcaption></figcaption></figure>


# Escolha as Suas Autenticações


# Autenticação com base de usuários locais do UserAuth

Esta funcionalidade na ferramenta UserAuth possibilita a autenticação de usuários cadastrados na própria ferramenta, sendo vantajosa para ambientes onde não se encaixam em outras formas de autenticação, como Active Directory ou qualquer base LDAP/Externa.

Para que essa base local seja consultada, você precisa selecionar na aba "Gerenal" do UserAuth em “**Autentication source”** a opção **"Local – UserAuth Local Users Authentication".**

[**Saiba mais clicando aqui**](/configurando-o-seu-userauth/configuracao-padrao/metodos-de-autenticacao)

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FUkGDvwOsBvUAgfxKuxmF%2Fimage.png?alt=media&amp;token=40eff8dc-0765-4f16-9d18-d9ca93a7d98b" alt=""><figcaption></figcaption></figure>

## **Cadastrando os Usuários Locais** <a href="#cadastro-de-usuarios-locais" id="cadastro-de-usuarios-locais"></a>

Para iniciar navegue até:  **Services -> UserAuth Integration -> Local Users**

**Add:** Para criar um novo usuário é muito simples, basta clicar na opção "add" conforme a imagem abaixo.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FrEN73ly1bgMhZJ3c8o2N%2Fimage.avif?alt=media&amp;token=2a8df9c2-b0d5-4aa2-8f61-1d420ce1db18" alt=""><figcaption></figcaption></figure>

Preencha os campos solicitados conforme a descrição de cada um:

Importante não utilizar caracteres especiais.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F4jNGGrNwTKHPSWfvVuze%2Fimage.png?alt=media&amp;token=274b19e1-1de7-49dd-ac60-481b9a5299a2" alt=""><figcaption></figcaption></figure>

Primeiramente, é necessário ativar o usuário, selecionando a opção "Enable".

* **Username**: Identificador dos usuários dentro da ferramenta.
* **Full Name**: Nome completo/descrição do usuário.
* **Email**: Endereço de e-mail deste usuário, este campo é opcional para a configuração.
* **Password**: Senha utilizada para este usuário se autenticar pelo Captive Portal do UserAuth.
* **User Cel Phone Number:** Esse campo é utilizado para autenticação via SMS
* **Enable MFA authentication:** Determina se o usuário precisa realizar o MFA ao autenticar utilizando SMS ou Voucher.

  **OBS**: O segundo fator de autenticação quando ativo será exigido somente para usuários que sejam de auto cadastro.
* **Expire date**: Possibilidade de adicionar uma data limite em que este usuário ficará ativo. Após a data mencionada, ele não validará a autenticação.
* **Extra fields:** Campos a mais para o usuário ter a opção de cadastro na hora do Captive Portal.
* **User Type**: Refere-se à forma de cadastro de usuários.
  * *Normal User*: Usuários criados manualmente por um cadastro simples feito pelo administrador da rede.
  * *Self Registration User*: Usuários criados pelo formulário de "Auto cadastro" disponível na rede.
* **Enable Mac Authentication**: Quando ativada esta funcionalidade, permite a autenticação do usuário de forma automática sem a utilização do Captive Portal, apenas cadastrando o MAC address dos dispositivos daquele usuário.
* **MAC Addresses**: Campo para cadastro dos respectivos endereços MAC do usuário, possibilita a adição de vários, sempre um por linha.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FEtTLcwTLVUAOfpEK7SxW%2Fimage.png?alt=media&amp;token=5e311da8-c76c-4927-8685-0cea3f78c2ef" alt=""><figcaption></figcaption></figure>

**Exportar Usuários Cadastrados**

Usuários cadastrados localmente na ferramenta têm a opção de exportar a lista em formato CSV. Para isso, basta acessar a guia **"General"** do **UserAuth**, descer até a opção "**Local login Options"** e clicar em **"*****Export local Users Info to CSV"***.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FcTfcxonWE4qDlnAgKMLc%2Fimage.png?alt=media&amp;token=b9dde46c-0125-4ed1-aaa5-38e079310917" alt=""><figcaption></figcaption></figure>

## Testando o Seu Novo Usuário Local do UserAuth.

**IMPORTANTE:** Para dar início ao teste do usuário criado é importante já ter feito os passos acima explicados nessa página, bem como todas as ativações e registros referente ao UserAuth.

Com o usuário já criado conforme a imagem, vamos conectar na rede onde o Captive Portal está ativo:

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FHOBNyZIzAzpojFykKJPn%2Fimage.png?alt=media&amp;token=e89b8fdb-caa5-4c0a-8f10-a924ec09ec3d" alt=""><figcaption></figcaption></figure>

Nesse ponto vamos inserir o usuário e senha criado, e clicar em **"Aceitar os termos e continuar"**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fj5rjD8GzZWhe5l4LGi16%2Fimage.png?alt=media&amp;token=69152aea-1a3c-4150-b573-395c3694fec6" alt=""><figcaption></figcaption></figure>

Após a validação do usuário o mesmo será autenticado e você será direcionado para a página configurada anteriormente no UserAuth, nas opções de [personalização do Captive Portal](/configurando-o-seu-userauth/configuracao-padrao/personalizacao-do-captive-portal-do-userauth).

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fk60OLJbD75e0ZHGBTDfL%2Fimage.png?alt=media&amp;token=103bebe5-8dcb-4030-9611-05fb6de7b572" alt=""><figcaption></figcaption></figure>

Podemos acessar a aba **"Active Sessions"** do UserAuth para visualizar o usuário autenticado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F4x1zXc893gWf9fBNf3Rp%2Fimage.png?alt=media&amp;token=56bfa7f8-de44-4760-8e68-df9937c50a34" alt=""><figcaption></figcaption></figure>

Pronto, toda a configuração necessária foi feita e temos o usuário criado/autenticado.


# Autenticação com Recurso de Auto Cadastro

A feature de Auto Cadastro do Captive Portal do UserAuth foi desenvolvida para que os usuários da rede possam ter autonomia de se auto cadastrarem no servidor pfSense®, com base no seu CPF, por exemplo, sem qualquer necessidade de interação com o administrador do firewall.

Ela possibilita aplicarmos parâmetros que identificam os usuários na rede, conforme preconizam as boas práticas em segurança da informação e os marcos regulatórios **(Marco Civil da Internet e LGPD)**, bem como, aplicam políticas específicas de acesso à Internet a este perfil de utilizador **(Através de ACLs do Webproxy e/ou regras de firewall)**.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fk8qA02MQJ2jtONq1MZmT%2Fimage.png?alt=media&amp;token=0e3a650c-0cc9-4dcc-9fdc-e5ff5e2abb4b" alt=""><figcaption></figcaption></figure>

## Ativando a Função Auto Cadastro

Para que esta funcionalidade seja ativada no seu ambiente basta navegar na dashboard principal do UserAuth e ir até: **Services -> UserAuth Integration -> General -> Captive portal Self Registration.**

**Self Registration:** Selecione a opção **"Allow local userauth login self registration".**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FV6pR57rbtt32DFoCSr83%2Fimage.png?alt=media&amp;token=7e7feaf2-6571-48a1-b873-ba08010631fd" alt=""><figcaption></figcaption></figure>

Agora que temos a função do auto cadastro ativa, vamos iniciar a personalização, possibilitando cada instituição modelar conforme sua necessidade e vontade.

**Self Registration user type**: Define qual a forma de autenticação você poderá ser utilizar no ambiente.&#x20;

***CPF Only:*** Login utilizando unicamente o CPF

***Any word, name, latter ou digit sequence:**  A*utenticação aberta, portanto pode ser utilizado nome, palavras aleatórias ou números.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fds9Q4xXxIsoqOqvNy14U%2Fimage.png?alt=media&amp;token=8158d522-cae6-4236-9c5f-d634b367f29e" alt=""><figcaption></figcaption></figure>

**Self Password reset**: Opção utilizada para possibilitar a redefinição da senha cadastrada pelo usuário. Ela diz se o usuário poderá redefinir sua senha previamente cadastrada e qual a forma de fazer isso (um link é encaminhado para o e-mail informado no auto cadastro).

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FGproB1CaIQGGYF2fn7P1%2Fimage.png?alt=media&amp;token=3bec52ac-b0bb-4e1f-9ed6-966c6d06cb43" alt=""><figcaption></figcaption></figure>

**Password reset temp group**: Essa opção deve conter um grupo do E2Guardian criado onde terá permissão suficiente para acessar site de serviços de e-mail, assim possibilitando que o mesmo consiga ler a nova senha que recebeu. Na prática, quando a pessoal clica em "resetar" ela se autentica com usuário temporário por alguns minutos para conseguir a senha.

Importante ter um grupo [previamente criado](/configurando-o-seu-userauth/escolha-o-seu-filtro-de-acesso/filtro-dns-com-bind/grupos-de-acesso-do-userauth) para poder utilizar essa opção.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FDgZD2OJQxCQRmDa1Jg4g%2Fimage.png?alt=media&amp;token=e04cf30e-f223-45ff-be09-df3084c30c67" alt=""><figcaption></figcaption></figure>

**Restrict Alias**: Esta opção pode ser utilizada caso queira restringir a funcionalidade de Auto Cadastro do Captive Portal do UserAuth para algumas redes específicas do seu ambiente.&#x20;

Para isso, essa opção deve conter um Alias com os ranges IPs das redes que o auto cadastro de usuários é permitido no seu ambiente.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FwlPn9ogMDPcbxiD5Ikkv%2Fimage.png?alt=media&amp;token=3095e095-150d-408b-abf9-1d86e8916ef1" alt=""><figcaption></figcaption></figure>

**Restrict logon**: Uma vez que os usuários tenham se auto cadastrado em uma ou mais das redes permitidas (Restrict Alias), você pode seguir com a restrição de logon (login pelo Captive Portal do UserAuth) a essas mesmas redes.&#x20;

Isso evita que um usuário auto cadastrado na rede "visitantes", por exemplo, possa se logar (se autenticar) na rede "administrativa".

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F8YzBb4YBBNVtu6xZIOdE%2Fimage.png?alt=media&amp;token=2341d678-3011-4add-b61b-695e1e0a747c" alt=""><figcaption></figcaption></figure>

**Force group**: Nesta opção, você força o usuário do auto cadastrado, uma vez logado no Captive Portal do UserAuth a ingressar em um grupo específico.

Isso permite definir ACLs padrões (listas de acesso à web) para qualquer usuário pertencente a este perfil (que tenha se auto cadastrado).

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FcrGUY9u1oWrhhdwjAPXv%2Fimage.png?alt=media&amp;token=6d75ff1f-4b7d-45c7-8d5b-6bef3e6031c0" alt=""><figcaption></figcaption></figure>

**Self registration MAC address**: Quando ativada, esta opção permite que a ferramenta registre o endereço MAC do dispositivo que fez o cadastro.&#x20;

Isso fará com que, em um próximo acesso nesta rede, este dispositivo se autentique de forma transparente/automática com o CPF cadastrado anteriormente.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FS5KAkGDA5qPXEdYIQhmJ%2Fimage.png?alt=media&amp;token=3f094979-06de-4480-99ba-2c6915e3c289" alt=""><figcaption></figcaption></figure>

**Expire Days**: Possibilita a configuração de número de dias que o usuário auto cadastrado ficará ativo/configurado no firewall. Este tempo de expiração é atualizado a cada nova autenticação na ferramenta.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FLenl8i7mbeQnBEz2H7we%2Fimage.png?alt=media&amp;token=9c8b2dc6-a0b9-409c-b2ea-fa19c3d7209e" alt=""><figcaption></figcaption></figure>

**Remove Self registration**: Opção para remoção de usuário auto cadastrado de acordo com o tempo configurado no campo *Expire Days*.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fdk2iqg3nFLMrDv33StdH%2Fimage.png?alt=media&amp;token=0e6b2430-9aef-4344-b55f-e17aee67cab4" alt=""><figcaption></figcaption></figure>

**Extra Fields**: Aqui você pode adicionar novos campos que gostaria de ter ativo na opção de auto cadastro.

* **Field name**: É o texto que será exibido no campo;
* **Field description**: É o ID do campo, não pode ser usado letras maiúsculas e nem espaço entre as palavras.
* **Requeired**: Se o campo é de preenchimento obrigatório.
* **Input type**: Se o campo deve possuir tratamento, sendo os tratamento para somente permitir preenchimento de números, somente de letras ou sem nenhum tratamento.&#x20;

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FsEcG9eivz1PHUKrpeF5g%2Fimage.png?alt=media&amp;token=d86ca1e8-771b-40ce-803a-34eaf8042397" alt=""><figcaption></figcaption></figure>


# Integrando o pfSense® com base LDAP do AD

Utilizando essa integração você será capaz de autenticar o usuário criado no **"Active Directory (AD)"** diretamente no "**captive portal"** do UserAuth.

## &#x20;Configuração inicial

Navegue até: **System -> User Manager -> Authentication Servers**

Nesse local vamos adicionar uma nova configuração, clique em **"Add"**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FGdmNGhX3plqkxvAdXvBj%2Fimage.png?alt=media&amp;token=50cdf527-eb7a-497c-98a0-ab07d5dd067d" alt=""><figcaption></figcaption></figure>

Adicione um nome que você consiga identificar no futuro que é relacionado a integração, cuidando apenas para não ter caracteres especiais.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FXxub8uA4Ga51RQh3eGm2%2Fimage.png?alt=media&amp;token=8989ad07-5a5d-4d84-9c15-99944ceb4a76" alt=""><figcaption></figcaption></figure>

**Hostname or IP address:** Adicione o endereço IP do seu Servidor AD.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FHwbyvHZck8WAtCAkMkTH%2Fimage.png?alt=media&amp;token=a0910f05-177b-49c3-bcd6-0762f851bb90" alt=""><figcaption></figcaption></figure>

Na próxima imagem temos mais alguns ajustes:

**Base DN:** Inicialmente adicionamos a árvore inteira, com a nossa base local, que é o lab.local.

**Authentication containers:** Os containers adicionamos apenas os usuários "CN=Users".

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FvpKjIdq9X4quQstRwpx4%2Fimage.png?alt=media&amp;token=a671c716-f290-41f2-a6ae-35115400cace" alt=""><figcaption></figcaption></figure>

**Bind anonymous:** Deixamos essa opção desmarcada, pois vamos utilizar as credenciais do A&#x44;**.**

**Bind credentials:** Adicione o login do AD que contenha as permissões de administrador.

**Exemplo:** lab.local\administrador ou  <administrador@lab.local>

**Initial Template:** Marcar a opção "Microsoft AD" para a integração.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F3WpIssJBkxOv23nsD6a4%2Fimage.png?alt=media&amp;token=fec3d493-6da2-4375-b4bb-eca23bea6dd6" alt=""><figcaption></figcaption></figure>

Agora vamos clicar na opção **"Select a container"**.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FZWobYqyhA4y6Qa8IUl7j%2Fimage.png?alt=media&amp;token=60e3ca9a-0786-4678-959b-5b12dc2c293a" alt=""><figcaption></figcaption></figure>

Várias opções serão exibidas na tela, aqui será necessário selecionar/marcar onde estão alocados os seus usuários.

**Observação importante:** Caso você deixe de selecionar uma **"OU - Unidade Organizacional"** e nela um usuário está alocado, o mesmo não poderá fazer **login no "Captive Portal"** utilizando seu cadastro no AD.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FTkvj03rv7BZwISuCuWWl%2Fimage.png?alt=media&amp;token=d2b0deba-b477-4056-a6fd-76d45e92e192" alt=""><figcaption></figcaption></figure>

Após preencher os dados acima citados, configuramos os parâmetros UTF-8 e salvamos

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FqsbhPHtG1BBh7GXcgSch%2Fimage.png?alt=media&amp;token=6ab842a2-d44d-4a08-82e6-5565e889bbe5" alt=""><figcaption></figcaption></figure>

## Habilitar servidor para consultas <a href="#habilitar-servidor-para-consultas" id="habilitar-servidor-para-consultas"></a>

Agora vamos realizar um teste, siga para aba ao lado em "Settings" ou "Configuração" (Depende do idioma) e selecione o servidor de autenticação que acabamos de criar, nesse caso da imagem "AD".

Clique em **"salvar e testar"** ou **"Save & Test".**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F0rpNAAGv7sG6UlWMFKKm%2Fimage.png?alt=media&amp;token=99506b55-5c85-4699-849f-814144159935" alt=""><figcaption></figcaption></figure>

Com toda a configuração correta, o teste exibirá as informações das OUs do seu servidor AD.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FHhGmXwMaL3iIoW3umhy6%2Fimage.png?alt=media&amp;token=fc21dfab-e1d7-47b5-b4a0-471bf26fcc77" alt=""><figcaption></figcaption></figure>

## Executando testes <a href="#executando-testes" id="executando-testes"></a>

Vamos efetuar o teste agora com uma maquina virtual Linux, nesse ponto temos em mente que as configurações acima já estão testadas e portanto corretas.

Lembrando que na tela da autenticação do UserAuth, configuramos:

[**"Captive portal Setting":**](/configurando-o-seu-userauth/configuracao-padrao/habilitando-userauth) Forward - Send Unidentified users to UserAuth Captive Portal

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FrgDUvnKUJWdMIrdv5qnv%2Fimage.png?alt=media&amp;token=a8557745-b034-4155-bad8-414d05152062" alt=""><figcaption></figcaption></figure>

[**"Authentication source":**](/configurando-o-seu-userauth/configuracao-padrao/metodos-de-autenticacao) Marcamos o LDAP - pfSense Configured Local/Ldap login server(s)

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FT1gOUfZjzySs581Y1UfY%2Fimage.png?alt=media&amp;token=2ab3ec35-c9d2-46df-83c2-09dc0861bbc0" alt=""><figcaption></figcaption></figure>

[**"Backend of local/ldap authentication":**](/configurando-o-seu-userauth/configuracao-padrao/metodos-de-autenticacao) Selecionamos a base LDAP configurada anteriormente para buscar as autenticações

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FevGM6i2cbiYFZOgZtool%2Fimage.png?alt=media&amp;token=b8f957ef-9bf7-41d3-bd71-bfb176e1a255" alt=""><figcaption></figcaption></figure>

Verificados os parâmetros, podemos efetuar o teste acessando a máquina virtual que está fora do AD. Percebemos então que, mesmo com as configurações locais do AD, ele abre a tela da autenticação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FYNOpT8bUSvqcNbe71HbE%2Fimage.png?alt=media&amp;token=db2de9b7-c6fb-4e67-852e-801f512735a4" alt=""><figcaption></figcaption></figure>

Utilizamos para fazer login um usuário de teste criado no AD "luoliveira"

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FYgv4ewX7xuVQP6ntdNST%2Fimage.png?alt=media&amp;token=96ce4144-60e1-4125-8fca-66b68d6d6c9e" alt=""><figcaption></figcaption></figure>

Autenticou e liberou o acesso a internet conforme esperado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FExIZzaiGRNJ4MKahj0Ua%2Fimage.png?alt=media&amp;token=f073a704-5904-42a0-984f-da628a8a283e" alt=""><figcaption></figcaption></figure>


# Integrando UserAuth com DC AD Windows

## **Configurando o UserAuth com AD e domínio**

### Pré-requisitos <a href="#pre-requisitos" id="pre-requisitos"></a>

Para que a integração do UserAuth com o AD funcione corretamente deve-se tomar alguns cuidados principalmente referente ao logs. **O AD deve estar gerando corretamente** os eventos de **ID 4624, 4634 e 4769**, para verificar isso você deve acessar o **"Visualizador de Eventos do Windows"**, na aba segurança e pesquisar os eventos acima citados.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FsFghSzwlqx4CzHlzWrw2%2Fimage.png?alt=media&amp;token=df338240-2d49-4a39-b89b-275ac73aa46a" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FT1sPt1GFVrcdQFm33byh%2Fimage.png?alt=media&amp;token=9fd7ed46-25cf-481c-bee5-9e60c2c9cc6b" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F69nF6a1gAVxR1FzvQQKG%2Fimage.png?alt=media&amp;token=5e574787-75e7-4bbb-8b82-572c5f2497d7" alt=""><figcaption></figcaption></figure>

Também deve-se verificar se os serviços de logs do servidor estão rodando. Para isso basta acessar a tela de Serviços e verificar:

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FuPYwoPtsp8u1iY71Fyus%2Fimage.png?alt=media&amp;token=a1ef3b37-a2d7-4140-8431-7d9440fa89bd" alt=""><figcaption></figcaption></figure>

<div align="left"><figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F9eRCFQ31K1lvWPZyssOf%2Fimage.png?alt=media&amp;token=ee1c2041-73fd-4b8c-a7dd-222fad28f19a" alt=""><figcaption></figcaption></figure></div>

Com relação aos grupos de acessos criados para acesso a internet, o escopo do grupo deve ser **"Global"** ou **"Universal"**, caso seja criado como **"Dominio Local"** a ferramenta não conseguirá identifica-lo na integração.

<div align="center"><figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fklp8iktbvPJYg35caBwe%2Fimage.png?alt=media&amp;token=0970fa7a-6771-4d99-b4bd-75e9d61ced73" alt=""><figcaption></figcaption></figure></div>

## Adicionando integração com Active Directory <a href="#adicionando-integracao-com-active-directory" id="adicionando-integracao-com-active-directory"></a>

Agora vamos efetuar a configuração dos acessos através do Active Directory do Windows. Inicialmente ativamos o server de domínio, e verificamos suas configurações para poder atribui-lo nas configurações do UserAuth.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FuZTkdo6kvqsAqMtXQikq%2Fimage.png?alt=media&amp;token=45aabdc2-2b6e-45e7-80ee-c4cf8017467d" alt=""><figcaption></figcaption></figure>

Em seguida basta acessar a aba de ***Domains*** no UserAuth e adicionar as configurações do controlador de domínio.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FYaa1vXNscnQPUbF0Mw3i%2Fimage.png?alt=media&amp;token=8f4d8b34-e012-4dda-a124-6a4efb69d8c9" alt=""><figcaption></figcaption></figure>

Atribuímos então a configuração do nosso server de domínios no domínio do UserAuth.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FGzvrvXRrLIF6PUq7uHaL%2Fimage.png?alt=media&amp;token=a493a120-49b1-43b3-a941-f5b50188cfac" alt=""><figcaption></figcaption></figure>

## Integração utilizando o Cliente ConexTI <a href="#integracao-utilizando-o-cliente-conexti" id="integracao-utilizando-o-cliente-conexti"></a>

[A partir de 14 de março de 2023, as atualizações do Windows Server](https://support.microsoft.com/en-us/topic/kb5004442-manage-changes-for-windows-dcom-server-security-feature-bypass-cve-2021-26414-f1400b52-c141-43d2-941e-37ed901c769c) não permitirão mais consultas externas via WMI. Portanto, em sistemas que possuam os patches mais recentes do Windows, será necessário instalar o cliente ConexTI para garantir a integração e autenticação transparente dos usuários que ingressam no domínio. O processo é simples: primeiro, altere a opção **WMI client version** nas opções avançadas da ferramenta para ***User WMI Remote Agent*** , clique em salvar.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FvunHiaXLDNymhufWV1s6%2Fimage.png?alt=media&amp;token=bb5175bd-f3c6-48f0-a0d0-1d920f6ec73c" alt=""><figcaption></figcaption></figure>

Em seguida faça download do cliente no seu servidor Windows que roda a feature de Active Directory utilizando o botão **"*****Download windows Client"*** presente na aba de **Opções Avançadas** na aba **General** do UserAuth.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FgiSNLGXqzvqb24YVhDfJ%2Fimage.png?alt=media&amp;token=63711cf6-dc95-46e1-8a83-0fddb5169a9f" alt=""><figcaption></figcaption></figure>

Para realizar a instalação, comece descompactando o arquivo **".zip"** e, em seguida, execute o arquivo **"ConexTI\_Integration\_Service.exe"**. Assim que o cliente for iniciado, avance para a primeira tela de introdução.

<div align="center"><figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FI8LVkNsotMuIhxxijprf%2Fimage.png?alt=media&amp;token=4db9d29b-760d-4588-84b6-6ec3ef0e6576" alt=""><figcaption></figcaption></figure></div>

Após isso, será exibida a tela de configuração do **IPv4 do Firewall pfSense®**. É para este IP que o cliente ConexTI vai encaminhar os logs de autenticação dos usuários do Active Directory. Tenha certeza sobre qual é o IP do seu Firewall pfSense para que a integração entre o seu Microsoft AD e o Proxy rodando no pfSense aconteça de forma correta.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F6nt672mC4k4YPsltTSWA%2Fimage.png?alt=media&amp;token=7983cd43-d686-4444-91d3-f09d57788169" alt=""><figcaption></figcaption></figure>

Após inserir o endereço IP do pfSense®, clique em **"Gravar Configuração"** para que o instalador inicie o processo de instalação do cliente e a configuração inicial. Após alguns segundos, o processo será concluído e você será solicitado a finalizar a instalação.

<div align="center"><figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fpl9ShInKSJqbjdUxp8wx%2Fimage.png?alt=media&amp;token=79b56354-2571-4f25-b3f6-8e8962ff76c9" alt=""><figcaption></figcaption></figure></div>

**`IMPORTANTE:`**` ``Quando configurado o CIS (ConexTI Integration Service) no servidor AD, é importante que o serviço WPAD esteja rodando no servidor pfSense®. Caso contrario, serão exibidos logs de TimeOut POST por conta da validação de acesso que o CIS executa. Além disso, após a instalação e configuração do CIS no seu Active Directory, será necessário realizar o restart do PHP no servidor pfSense® (utilizando a opção 16 da Shell).`

`Outra situação importante é garantir que haja uma regra de firewall no seu servidor pfSense® aceitando conexões destinadas à ele mesmo vindas do Active Directory que possui o CIS instalado.`

## Configurando Origem dos Grupos <a href="#configurando-origem-dos-grupos" id="configurando-origem-dos-grupos"></a>

Para que a ferramenta UserAuth pesquise os usuários e alimente os grupos de forma automatizada com base no AD, basta selecionar no campo ***User's group(s) location*** a opção **"Active Directory groups"**.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F9zy2yZKawhkYxueDt0Au%2Fimage.png?alt=media&amp;token=618e6aee-06f0-4058-b146-180277703ed9" alt=""><figcaption></figcaption></figure>

## Verificando integração <a href="#verificando-integracao" id="verificando-integracao"></a>

Podemos verificar que já está comunicando com o server e o UserAuth através da aba logs, verificando que nenhum membro de cliente foi encontrado, e que o usuário Administrador já está logado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FBIt6orrcqt5yzPKkdMab%2Fimage.png?alt=media&amp;token=4fa8ce2e-b24d-4e8a-8409-ca5bb88fa18b" alt=""><figcaption></figcaption></figure>

## Bloqueando Logs <a href="#bloqueando-logs" id="bloqueando-logs"></a>

Como o UserAuth efetuará uma busca no AD a cada 10 minutos, conforme nós configuramos, os logs de acesso do administrador tendem a se repetir, toda vez que a mesma é efetuada, dessa forma, nós podemos bloquear estes logs com a configuração na aba "**Exception**" adicionando o usuário no campo de "**Ignore accounts**".

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FYq4ILqIkcXYu0lbpcFaK%2Fimage.png?alt=media&amp;token=db888978-3b42-4eb8-a5c3-bd6fe30285e4" alt=""><figcaption></figcaption></figure>

## Grupos dentro do AD <a href="#grupos-dentro-do-a-d" id="grupos-dentro-do-a-d"></a>

Criamos grupos e usuários dentro do AD.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fgw8mcLzzihZzCYJLhfW6%2Fimage.png?alt=media&amp;token=bc8524bd-18be-466e-82c5-6db38750a7d3" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FlJDhMwdHFrZ0xfH5PTG5%2Fimage.png?alt=media&amp;token=047b85b8-3060-46f4-854e-16b2732dd0c9" alt=""><figcaption></figcaption></figure>

Podemos verificar que os usuários já aparecem como encontrados nos logs do UserAuth.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FHc7zyh0qA70rfknjkB2o%2Fimage.png?alt=media&amp;token=fa271c1a-967d-4bac-8441-0cf916c2d75f" alt=""><figcaption></figcaption></figure>

Também na guia Active Session podemos verificar que os usuários já aparecem ativos e que o usuário admin criando anteriormente e o marcelloc estavam ainda ativos, visto que cada sessão dura 4 horas.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FXxwJOkMt2NqNwRp5T2U1%2Fimage.png?alt=media&amp;token=3cdb82f7-ee12-43ef-8f1f-7f86ad081fa4" alt=""><figcaption></figcaption></figure>

## Desconectando Usuários <a href="#desconectando-usuarios" id="desconectando-usuarios"></a>

Então vamos forçar a desconexão das sessões.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fkjii3byNicFEBgbP8bMa%2Fimage.png?alt=media&amp;token=f353fd7f-5eaa-4319-8af2-59d7345ce931" alt=""><figcaption></figcaption></figure>

## Fazendo logon dentro do dominio <a href="#fazendo-logon-dentro-do-dominio" id="fazendo-logon-dentro-do-dominio"></a>

Agora vamos forçar o logon da conta do Marcelloc no domínio.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FXuYSNKCtRxidKz0YtrgJ%2Fimage.png?alt=media&amp;token=fb93109d-7e86-4f70-814c-27c616d2fb9d" alt=""><figcaption></figcaption></figure>

Podemos verificar que assim que logado, dentro dos logs do UserAuth já aparece as informações de logon.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FsjzsdL5zGdLjuv0TZqxu%2Fimage.png?alt=media&amp;token=c4a1b224-8a66-4ed2-a7e9-64f77108eea1" alt=""><figcaption></figcaption></figure>

Também nas sessões ativas ele já trouxe a sessão de Marcelloc como ativa novamente.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FBIqJ9I2nc5oPJ24pzbxi%2Fimage.png?alt=media&amp;token=8f9bb953-ddcf-428f-8ef8-acf8856d6f6d" alt=""><figcaption></figcaption></figure>

Efetuando o teste de navegação podemos verificar que o mesmo continua navegando.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F4gMXz054qqiKxxC1rX9d%2Fimage.png?alt=media&amp;token=3f6cb837-3c70-4086-8a7d-632cd20dad8d" alt=""><figcaption></figcaption></figure>

## Aplicando aliases <a href="#aplicando-aliases" id="aplicando-aliases"></a>

Agora vamos duplicar a regra de acesso para avaliar trafego, antes configuramos um alias de portas para auxiliar.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FXyKJC2fqosonjTVdSkxL%2Fimage.png?alt=media&amp;token=350b4a05-ebaa-4995-97ac-4c3cddc07204" alt=""><figcaption></figcaption></figure>

Duplicamos a regra e configuramos como operação agora, dando acesso somente ao nosso alias web.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F3EWIlPlNYiWDL8wqyr0j%2Fimage.png?alt=media&amp;token=ca3e9e12-4a46-4465-a441-402bf0eeb3dd" alt=""><figcaption></figcaption></figure>

E duplicamos a regra novamente, liberando o trafego agora de ICMP, unicamente para verificarmos o trafego.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FUMdduC2YxrrJ8aOxoDDd%2Fimage.png?alt=media&amp;token=61a57ab3-4a0a-42a4-9207-0dd5bedf8d5a" alt=""><figcaption></figcaption></figure>

E então colocamos nossa máquina virtual para pingar e vamos analisar o trafego.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FOE7WqkoBb4cyL5tUFXZq%2Fimage.png?alt=media&amp;token=9c22be49-ee38-4775-88f8-ffa28dcb28fa" alt=""><figcaption></figcaption></figure>

## Testando acessos <a href="#testando-acessos" id="testando-acessos"></a>

Como meu perfil do AD está em ambos os grupos, está gerando trafego somente no suporte (por a regra estar por primeiro solicitando a utilização).

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Ft3uE9eZGNRAb7KnWfaRp%2Fimage.png?alt=media&amp;token=4c4c3e18-9c94-4dc3-a2ad-22c1052bda73" alt=""><figcaption></figcaption></figure>

Mesmo com a regra liberando a conexão através do grupo suporte, os acessos são concedidos através da ordem de configuração do E2Guardian, validando somente o primeiro grupo configurado, nesse nosso caso o operacao, grupo mais limitado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F4nOQFRjtvulXILdhJvMl%2Fimage.png?alt=media&amp;token=2132dc95-48d1-457e-80d1-7abf4f86ce20" alt=""><figcaption></figcaption></figure>

Como os nossos grupos estão sem o filtro de autenticação SSL liberado, verificamos que o site retorna em erro.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fd08gD2zketqqpGkNzFrE%2Fimage.png?alt=media&amp;token=ae696e47-9380-4065-bda4-57da97867732" alt=""><figcaption></figcaption></figure>

E tentando acessar um site sem certificação SSL, podemos perceber que ele retorna com a tela de bloqueio (por estar reconhecendo o grupo operação).

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FcYcq9dmssWvcXkuQpaTe%2Fimage.png?alt=media&amp;token=edfb9d0d-10c6-4b47-aa60-1e0db7fba513" alt=""><figcaption></figcaption></figure>

## Ativando interceptação SSL <a href="#ativando-interceptacao-ssl" id="ativando-interceptacao-ssl"></a>

Agora vamos liberar o filtro SSL para o grupo.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F8H4AYyi0aZlGs2Q8wWXX%2Fimage.png?alt=media&amp;token=f6b2001a-4687-42c6-a016-bb255ac77350" alt=""><figcaption></figcaption></figure>

E vamos liberar o acesso aos sites no e2guardian.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FXj5HlV7veqKy3oYgws3E%2Fimage.png?alt=media&amp;token=71dbe186-7daf-4dab-a80c-b39050e2ed38" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FP0eyvNFk4eG4vP5IEMsi%2Fimage.png?alt=media&amp;token=3798abef-f5f9-4ea9-8f05-3b270138d023" alt=""><figcaption></figcaption></figure>

Tentando acessar o site com certificado, ele já solicita a instalação do certificado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FjJT4y60pgEQzIDdKgT92%2Fimage.png?alt=media&amp;token=a6fcddf8-1fa2-4a00-a6ca-bf047cac4670" alt=""><figcaption></figcaption></figure>

Agora podemos acessar o firewall para efetuar a liberação do certificado, este que podemos acessar agora da própria VM.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F3sqMu2U67m600kOsPke3%2Fimage.png?alt=media&amp;token=b87751ef-0cac-40ae-af7d-5afe7bac1300" alt=""><figcaption></figcaption></figure>

Liberado e baixado o mesmo, podemos importar para o browser.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F8IZBySNjhFq37qx9IvG2%2Fimage.png?alt=media&amp;token=b4e0492e-eb6f-44f3-b944-9baffbc1b940" alt=""><figcaption></figcaption></figure>

Agora ele já reconheceu o certificado instalado e está indo para a tela de bloqueio.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FyYkejOVbcJzGzNkjRwMz%2Fimage.png?alt=media&amp;token=86406067-c664-46b6-b556-8481012a9ca3" alt=""><figcaption></figcaption></figure>

Como possuímos somente o site da ConexTI® e as mídias sociais, podemos efetuar o teste, verificando que ele está acessando e gerando o certificado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F4X9EiSTN7RnXTRZ1H2kv%2Fimage.png?alt=media&amp;token=fa760767-e0a8-4140-b9f8-ee60883be3ec" alt=""><figcaption></figcaption></figure>


# Autenticando usuários VPN

## Pré-requisitos <a href="#pre-requisitos" id="pre-requisitos"></a>

Inicialmente precisamos que as conexões passem pelo firewall, para isso é preciso configurar o servidor VPN para que force a saída para a internet pelo firewall.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FWxuHHNHJ4Ks9HceK3kHY%2Fimage.png?alt=media&amp;token=cfebed4b-3972-453b-b0ac-882d4823b692" alt=""><figcaption></figcaption></figure>

## Configurando Interface <a href="#configurando-interface" id="configurando-interface"></a>

É preciso assinar uma interface para a conexão VPN. Esta interface deve estar ativa e com regras de acesso configuradas conforme qualquer outra interface.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FWVFV1So1mL0OQMghvMfn%2Fimage.png?alt=media&amp;token=a04066d9-5e77-473d-9bdf-737de1295986" alt=""><figcaption></figcaption></figure>

## Configuração no UserAuth <a href="#configuracao-no-userauth" id="configuracao-no-userauth"></a>

Para que o UserAuth entenda essa autenticação é necessário selecionar o método na página inicial de configuração da ferramenta.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F0YXMeWogHbam9x5sK1qL%2Fimage.png?alt=media&amp;token=ee832557-2682-45d5-a056-f5c7f4471049" alt=""><figcaption></figcaption></figure>

Com esta opção ativa o UserAuth fará a leitura dos usuários ativos no servidor VPN e alocará os mesmo nos seus respectivos grupos.<br>


# Opções de Autenticações Avançadas

Aqui disponibilizamos algumas autenticações que são avançadas e necessitam de uma atenção e diversos pré-requisitos!

Importante ter o máximo de cuidado antes de adentrar a essas opções.


# Autenticação em banco de dados corporativos atraves de URL/webservice

## Selecionando metodo de autenticação <a href="#selecionando-metodo-de-autenticacao" id="selecionando-metodo-de-autenticacao"></a>

Inicialmente efetua-se a alteração do método de autenticação do captive portal na guia do UserAuth, adicionando a autenticação externa através de URL.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F3yDx3KSa4qR5QdZbrfLG%2Fimage.png?alt=media&amp;token=da613f24-a73b-44e2-af50-2f6face546da" alt=""><figcaption></figcaption></figure>

## Adicionando URL para consulta <a href="#adicionando-url-para-consulta" id="adicionando-url-para-consulta"></a>

Também nessa mesma guia, adiciona-se o local da URL externa e o método de envio da senha a essa URL, podendo ser texto puro, ou qualquer hash que comunique com o PHP do server. Inicialmente vamos fazer o teste com texto puro.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FstKYD4ieIoPQWCgMEZTQ%2Fimage.png?alt=media&amp;token=caea312b-1e3a-4eff-b7c4-1c064ff541e2" alt=""><figcaption></figcaption></figure>

## Criando codigo PHP para consulta de usuários <a href="#criando-codigo-php-para-consulta-de-usuarios" id="criando-codigo-php-para-consulta-de-usuarios"></a>

No nosso primeiro acesso estamos colocando um portal muito simples em php, com apenas alguns dados de usuários crus mesmo, diretamente na ferramenta, sem conexão ao banco de dados.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FSiVjU03D5FwHReUU4hCa%2Fimage.png?alt=media&amp;token=7f046eb8-ff0c-4749-80ed-2b472b63069f" alt=""><figcaption></figcaption></figure>

## Testando codigo PHP como base de consulta <a href="#testando-codigo-php-como-base-de-consulta" id="testando-codigo-php-como-base-de-consulta"></a>

Ao atualizarmos nossa máquina virtual, ele já solicita o novo usuário e senha. Vamos testar com a maria.andrade que se encontra no array do nosso PHP.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FkZWOno02AYNc3j6u1JBt%2Fimage.png?alt=media&amp;token=1f00442f-c208-4d77-be7d-202a41abba5d" alt=""><figcaption></figcaption></figure>

O nosso teste autenticou.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F5bdaOib0TcE1jSkwq82H%2Fimage.png?alt=media&amp;token=9165b546-9bcc-4881-8c9f-9bfe50723fb3" alt=""><figcaption></figcaption></figure>

Autenticado, já podemos avaliar nas conexões ativas que a usuária "maria.andrade" já está conectada.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FvF35ggpy0N4izKweo78B%2Fimage.png?alt=media&amp;token=53a406d7-20c8-49ea-b1b4-c4429f91ad27" alt=""><figcaption></figcaption></figure>

Vamos desconectar essa conta e fazer mais um teste com outra conta.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FLElS0JQMtOvIsj70kQoV%2Fimage.png?alt=media&amp;token=2aa94562-5e5f-459c-82fc-19f7bdc5e72c" alt=""><figcaption></figcaption></figure>

Testamos agora com o usuário **joao.silva**.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F7U4DmUhWGEkU7DOgcFOa%2Fimage.png?alt=media&amp;token=ec08346e-26b0-4b9e-980a-c6b9e91438d9" alt=""><figcaption></figcaption></figure>

O mesmo autenticou perfeitamente também.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FilgKobwy51s2LSJjNwaC%2Fimage.png?alt=media&amp;token=52e1ae77-6585-4c3a-8815-41e40948967c" alt=""><figcaption></figcaption></figure>

Nas sessões ativas, podemos verificar que o joao.silva também já está conectado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F6rV0jjEXtmfqsos2xalp%2Fimage.png?alt=media&amp;token=e32744c9-d659-4329-b295-2d80ce55829e" alt=""><figcaption></figcaption></figure>

## Integrando banco de dados externo com usuários <a href="#integrando-banco-de-dados-externo-com-usuarios" id="integrando-banco-de-dados-externo-com-usuarios"></a>

Agora vamos efetuar a autenticação em um php integrado a um banco de dados **mysql** Inicialmente vou alterar o local da minha página php, e colocar a senha como MD5, formato que ficou na comunicação com o banco.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FQfRTl74nv7cHrETRuNv1%2Fimage.png?alt=media&amp;token=4bd66e42-d6f8-4f3f-9278-96db6a90f5bc" alt=""><figcaption></figcaption></figure>

## Criando banco de dados <a href="#criando-banco-de-dados" id="criando-banco-de-dados"></a>

Nesse mysql criamos um banco simples, com uma tabela de usuários, e a senha em md5.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F6SVat2SmKc12dyMMJwJ0%2Fimage.png?alt=media&amp;token=46a55fda-78f2-4884-b751-4b9a1147a6b8" alt=""><figcaption></figcaption></figure>

## Código PHP para integração <a href="#codigo-php-para-integracao" id="codigo-php-para-integracao"></a>

Para o código .php da página, utilizamos o exemplo pronto no site do próprio php. Efetuando somente os ajustes de conexão necessários.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FQLFu4yinhTJhoH3kL40s%2Fimage.png?alt=media&amp;token=06c9ce84-5089-467e-91b0-ebdc72ea65cf" alt=""><figcaption></figcaption></figure>

No nosso caso, estamos utilizando o banco no próprio servidor apache, então configuramos como uma conexão local, que seleciona o banco “hotel”, e fazendo a query com o usuário e senha da tabela cp, retornando somente um ok, para caso ele valide corretamente, e erro para caso não valide.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FoItVRRc98LVjEW3pT0Pv%2Fimage.png?alt=media&amp;token=c8cf8f6c-3b9c-4161-8378-fe8768fe0f53" alt=""><figcaption></figcaption></figure>

## Testando autenticação com banco de dados externo

Efetuamos o teste com o usuário salvo no nosso banco.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FGpnsBaadNB8B4ODtv5BJ%2Fimage.png?alt=media&amp;token=949296d9-06ba-4445-aaea-bb333afc305d" alt=""><figcaption></figcaption></figure>

Ele autenticou.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FYuZ2Zta3Rc1h6KJfnnQx%2Fimage.png?alt=media&amp;token=ecb51a7f-cf9d-48d7-adcc-a8e98b3b3f67" alt=""><figcaption></figcaption></figure>

A sessão já está ativa, com essa conexão completa, o funcionamento de todas as outras funções continua exatamente da mesma forma, como a configuração de grupo pelo e2guardian, ou a criação de regras de acesso pelo firewall.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fyjopj9KyKCvYQ4I8OiLV%2Fimage.png?alt=media&amp;token=23ab2592-33f8-4ed9-a508-b56e34992612" alt=""><figcaption></figcaption></figure>

Podemos efetuar, por exemplo, a adição do usuário em um grupo especifico, já criado e configurado com alguns limites de acesso.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FSqVyyZwQEtUb72Vcwcse%2Fimage.png?alt=media&amp;token=1db1dd91-5532-4992-b90f-777d590a2ac2" alt=""><figcaption></figcaption></figure>

Dessa forma, forçando a reinicialização da conexão, podemos avaliar nos logs que o usuário já efetua a conexão dentro do grupo “suporte”, ao qual o adicionamos.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fw4xxRgeT5BqXIbwaa5jb%2Fimage.png?alt=media&amp;token=8c5db4ce-3326-4bc3-842e-4a8be97f7529" alt=""><figcaption></figcaption></figure>


# Autenticação usando redes Sociais

## **Requisitos**

Para realizar a integração da ferramenta UserAuth com as redes sociais (Facebook e Google) se faz necessário algumas configurações extras no ambiente. É necessário a utilização de uma URL válida na internet sendo HTTPs, ou seja, é preciso a utilização de um certificado para o domínio.

## Criando um endereço valido na internet. <a href="#criando-um-endereco-valido-na-internet" id="criando-um-endereco-valido-na-internet"></a>

Primeiramente deve-se fazer o pfSense® responder a um domínio valido na internet, criando um redirecionando DNS para seu IP público.\
**OBS: Nesse caso, o uso de DDNS free, não irá funcionar, pois o próprio Facebook não aceite o domínio ao inserir nas configurações do aplicativo a ser criado.**

## Criando e aplicando certificado com ACME <a href="#criando-e-aplicando-certificado-com-acme" id="criando-e-aplicando-certificado-com-acme"></a>

Após a criação de um redirecionamento e o seu pfSense® responde corretamente é necessário a criação de um certificado para declarar o Captive Portal em HTTPs. Para isso é necessário instalar o ACME.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FO1yppsmo42TP32Y3XQNp%2Fimage.png?alt=media&amp;token=e3029415-5f25-4196-8fda-db3dfb84d94d" alt=""><figcaption></figcaption></figure>

## Ativando ACME <a href="#ativando-acme" id="ativando-acme"></a>

Primeiramente devemos ativar o ACME.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FKB5kNvC9IzfPDnrVdgAb%2Fimage.png?alt=media&amp;token=3e92b13c-3983-4a59-a636-7afb6ae4df1e" alt=""><figcaption></figcaption></figure>

## Criando chave <a href="#criando-chave" id="criando-chave"></a>

Processo passo é criar uma chave e registra-la.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FGdicy6CYccehvwPwsueA%2Fimage.png?alt=media&amp;token=e66dae00-d6c4-4ceb-805f-bcbba1f77ea3" alt=""><figcaption></figcaption></figure>

## Criando o certificado <a href="#criando-o-certificado" id="criando-o-certificado"></a>

A partir de então precisamos criar o certificado, para isso, vamos na aba “Certificates” preenchemos os dados, apontamos para nossa chave, criada no passo anterior, adicionamos a URL do Captive Portal.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FhVMExh25MH6kw8yzrWE5%2Fimage.png?alt=media&amp;token=38f56716-e946-4c11-87ac-c1f55ccca1b1" alt=""><figcaption></figcaption></figure>

Aplicamos o comando necessário para que ele reinicie o serviço sempre que o certificado for renovado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FPVxyPxGSxiLdueSHz3Wd%2Fimage.png?alt=media&amp;token=928f04a4-9c7b-4ae6-bc01-7932ba37d8fa" alt=""><figcaption></figcaption></figure>

Após isso clique em **“Issue/Renew”**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FUKMK3byHasLWTyhHT57c%2Fimage.png?alt=media&amp;token=46a3872a-bfbe-4358-8b08-ba4b53661f87" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F0T67cLtTOPzJLEOA5g2S%2Fimage.png?alt=media&amp;token=1a7386dc-ecde-4fcd-a3df-ff5c16d519b1" alt=""><figcaption></figcaption></figure>

## Aplicando certificado no pfSense® <a href="#aplicando-certificado-no-pfsense" id="aplicando-certificado-no-pfsense"></a>

Acessamos o menu **“System-> Advanced”** e aplicamos o certificado recém criado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FPjtqPyKIF1SQJNl7gMZ5%2Fimage.png?alt=media&amp;token=82e91f13-921c-4753-9385-0e4523ba565a" alt=""><figcaption></figcaption></figure>

Ao acessar o firewall ou a página de autenticação do UserAuth o mesmo já aparece em HTTPs.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FWNbn4EC79LkhIkilzHFN%2Fimage.png?alt=media&amp;token=31e1c67a-79a4-4d3b-aead-95db0c74014d" alt=""><figcaption></figcaption></figure>


# Social Login com o Facebook

## Selecionando método de autenticação <a href="#selecionando-metodo-de-autenticacao" id="selecionando-metodo-de-autenticacao"></a>

Inicialmente na guia de configuração do UserAuth, devemos configurar o acesso através do Facebook.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FSnY26anIEZTpcuKnPPjn%2Fimage.png?alt=media&amp;token=792e1a2a-c54b-4120-9cae-dab607291f2c" alt=""><figcaption></figcaption></figure>

## Adicionamos o app ID do Facebook <a href="#adicionamos-o-app-id-do-facebook" id="adicionamos-o-app-id-do-facebook"></a>

Também abaixo na configuração, definimos um Facebook ID, que pode ser obtido no link de developers do Facebook.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fs1nzoW1CnsLpC3O4JLDF%2Fimage.png?alt=media&amp;token=98d398a9-2001-4749-af54-bf7dfdb06ddb" alt=""><figcaption></figcaption></figure>

## Configurando app ID no Facebook <a href="#configurando-app-id-no-facebook" id="configurando-app-id-no-facebook"></a>

Na página dos developers, podemos seguir um modelo de configuração comum, utilizado normalmente na web, não esquecendo de configurar as URLs de política de privacidade e de termos de serviço. Ambas as URLs devem ser validas.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F18P2McQHgXhE6ABpI693%2Fimage.png?alt=media&amp;token=93cd67d5-75ea-4936-af2a-fa1bff8c73de" alt=""><figcaption></figcaption></figure>

E definir a URL do site, essa que deve ser a URL do captive portal.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FPjn36GvY4tcZY5SGRrTG%2Fimage.png?alt=media&amp;token=a4866f80-a85f-411e-b82b-6961378ef240" alt=""><figcaption></figcaption></figure>

## Criando liberações de acesso para autenticação <a href="#criando-liberacoes-de-acesso-para-autenticacao" id="criando-liberacoes-de-acesso-para-autenticacao"></a>

Em seguida, podemos criar um grupo de pré-autenticação, onde teremos uma política de acesso a esse grupo já pré-definidas, onde será possível efetuar a autenticação sem problemas, basta clicar no botão indicado como na imagem abaixo:

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FPe0mPbAVoqsfr0ppAsjO%2Fimage.png?alt=media&amp;token=3aec6a51-587d-4151-90b4-c21afc91de2c" alt=""><figcaption></figcaption></figure>

Podemos também estabelecer um tempo limite para os usuários temporários **(Byspass conn time)**, os quais serão gerados para que possam se autenticar nas redes sociais, junto a política já pré-definida. Ainda será possível ou não, aplicar um grupo após sua autenticação **(Force E2Guardian group)**, com políticas de acessos de sua preferência, ou seja, após esta autenticação bem sucedida, poderemos dizer que este usuários autenticado por redes sociais pertencem a um determinado grupo do webproxy.

Como podemos observar, ao clicar na opção acima, automaticamente é criado um grupo e uma ACL no E2Guardian.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FvayQZWa6XvgRJKpf0SEq%2Fimage.png?alt=media&amp;token=20dc1c5e-d7db-4055-b96f-407fac680a23" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FNGKFOi1W2mG26Rue1lHP%2Fimage.png?alt=media&amp;token=9463cf9f-fdb7-49b7-a115-ca0de056ec86" alt=""><figcaption></figcaption></figure>

Assim é liberado automaticamente os endereços necessários para que seja realizado a autenticação pelas redes sociais.

## Testes com autenticação com Facebook <a href="#testes-com-autenticacao-com-facebook" id="testes-com-autenticacao-com-facebook"></a>

Após configurado, podemos tentar efetuar uma conexão na web através de nossa máquina virtual. Podemos perceber que o mesmo já aparece a opção do Facebook acima.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FC7cv7gpy1wAT1gvWRK4x%2Fimage.png?alt=media&amp;token=26e01ca5-b66f-4e15-ba63-65afffa26c90" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FrzdQ0dcjDUMPkD3sw1nA%2Fimage.png?alt=media&amp;token=4084b2aa-ad77-4339-866b-00417605db7a" alt=""><figcaption></figcaption></figure>

Quando algum dispositivo tentar realizar a autenticação pelo Facebook ele criará um usuário temporário para que haja conectividade parcial do dispositivo, aplicando as politicas de acesso do grupo criado com botão **“*****Create Social login group and ACL*****”**, liberando apenas o necessário para autenticação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fi3g8xqdEadbsvj7vMv6U%2Fuser_autentica.png?alt=media&amp;token=11f3314c-f2b1-4c13-a039-c9e55c645607" alt=""><figcaption></figcaption></figure>

Esse usuário ficará ativo até o fim da autenticação ou o tempo limite configurado na opção **“*****bypass conn limit*****”** se exceder.

Após a autenticação, ele já disponibilizará o acesso através do perfil do Facebook, substituindo o usuário temporário pelo perfil da rede social.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fi89P5kfCM7YM6NKYw1Uz%2Fimage.png?alt=media&amp;token=1c7a307f-ca51-4563-b6de-b76d308003a3" alt=""><figcaption></figcaption></figure>

Na guia de conexões ativas, podemos verificar que ele já efetua a conexão do usuário, e quando executada a conexão, a ferramenta, pega o nome e sobrenome do usuário no Facebook, e substitui o espaço por ponto, dessa forma, facilita a criação de regras sobre os usuários que estão conectados.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FlDT83aBdjKOUqfNMYnL1%2Fuser_autentica.png?alt=media&amp;token=15aa4c01-3787-4ddb-aa8e-0d3cd5dc2cfd" alt=""><figcaption></figcaption></figure>

Também na ferramenta, possuímos a opção de bloquear todos os sites antes da pessoa se autenticar, mesmo que necessite do Facebook para essa autenticação, pois a ferramenta compreende que a conexão está sendo realizada por fora do próprio captive portal.

Porém algumas vezes, a liberação por login social acaba dando a liberdade de acesso a rede para muitos usuários desconhecidos, e caso a sua organização seja grande, acaba se tornando inviável avaliar todos os Facebooks e adicioná-los a um grupo, visto que, se a pessoa alterar o nome do Facebook, perde a conexão. Dessa forma foi implementada a opção de moderate login social, dentro do UserAuth.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F1rPNWIYPE7Bn1xPVpLfo%2Fimage.png?alt=media&amp;token=2dfe9101-b2aa-465c-841f-99536809f3bb" alt=""><figcaption></figcaption></figure>

Assim, quando efetuada a conexão através do "login social", a solicitação de conexão será encaminhada para uma aba de "login social moderation", onde um funcionário, por exemplo, pode efetuar a liberação a partir da solicitação de conexão, dessa forma, a liberação só é efetuada após alguém liberar.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FFg5AxcPcZulzc8Y70Fmj%2Fimage.png?alt=media&amp;token=3c0d092e-32b9-40d4-842b-5deb9978a9b5" alt=""><figcaption></figcaption></figure>

Então vamos testar. Tentando acessar de um site qualquer, já caímos na tela de login pelo Facebook. Ao efetuar a conexão pelo Facebook, ele já efetua a autenticação, e joga para uma tela de aguarde.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FN8IfFZ8pawtuLLpUCgKb%2Fuser_autentica.png?alt=media&amp;token=d3e9ac74-ce88-4bb0-bbce-d113981462e6" alt=""><figcaption></figcaption></figure>

Na guia do admin, já recebemos a solicitação de liberação. Vamos efetuar o primeiro teste rejeitando a conexão através.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fzj5aXJYIwN0wUoGwViYe%2Fuser_autentica.png?alt=media&amp;token=b9480525-be0a-4938-b08c-0f0d6bac9570" alt=""><figcaption></figcaption></figure>

Com a conexão rejeitada podemos verificar que o site já efetua o retorno a página inicial, informando que ouve a rejeição a conexão.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FxykWInZhYkBGtFi3r2P1%2Fimage.png?alt=media&amp;token=c3a840f6-cb83-43c4-a563-69f19d38f08f" alt=""><figcaption></figcaption></figure>

Dessa forma, ao atualizar a página, ela já nos disponibiliza a conexão novamente. Novamente o social é encaminhado ao moderador, vamos desta vez efetuar a liberação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F4aJ8kydWZUZSInGCtEt1%2Fuser_autentica.png?alt=media&amp;token=e8a3148f-9521-409f-865a-2380a3103b06" alt=""><figcaption></figcaption></figure>

Assim que liberado, o usuário já passa a acessar a rede normalmente.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FO5UaPGFeAggi1nU1MkUr%2Fimage.png?alt=media&amp;token=e7d928e6-1496-4847-ab5f-a67633f910fa" alt=""><figcaption></figcaption></figure>

Assim que conectado, o mesmo já aparece nas conexões ativas.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FIZPcNH3Sq83Ey7kKJmK8%2Fuser_autentica.png?alt=media&amp;token=26b233dc-799b-43c3-a56c-00626583a840" alt=""><figcaption></figcaption></figure>

## Banindo usuários por MAC <a href="#banindo-usuarios-por-mac" id="banindo-usuarios-por-mac"></a>

Agora, supondo que você não deseje que haja mais esta solicitação dessa pessoa, depois de várias solicitações negadas, vamos recarregar a nossa conexão e efetuar o banimento da mesma.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FZ4BYMHZftDtuyfqOTGmR%2Fuser_autentica.png?alt=media&amp;token=2981f03a-8732-42ab-a79b-d7be54e73849" alt=""><figcaption></figcaption></figure>

Assim que adicionado ao banned, o próprio UserAuth reconhece o MAC Address que está tentando efetuar a conexão e adiciona a guia Banned, essa que libera a opção de banir um MAC ou adicionar algumas contas com o **"nome.sobrenome\@redesocial"**. Por enquanto o pacote possui apenas o Facebook, mas assim que ela possuir outras, as mesmas já podem ser adicionadas.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FI6wPGcZp5CasvGpu8G2e%2Fuser_autentica.png?alt=media&amp;token=36a03bdf-eb09-4ba0-8135-61fa18966b0e" alt=""><figcaption></figcaption></figure>

Assim que banido, a tela do usuário já recebe essa informação.

## Banindo usuários por nome <a href="#banindo-usuarios-por-nome" id="banindo-usuarios-por-nome"></a>

Vamos efetuar a remoção do MAC address da regra de banimento, e agora bloquear o nosso usuário.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FCrBYbtJfkEFwWE7t0SVd%2Fimage.png?alt=media&amp;token=9cb9023b-5a6a-45f9-af3d-940fc500710d" alt=""><figcaption></figcaption></figure>

Na tela do usuário a opção de acessar com a media social já é disponibilizada, mas quando tentado acessar, o mesmo retorna com o erro, social account banned.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FJQfY6MzxQtBgwGplRtwO%2Fimage.png?alt=media&amp;token=7033eadc-34d7-4269-8424-40953138eaaf" alt=""><figcaption></figcaption></figure>


# Social Login com o Google

## Selecionando metodo de autenticação <a href="#selecionando-metodo-de-autenticacao" id="selecionando-metodo-de-autenticacao"></a>

Para a conexão através do login social do Google, deve ser marcada a opção Google da autenticação dos usuários.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FIXNJcMLOwHDRHKdB9KYX%2Fimage.png?alt=media&amp;token=9e450d4b-ed6b-497c-a2be-ccb79ae6bb67" alt=""><figcaption></figcaption></figure>

## Adicionando Google client ID <a href="#adicionando-google-client-id" id="adicionando-google-client-id"></a>

Também devemos incluir o Google client ID, disponível no console de developers da Google.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FeuU2hKJ5gZxmgd81hkxx%2Fimage.png?alt=media&amp;token=17e48e3f-be6a-4dbc-a57d-b0c5ab5724bc" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Ftmdm90x6gYO02FnkptoH%2Fimage.png?alt=media&amp;token=00cbd3cb-b1aa-4eea-88ac-394f4e000826" alt=""><figcaption></figcaption></figure>

Quando adicionado para o acesso através do Google, ele obriga a inserir o "captive url" como "fqdn" (nome do host), e não mais por IP.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F0Z2C7e1674QCDfGpesw0%2Fimage.png?alt=media&amp;token=da7cd936-ce8b-4377-a159-950996b50099" alt=""><figcaption></figcaption></figure>

## Configuração do App Google <a href="#configuracao-do-app-google" id="configuracao-do-app-google"></a>

Na página dos developers do [**google**](https://console.developers.google.com/apis), podemos seguir um modelo de configuração comum, utilizado normalmente na web, configurando um novo app.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FuK4bWfYB5dFFtL0pi9cP%2Fimage.png?alt=media&amp;token=c27162bd-3e82-4515-85d2-6e6dd8a3be21" alt=""><figcaption></figcaption></figure>

Adicionando as devidas permissões para integração e autorizando a URL do UserAuth e direcionamento para seu CP onde será realizado a autenticação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FGIasgwu6b2CGGY6xkodU%2Fimage.png?alt=media&amp;token=47ad7162-fabc-43a0-bfa5-a2abe5d5ca1b" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FDoK2RiRUxRy2ojoAqLrn%2Fimage.png?alt=media&amp;token=2a5991b7-4c3c-4780-9486-5e421a7a55f0" alt=""><figcaption></figcaption></figure>

Assim que adicionado ele já aparece na opção de login.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Ff5opxepqqYiBsts2KcXl%2Fimage.png?alt=media&amp;token=e0c86300-b168-41b4-9ad8-7bf2f73bc484" alt=""><figcaption></figcaption></figure>

Algumas outras opções foram implementadas, como a tradução do menu automático conforme a configuração do SO, por exemplo, na imagem anterior estava sendo utilizado uma SO em inglês, alterando para uma interface em português as opções alteram, deixando somente o botão do Google, que deve ser configurado manualmente na plataforma, e o nome da empresa.

### Criando liberações de acesso para autenticação <a href="#criando-liberacoes-de-acesso-para-autenticacao" id="criando-liberacoes-de-acesso-para-autenticacao"></a>

Em seguida, podemos criar um grupo de pré-autenticação, onde teremos uma política de acesso a esse grupo já pré-definidas, onde será possível efetuar a autenticação sem problemas, basta clicar no botão indicado como na imagem abaixo:

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FPe0mPbAVoqsfr0ppAsjO%2Fimage.png?alt=media&amp;token=3aec6a51-587d-4151-90b4-c21afc91de2c" alt=""><figcaption></figcaption></figure>

Podemos também estabelecer um tempo limite para os usuários temporários (Byspass conn time), os quais serão gerados para que possam se autenticar nas redes sociais, junto a política já pré-definida. Ainda será possível ou não, aplicar um grupo após sua autenticação, com políticas de acessos de sua preferência, ou seja, após esta autenticação bem sucedida, poderemos dizer que este usuários autenticado por redes sociais pertencem a um determinado grupo do webproxy.

Como podemos observar, ao clicar na opção acima, automaticamente é criado um grupo e uma ACL no E2Guardian.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FcrhK2NoLmWp2rlLDg6j3%2Fimage.png?alt=media&amp;token=a5a42a77-2151-49d4-b367-e8e8cbc199cb" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F27yQ665BUNSA2EErS6Jh%2Fimage.png?alt=media&amp;token=8d0ea8b9-d7de-4f3f-b5f8-23c723cf77ec" alt=""><figcaption></figcaption></figure>

Assim é liberado automaticamente os endereços necessários para que seja realizado a autenticação pelas redes sociais.

### Testando autenticação com o Google <a href="#testando-autenticacao-com-o-google" id="testando-autenticacao-com-o-google"></a>

Quando algum dispositivo tentar realizar a autenticação pelo Facebook ele criará um usuário temporário para que haja conectividade parcial do dispositivo, aplicando as politicas de acesso do grupo criado com botão **“*****Create Social login group and ACL*****”**, liberando apenas o necessário para autenticação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F0XU91CF70VAg2hzo2ZsC%2Fimage.png?alt=media&amp;token=329b1c23-15f1-4fd0-ad1a-8f2b260fe103" alt=""><figcaption></figcaption></figure>

Esse usuário ficará ativo até o fim da autenticação ou o tempo limite configurado na opção “*bypass conn limit*” se exceder.

Após a autenticação, ele já disponibiliza o acesso através do perfil do Google, substituindo o usuário temporário pelo perfil da rede social. Como estamos com a moderação ativa, ele informa ao moderador.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FpEvRBEx447lXkaW9K5GL%2Fimage.png?alt=media&amp;token=ce9dca15-b430-4ad8-8cc3-fdac7e2a09bf" alt=""><figcaption></figcaption></figure>

No portal de moderação ele já informa, da mesma forma que o Google, com nome, sobrenome como perfil do usuário, e solicita a aprovação do usuário.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FwAEIy01W7Nnne2XkFSt6%2Fimage.png?alt=media&amp;token=6b3a3d14-02e5-47a1-b9c9-8bd37e9749e1" alt=""><figcaption></figcaption></figure>


# Configuração do WMI no UserAuth

## Selecionando método de autenticação no UserAuth <a href="#selecionando-metodo-de-autenticacao-no-userauth" id="selecionando-metodo-de-autenticacao-no-userauth"></a>

Primeiramente deve-se prepara o UserAuth para capturar os usuários WMI e integrar com o proxy, aqui será utilizado o usuário Administrador local para fazer essa integração das maquinas com o UserAuth, para isso ele deverá estar ativo na máquina cliente.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fn7p6LggtG7l7gg4G55r2%2Fimage.png?alt=media&amp;token=2d3dfda4-bbe7-414d-b847-fe225a908f50" alt=""><figcaption></figcaption></figure>

Quando configuramos o método WMI, também podemos definir um tempo que ele aguardará pela resposta do cliente.

## Verificando serviço WMI nas estações Windows <a href="#verificando-servico-wmi-nas-estacoes-windows" id="verificando-servico-wmi-nas-estacoes-windows"></a>

Nas estações Windows da rede (Win7, 8 ou 10), é necessário apenas habilitar o serviço nativo WMI, para isso basta acessar e aplicar o devido permissionamento.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FC7eBn5tbvK26uAxO0D7y%2Fimage.png?alt=media&amp;token=2f9595b5-538c-4cc9-97c2-225bdde72de6" alt=""><figcaption></figcaption></figure>

Também é necessário efetuar a liberação via firewall do sistema operacional da conexão remota ao serviço. Tudo isso pode ser feito com um simples e único comando, no prompt do MS-DOS:

```
c:\> netsh firewall set service remoteadmin enable custom 192.168.12.1
```

Onde **“192.168.12.1”** deve ser substituído pelo IP do pfSense®. Isso vai efetuar a liberação do recurso WMI nas estações para consulta remota apenas pelo firewall (o que aumenta o nível de segurança do processo).<br>


# Integrando UserAuth com DC Samba

## **Integração com Controlador de domínio SAMBA**

### Pré-requisitos <a href="#pre-requisitos" id="pre-requisitos"></a>

Para autenticar usuários previamente cadastrados num Servidor PDC SAMBA (com o recurso de **Controlador de Domínio** ativado) no pfSense® com o UserAuth, faz-se necessários alguns pré-requisitos. A maioria das configurações são implementadas no lado do próprio Servidor SAMBA.

Abaixo, descreveremos um passo a passo a ser seguido:

### **PASSO 1**

O primeiro pré-requisito para usarmos autenticação de usuários no UserAuth através de servidor SAMBA, é verificar a versão do pacote no seu servidor Linux. O formato do arquivo de Log interpretado pelo UserAuth só está disponível a partir do SAMBA 4.10, [conforme documentação oficial](https://www.samba.org/samba/history/samba-4.10.0.html)

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F6Po0ALH4jo55MoQ7IP1R%2Fimage.png?alt=media&amp;token=7d4f504e-d476-4a9b-a30a-c743ecc23c0f" alt=""><figcaption></figcaption></figure>

Para verificar a versão do pacote SAMBA instalada no seu servidor Linux, basta executar o seguinte comando (logado como root):

```
    smbd --version
```

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FVafaw56f4JdzMRG4UzdO%2Fimage.png?alt=media&amp;token=f713acba-83a0-4484-a20f-007c5b58edb7" alt=""><figcaption></figcaption></figure>

### **PASSO 2**

O primeiro passo é verificar no servidor SAMBA se a versão do serviço “smbd” já possui suporte a JSON. Para validar este ponto, basta executar o comando abaixo, conforme a [documentação oficial do próprio SAMBA disponível na internet](https://wiki.samba.org/index.php/Setting_up_Audit_Logging).

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FmX2117xBtjZr3GlqWdif%2Fimage.png?alt=media&amp;token=0f7bf956-69f2-4d61-9dab-5288ec52f47c" alt=""><figcaption></figcaption></figure>

```
smbd -b | grep HAVE_JSON_OBJECT
```

Após verificar se o suporte ao JSON está ativado, é necessário ativar o recurso de log incluindo a linha abaixo no arquivo *smb.conf* e reiniciar o serviço do SAMBA.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F8MUQaoDvnb2oMq77OSId%2Fimage.png?alt=media&amp;token=104ff043-c91c-42c1-979f-309852e7098e" alt=""><figcaption></figcaption></figure>

### **PASSO 3**

Neste segundo passo iremos possibilitar ao pfSense® ler os logs do servidor SAMBA. Neste sentido, iremos utilizar o **NFS** – um recurso bem conhecido em servidores Unix-Like. Neste ponto, o pré-requisito é a instalação de alguns pacotes no seu Servidor SAMBA.

O exemplo abaixo aborda um exemplo de comando em servidores Debian/Ubuntu Linux:

```
apt install nfs-util nfs-kernel-server
```

**OBS:** O nome dos pacotes pode variar de acordo com versão da distribuição Linux que vocês está utilizando.

Após a instalação deve-se parametrizar o arquivo ***/etc/exports***. Esta configuração irá implementar uma ACL permitindo a leitura dos logs somente por intermédio do IP do seu servidor pfSense®.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fw5xr484ANRn58gIkz44s%2Fimage.png?alt=media&amp;token=7cd58726-407e-45f5-9e11-eed7f295e29a" alt=""><figcaption></figcaption></figure>

Neste exemplo o IP “192.168.65.1” é o IP do Firewall pfSense® onde o UserAuth está instalado. Após o procedimento o serviço “NFS” precisa ser reiniciado no seu Servidor SAMBA.

Ainda, pode ser necessário (dependendo da configuração atual do SAMBA) alterar a permissão da pasta de logs.

```
chmod +rx /var/log/samba

chmod -R +r /var/log/samba
```

**Arquivo de log**

O arquivo que é lido pela UserAuth para identificar os eventos de autenticação dos usuários no dominio é o ***/var/log/samba/log.smbd***, caso o samba não esteja encaminhando o log dos eventos para este arquivo deve-se aplicar este parâmetro no arquivo de configuração do serviço e reinicia-lo.

```
log file = /var/log/samba/log.smbd
```

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FrKaoqhzuZQRFOfl2AyRd%2Fimage.png?alt=media&amp;token=e7d9f5a9-27b0-40b6-9b46-6b57e177bd7f" alt=""><figcaption></figcaption></figure>

Alem disso, os log gerados pela autenticação podem ser conferidos neste arquivo a cada autenticação.

```
tail -f /var/log/samba/log.smbd
```

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FSyUQRLaEbNlJZXdILgBG%2Fimage.png?alt=media&amp;token=ad62f55e-923a-4be6-898e-187eb1897f0b" alt=""><figcaption></figcaption></figure>

## Configurando Integração com SAMBA <a href="#configurando-integracao-com-samba" id="configurando-integracao-com-samba"></a>

Com todos os pré-requisitos satisfeitos, basta configurar a integração no UserAuth com o Servidor PDC SAMBA. Acesse a aba *Domains* da ferramenta e adicionar uma nova configuração, preenchendo as informações conforme descrição de cada campo.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FLFIKlkI03QkmUQp932Ry%2Fimage.png?alt=media&amp;token=f9a8bbaf-8ed6-4438-8ddd-14a4577f2b92" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FX2Rhpqis2uHwLPnyIReH%2Fimage.png?alt=media&amp;token=1f7b0399-3e49-411e-8cae-749b047e0f22" alt=""><figcaption></figcaption></figure>

Feita a configuração, pode-se acompanhar o status da integração na aba “Logs”. A ferramenta mostrará que foi capaz de montar a unidade remota (NFS) para leitura dos logs.

Neste momento, o UserAuth será capaz de identificar automaticamente os usuários que fizerem login nas estações ingressadas no **PDC SAMBA**, da mesma forma como procede com um Servidor Windows Active Directory.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FPVBf3HhO0n3Oih2ywIs7%2Fimage.png?alt=media&amp;token=56e903f4-d1ed-44c4-aee5-86f293916c45" alt=""><figcaption></figcaption></figure>

<div align="center"><figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FEqrcCahHJZObPsCkrGUs%2Fimage.png?alt=media&amp;token=033b7736-4187-4b34-877f-b5cbd451f925" alt=""><figcaption></figcaption></figure></div>

## Alterando origem dos grupos <a href="#alterando-origem-dos-grupos" id="alterando-origem-dos-grupos"></a>

Para configurar/alterar a pesquisa dos grupos de origem dos usuários para o Servidor SAMBA, basta acessar a dashboard inicial da ferramenta UserAurh e selecionar a opção: “*Samba LDAP groups*”.

<div align="center"><figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F7NYPXGALb2vdcmhQWhtR%2Fimage.png?alt=media&amp;token=5e704477-9f76-4889-8cc9-22f515ac3eb5" alt=""><figcaption></figcaption></figure></div>

Leitura dos usuários nos grupos configurados.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FgCCM9Sy33sfrcI3lUMMx%2Fimage.png?alt=media&amp;token=029dee81-0a3a-4ab4-8171-4833d7457629" alt=""><figcaption></figcaption></figure>


# Integrando o pfSense® com base LDAP do Google

O serviço LDAP do Google Cloud pode ser usado para autenticar usuários no pfSense®. Para isso, são necessários alguns passos dentro da plataforma afim de habilitar e configurar a função.

## Configurar o aplicativo LDAP no portal do administrador do G Suite. <a href="#configurar-o-aplicativo-ldap-no-portal-do-administrador-do-g-suite" id="configurar-o-aplicativo-ldap-no-portal-do-administrador-do-g-suite"></a>

As instruções oficiais podem ser verificadas dentro da [documentação oficial do Google](https://support.google.com/cloudidentity/answer/9048516) ou seguindo os passos abaixo.

**OBS: VOCÊ SÓ NOTARÁ A OPÇÃO DE CONFIGURAÇÃO "LDAP" NO SEU PAINEL ADMINISTRATIVO DO GOOGLE, SE A SUA ASSINATURA DO SERVIÇO POSSUIR ESTE RECURSO. CASO CONTRÁRIO, ESTA INTEGRAÇÃO NÃO SERÁ POSSÍVEL.**

### **1. Configuração da chave para integração.**

Acessando o painel administrativo da plataforma, basta navegar em **“*****Visão Geral -> LDAP -> Adicionar Cliente*****”**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FDxSLZuzSYioielRIbyUt%2Fimage.png?alt=media&amp;token=a7c36882-0e73-4103-998b-38a218ab0fe5" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fvss1vlOiRfDIFy9oBDMu%2Fimage.png?alt=media&amp;token=56516557-19d4-4972-bd9b-d2ece425a885" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fc2c6qtVewWpXkDQjAEzp%2Fimage.png?alt=media&amp;token=529ce2b3-9c52-4691-83c0-e1aa85eb69a8" alt=""><figcaption></figcaption></figure>

### **2. Crie o cliente.**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FHN6rKGttLyqLldwZM5eR%2Fimage.png?alt=media&amp;token=af11fedb-86d6-4e44-a571-28fd32b0d8fc" alt=""><figcaption></figcaption></figure>

Atribua as permissões necessárias para que a integração seja capaz de ler os usuários, grupos e unidade organizacionais cadastrados no serviço do Google. Após o procedimento clique em **“Salvar”**.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FQEFBqPPMGBGOnGBXPiDA%2Fimage.png?alt=media&amp;token=191d769a-99c5-4765-ac8e-334f107723c5" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F7cBtzAqZ937jKSBlsQTE%2Fimage.png?alt=media&amp;token=e32f4e58-30a1-4de7-8a4d-50c045441c13" alt=""><figcaption></figcaption></figure>

Em seguida será exibido na tela o certificado necessário para a integração com o pfSense. Basta baixa-lo e na sequência adiciona-lo no pfSense (detalhes abaixo). Depois disso, clique em **“Continuar para detalhes do Cliente”**.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FjXneNs5DNc2MHHgB2eSf%2Fimage.png?alt=media&amp;token=9111b840-9579-47b5-b6a0-82c25a87256d" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FB2FdH8PpGUY9JDDRkBor%2Fimage.png?alt=media&amp;token=bd212a79-f356-44a9-9d78-4693aa6c83af" alt=""><figcaption></figcaption></figure>

Em seguida será necessário adicionar um usuário para integração entre o G-Suite e o pfSense. Para isso, basta clicar em “Certificados” e na sequencia “Gerar novas credenciais”.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FVMOSPhkdzuBKQOVhAyV8%2Fimage.png?alt=media&amp;token=6a384f56-6339-470f-9cf7-6ace2df13b9c" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FxlDyjwZtOUVvNZYrZgNu%2Fimage.png?alt=media&amp;token=424b8404-b91c-4065-b0a0-98101575aa98" alt=""><figcaption></figcaption></figure>

O próprio Google gerará um usuário e senha.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FMFce2i5l4xiF6h7bsDM2%2Fimage.png?alt=media&amp;token=ab7cc43e-7673-4125-b5c6-a4217caee1f9" alt=""><figcaption></figcaption></figure>

## **3. Ativando a configuração para integração.**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FNEAJRU8ugtJWf1GEWnZG%2Fimage.png?alt=media&amp;token=be7a282e-4c9d-47c0-873b-c1c46e624267" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FjHiFzNMSC0Q90bwyrBeZ%2Fimage.png?alt=media&amp;token=859afc8f-7943-4b93-a358-3cd071845e49" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FtVzPQWpYGi5tu7zG2FMr%2Fimage.png?alt=media&amp;token=ee7ff7bd-a9bb-4b18-a556-c3cd0fc0d15e" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FJmBrBRRzJrMELtLUDA6X%2Fimage.png?alt=media&amp;token=4e202e7e-db55-49f3-a455-6f533238e2db" alt=""><figcaption></figcaption></figure>

Uma vez aplicadas todas estas configurações no G-Suite, podemos nos concentrar nas configurações do pfSense.

## Configuração no pfSense®. <a href="#configuracao-no-pfsense" id="configuracao-no-pfsense"></a>

Este conteúdo também pode ser encontrado na [documentação oficial do pfSense®](https://docs.netgate.com/pfsense/en/latest/recipes/auth-google-gsuite.html).

**Importando o certificado criado no Google**

Para adicionar o certificado exportado da plataforma do Google basta acessar “**System -> Cert. Manager -> Certificates**” e clique em adicionar um novo certificado.

Informe que o mesmo já existe e gostaria apenas de importa-lo.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FkEnFFNuyeuBMV23uTiXZ%2Fimage.png?alt=media&amp;token=144163d4-db10-4edc-8435-b7504a60b8c8" alt=""><figcaption></figcaption></figure>

Descompacte o arquivo baixado e abra-o com algum editor de texto do seu computador.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FduMEzpfntVZqvIFFAOeN%2Fimage.png?alt=media&amp;token=9a29ac12-8442-4a71-9bf9-e7315709600c" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F8GVFzA715PvB6uL1kv3s%2Fimage.png?alt=media&amp;token=b7cba8ce-1fca-4e87-8a23-60a7fadd7c14" alt=""><figcaption></figcaption></figure>

Copie o conteúdo do arquivo .crt (certificado) e cole no campo certificado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fo46ghUt0NszNirU4ULpu%2Fimage.png?alt=media&amp;token=a5617c3b-23d0-4919-b9fa-26afd523db99" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FNUHCFL4doShbiJ7IQrqG%2Fimage.png?alt=media&amp;token=bf614f0f-7c5e-4c9b-9cd3-63c1c374bc26" alt=""><figcaption></figcaption></figure>

Em seguida copie o conteúdo do segundo arquivo .key (Chave) e cole no campo “key data”.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FdsMAW33LxTv8MbWNn6sE%2Fimage.png?alt=media&amp;token=3db8cfc9-7b87-4d77-aa8f-cce285d7fad1" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FdXlCGwDwsi0KyugMR8u3%2Fimage.png?alt=media&amp;token=2695c680-d40a-408e-abf5-bcef2c25d148" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F4a2sjp7QOoz0KVXN8DLl%2Fimage.png?alt=media&amp;token=4b63a9f9-4f96-43f3-a193-b5784e4530ce" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FZUOxV69QYc2BlTSM0Opu%2Fimage.png?alt=media&amp;token=e1c00890-128e-4a2d-8d44-ec5f1beb86f0" alt=""><figcaption></figcaption></figure>

## Instalação e configuração do STUNNEL <a href="#instalacao-e-configuracao-do-stunnel" id="instalacao-e-configuracao-do-stunnel"></a>

O Stunnel é um pacote no pfSense® que adiciona uma camada de criptografia à conexões através de recursos do OpenSSL e SSLeay.

Este pacote esta nos repositórios oficiais do pfsense, para instalar o pacote basta acessar **“*****System -> Package Manager -> Available Packages*****”**, procure o pacote e efetuar a instalação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F6bN3aFr05yKvZclOcnzx%2Fimage.png?alt=media&amp;token=73ca6baa-497e-46a1-b76d-6e9b34667095" alt=""><figcaption></figcaption></figure>

A configuração do pacote é muito simples. Basta acessar **“Services -> STunnel”** e adicionar uma nova configuração:

* **Client Mode:** Informando que é um cliente.
* **Listen on IP:** IP que fará a conexão.
* **Listen on Port:** Porta local.
* **Certificate:** Certificado da plataforma do Google e importado no pfSense®.
* **Redirects to IP:** IP/hostname da plataforma do Google.
* **Redirects to Port:** Porta da plataforma Google LDAPS.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Ft51e7C5CT1A3Qs4lEobv%2Fimage.png?alt=media&amp;token=3cd9ddd1-69b5-4ccd-ae8a-f6dd3657ecfb" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FYAgmI9QdMKEkkjPa4tZP%2Fimage.png?alt=media&amp;token=259b61aa-d721-4cc5-b066-58ab8581b76d" alt=""><figcaption></figcaption></figure>

## Configuração da base de consulta LDAP. <a href="#configuracao-da-base-de-consulta-ldap" id="configuracao-da-base-de-consulta-ldap"></a>

Para adicionar uma nova base de consulta basta navegar em **“*****System -> User Manager -> Authentication Server*****”** e adicionar uma nova base, aplicando as devidas configurações.

<div align="center"><figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FWZcr6LTu9fEY62ekZS0R%2Fimage.png?alt=media&amp;token=07790e90-15de-49b8-886f-905c4dbd6f77" alt=""><figcaption></figcaption></figure></div>

<div align="center"><figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FJXcAnOkSb8NdhIEMkDR6%2Fimage.png?alt=media&amp;token=c81c117a-5baa-4b0f-ae30-c2461552ddb8" alt=""><figcaption></figcaption></figure></div>

Após a inclusão da base, basta aplicar a configuração de autenticação conforme a base desejada.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FcYHFrkg2AnqEGyQ5HYit%2Fimage.png?alt=media&amp;token=ac5171e9-f98d-4d6a-9dd2-5a320e4fa93b" alt=""><figcaption></figcaption></figure>


# Integrando com o padrão OAuth2

Esta é uma forma de autenticação **para quem já possui o padrão OAuth2** definido para autorização.

Como Configuração inicial, basta selecionar dentro do campo *Autentication Source* a opção de **OAuth2 - Autenticate users with OAuth2**.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F2mYzKcXMuV4XlYSlgrW3%2Fimage.png?alt=media&amp;token=4ae8a47b-ce70-415d-b47f-5509d02d9e06" alt=""><figcaption></figcaption></figure>

Em seguida podemos prosseguir com a configuração das opções necessarias para integração.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fg0cvY4EPPfi7kSfH2AV5%2Fimage.png?alt=media&amp;token=ae5fc30c-c59f-4957-bf8f-d3bb8c2fa6a3" alt=""><figcaption></figcaption></figure>

## Detalhes das opções:

**OAuth2 Client Secret:** É uma chave secreta conhecida apenas pelo cliente e pelo servidor de autorização. Esta chave é usada para autenticar o cliente junto ao servidor de autorização durante o processo de obtenção de tokens de acesso. É importante mantê-la segura, já que permite ao cliente provar sua identidade perante o servidor.

**OAuth2 external authentication url:** URL onde os usuários são direcionados para inserir suas credenciais e conceder permissão para que um aplicativo acesse seus recursos protegidos. Este é o local onde a autenticação do usuário ocorre.

**OAuth2 external validation url:** Será o URL que, após o usuário conceder permissão ao cliente, o servidor de autorização pode redirecionar o usuário de volta para o cliente com um código de autorização. Este código geralmente é trocado por um token de acesso no servidor de autorização. O processo de troca do código por um token geralmente não é chamado de "validação externa", mas sim de troca de código de autorização por um token de acesso.

**OAuth2 external token param in redirect url:** URL de redirecionamento do cliente após a autorização bem-sucedida. No fluxo de autorização, após o usuário conceder permissão, o servidor de autorização redireciona o usuário de volta para o cliente com informações como um código de autorização ou um token de acesso anexado à URL de redirecionamento como parâmetros.

**OAuth2 Login Identifier:** Qual campo poderá ser utilizado como identificação do usuário dentro da ferramenta.

**Force E2guardian group:** Nesta opção, você força o usuário autenticado a ingressar num grupo específico do proxy E2guardian. Isso permite definir ACLs padrões (listas de acesso à web) para qualquer usuário pertencente a este perfil (que tenha se autenticado automaticamente).

**Restrict Alias:** Esta opção pode ser utilizada caso queira restringir a autenticação utilizando OAuth 2.0 pelo Captive Portal do UserAuth para algumas redes específicas do seu ambiente. Para isso, essa opção deve conter um Alias com os ranges IPs das redes permitidas no seu ambiente.


# Integração com ambientes WTS

Ao usar o serviço de área de trabalho remota(RDP), uma instância do sistema operacional do servidor pode servir vários usuários com suas próprias sessões. Como todos os usuários estarão compartilhando a mesma instancia do sistema operacional do servidor, por consequência todos estarão compartilhando o mesmo IP de origem.

Nestes casos são necessários efetuar alguns ajustes, de forma que o UserAuth consiga identificar individualmente cada usuário e de fato seja possível aplicar políticas de acesso diferentes.

## Pré-Requisitos <a href="#pre-requisitos" id="pre-requisitos"></a>

Como premissa básica, o sistema operacional que tenha instalado o serviço de área de trabalho remota deve ser 2008 R2 ou superior, pois foi a partir desta versão que a Microsoft implementou o recurso de virtualização de IP.

**Ativar a virtualização de IP no servidor WTS**

Para ativar este recurso, basta modificar as políticas locais do servidor onde o serviço WTS está ativo.

* Abra gpedit.msc
* Navegue até "**Configurações do Computador -> Modelos Administrativos -> Componentes do Windows -> Serviço de Área de trabalho Remota -> Host de Sessão da Área de Trabalho Remota -> Compartilhamento de Aplicativos".** Na política **“*****Selecionar o adaptador de rede a ser usado na Virtualização de IP de Área de Trabalho Remota*****”** configure o IP do servidor WTS.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fg7mG3ybXziY8qaGnbjuC%2Fimage.png?alt=media&amp;token=676130e0-38a5-4dc7-915d-9fc94ffe5ce4" alt=""><figcaption></figcaption></figure>

Em seguida configure o recurso **“Ativar Virtualização de IP da Área de Trabalho Remota”**, selecionando “**Por Sessão**”.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FTpGJvflUwA1ZtdXQtYTZ%2Fimage.png?alt=media&amp;token=3877f029-8a9c-40d5-864d-6a3b61a6a31a" alt=""><figcaption></figcaption></figure>

Após aplicar, force a atualização das políticas locais utilizando o executar (Sistema+R).

```
gpudate /force
```

Com isso cada sessão remota logada, irá receber um IP diferente obtido pelo DHCP.

## **Adicionando a chave de registro para os LOGs**

Para que o UserAuth consiga identificar os eventos dos usuários logados com o recurso de IP virtual é preciso adicionar uma chave de registro no Windows.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F0KueDYNmPc6drv2996VD%2Fimage.png?alt=media&amp;token=7382f8fd-3c32-4aa1-bf84-6cd6e46d2a3b" alt=""><figcaption></figcaption></figure>

**\[HKEY\_LOCAL\_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Microsoft-Windows-TerminalServices-TSAppSrv-TSVIP/Admin]**

### Configurando servidor WTS <a href="#configurando-servidor-wts" id="configurando-servidor-wts"></a>

Com os pré-requisitos cumpridos, basta informar qual servidor WTS será utilizado junto a integração com o AD no UserAuth. Isso pode ser feito através da aba “*Domains*”.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F4amCF9oy0ZfXZRYXn4fA%2Fimage.png?alt=media&amp;token=8f93aa1e-a151-40c3-830d-862de0a3e709" alt=""><figcaption></figcaption></figure>


# Múltiplos Captive Portal

Caso esteja utilizando a integração com controladoras usando o Wispr você pode estar utilizando a opção de múltiplos captive portals para redes diferentes, cada um com a sua personalização.

Navegue até:  **Services -> UserAuth Integration -> General -> Captive portal page customizations**

**Clique na opção "Goto Configuration"**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F9A50CWSCuMYvjADgCJHx%2Fimage.png?alt=media&amp;token=39cbe382-d2f2-4a28-96b2-af4d5f61a72d" alt=""><figcaption></figcaption></figure>

Nesse momento você será levado até a página específica para criação do CP.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F6Ion2DhkZ9MWpPzourKk%2Fimage.png?alt=media&amp;token=b37ed76e-841e-4d71-8150-645e88e77d96" alt=""><figcaption></figcaption></figure>

Para criar basta clicar em **"Add"**

**Aqui temos as definições iniciais:**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FzKemH8bpWwXPhGesqgIQ%2Fimage.png?alt=media&amp;token=ebfe1571-d2b5-43e5-acb3-49a73d72ef1e" alt=""><figcaption></figcaption></figure>

* **Descrição:** Nome para identificar esse CP
* **Filter Type:** Onde será exibido esse CP

  * **Based on client IP (CDIR):** Utilize o IP de cada dispositivo

  <figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fmw0ym96fiL4vzTvsHS02%2Fimage.png?alt=media&amp;token=2ecba32f-1c0f-43b4-9611-bacc84591ec6" alt=""><figcaption></figcaption></figure>

  * **Bases on URL request Field:** Utilize o MAC do dispositivo

  <figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fy3hex0POiVX6bwQcPdAF%2Fimage.png?alt=media&amp;token=52ff6cac-a3f4-4ccd-9214-98a9876bb885" alt=""><figcaption></figcaption></figure>

Agora vamos para a personalização exclusiva desse CP, as opções são as mesmas do Captive Portal padrão, para saber mais [**clique aqui**](/configurando-o-seu-userauth/configuracao-padrao/personalizacao-do-captive-portal-do-userauth)

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fzb13dj48O5Cf1hG1GkP0%2Fimage.png?alt=media&amp;token=8a3b32ad-9437-4cf4-8cdb-149dc4b24dfe" alt=""><figcaption></figcaption></figure>

Após o termino da configuração acima citada, clique em **"Save"** e inicie o cadastro do próximo CP utilizando os mesmos passos.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fe0KZe75ZEVJvU19u3x30%2Fimage.png?alt=media&amp;token=c5fb2486-31cb-4f21-8843-efae3a449afc" alt=""><figcaption></figcaption></figure>


# Integrando com o AD para autenticação via Captive Portal do pfSense

## Selecionando tipo de integração <a href="#selecionando-tipo-de-integracao" id="selecionando-tipo-de-integracao"></a>

A primeira alteração que devemos fazer é a troca da interação do captive portal com o portal da própria ferramenta (forward), para o pull and push, que é a comunicação com o portal do pfSense® (na questão de interação, principalmente para quem usa AD, a melhor opção é o forward, por ter a possibilidade de efetuar a autenticação por LDAP).

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FyEuyIua5pGJBPLRwz83u%2Fimage.png?alt=media&amp;token=c3aa5f55-c66d-4d14-8868-41f6f0229edc" alt=""><figcaption></figcaption></figure>

Na verdade ao tentar colocar o pull and push, ele obriga a ter um captive portal do pfSense® configurado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F4gymwvPWhiMfPBV9ZWLz%2Fimage.png?alt=media&amp;token=eb205c8b-0cd0-4537-84c9-371861283903" alt=""><figcaption></figcaption></figure>

## Criamos um captive portal <a href="#criamos-um-captive-portal" id="criamos-um-captive-portal"></a>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FAT6Vn8iKnVhoN9PQFrbt%2Fimage.png?alt=media&amp;token=39640efe-c3a3-4838-9b35-920d57bd0929" alt=""><figcaption></figcaption></figure>

Configuramos ele na LAN

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FSy6FahNb7KvJfsyFb3Be%2Fimage.png?alt=media&amp;token=2aec991d-246f-4462-96ba-de0a16124f8f" alt=""><figcaption></figcaption></figure>

## Tipos de autenticação do Captive Portal <a href="#tipos-de-autenticacao-do-captive-portal" id="tipos-de-autenticacao-do-captive-portal"></a>

Configuramos a autenticação por usuários locais ou voucher, e salvamos, efetuando uma configuração bem simples nele.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FVwMWjNTSpl0F1CD5It2l%2Fimage.png?alt=media&amp;token=81db24a2-0ac9-4816-9297-231a014e2cd0" alt=""><figcaption></figcaption></figure>

## Configurando UserAuth para Captive portal do pfSense® <a href="#configurando-userauth-para-captive-portal-do-pfsense" id="configurando-userauth-para-captive-portal-do-pfsense"></a>

Agora sim, podemos configurar o UserAuth como pull and push, e selecionamos o Captive portal LAB.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FIkOwivuQvZk4yFEYE28c%2Fimage.png?alt=media&amp;token=22f54b67-0b46-46e5-bfea-dbde17bf537b" alt=""><figcaption></figcaption></figure>

## Efetuando testes <a href="#efetuando-testes" id="efetuando-testes"></a>

Agora para efetuarmos os testes vamos matar as conexões existentes dentro do UserAuth, e efetuar um logoff/logon das maquinas virtuais.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FnSeFK9o9olnUZnq8if9e%2Fimage.png?alt=media&amp;token=49a51cb0-1813-438c-b3d6-522552194f01" alt=""><figcaption></figcaption></figure>

Efetuamos o acesso novamente da máquina virtual.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FazyxXylx095Hlcdeh8P4%2Fimage.png?alt=media&amp;token=f01d40a0-9fcc-495f-bb6b-a94e85778777" alt=""><figcaption></figcaption></figure>

E podemos verificar que nos logs do UserAuth ele já aparece como usuário adicionado e redirecionando para o portal captive do pfSense®

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fb68ZIEBvqq1E427OhmF9%2Fimage.png?alt=media&amp;token=f823f4d2-7d9d-4fcb-add1-f8b6e386a351" alt=""><figcaption></figcaption></figure>

Também no status do captive portal, podemos verificar que o usuário já aparece como logado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F2LEOUZgzP0dGcBOMZWQ9%2Fimage.png?alt=media&amp;token=40c655bd-27df-46fa-8d31-f8f1df81aa71" alt=""><figcaption></figcaption></figure>

Podemos verificar que como está logado, as páginas já estão carregando.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FYwWaioDtrUpxFAGrWf6y%2Fimage.png?alt=media&amp;token=50694328-93d7-4b6e-a8bf-659dd0e6fb32" alt=""><figcaption></figcaption></figure>

Já com a máquina virtual Linux, que não está no AD, ao atualizar a página, já é redirecionado para o captive portal do pfSense®.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FZGjWzB6zUgsdWyQXlxIx%2Fimage.png?alt=media&amp;token=05f48386-86af-4db1-99ea-0a92c77ad035" alt=""><figcaption></figcaption></figure>

Para não ter de adicionar os usuários no grupo do captive portal do pfSense®, vamos nas configurações do mesmo e remover a opção que obriga ao usuário estar adicionado, e salvamos.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F1dWPOWevlrPbgF5etRt7%2Fimage.png?alt=media&amp;token=8171a4a3-f342-43b6-a3c0-4b31de9ed47e" alt=""><figcaption></figcaption></figure>

Agora, com a configuração de acesso de admin do pfSense®, já conseguimos efetuar o acesso.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fsp5cCzoRoUoD2axhr5Gi%2Fimage.png?alt=media&amp;token=1cafef51-3632-4ed1-a87b-de5e5a9489e8" alt=""><figcaption></figcaption></figure>

Verificando no status do Captive portal, já podemos verificar o novo acesso, e como não foi feito pelo AD, ele importa até as informações do MAC Address (em redes grandes, com muitos equipamentos de distribuição de rede, muitas vezes os dados do MAC não são importados).

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FT8HxsAlbp0R7486KryT1%2Fimage.png?alt=media&amp;token=a619425a-d8d2-4356-9318-07229507f3e0" alt=""><figcaption></figcaption></figure>

Verificando nas sessões ativas do UserAuth, podemos verificar que que ambas as conexões estão ativas, e funcionais.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FqS8B5ABHcTHsKGcSkYxT%2Fimage.png?alt=media&amp;token=d31d706e-7d99-4e10-b0c7-e61b3e68a576" alt=""><figcaption></figcaption></figure>


# Integrando com o Wispr

O WISPr (Wireless Internet Service Provider roaming) é um protocolo desenvolvido para permitir o roaming de usuários de serviços de internet sem fio. Ele facilita a autenticação e a gestão de conexões em redes Wi-Fi, especialmente em ambientes onde múltiplos provedores de serviços de internet (ISP) estão disponíveis.

Para configuração da integração acesse **General -> Wispr integration options.**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F6NsU5Z8nnjLzB19Ro3Ku%2Fimage.png?alt=media&amp;token=30390832-5e26-4743-9167-b91aadfebe9a" alt=""><figcaption></figcaption></figure>

Primeiramente, é necessário ativar selecionando a opção "Enable".

* **Wispr url fields:** Deve ser informado os campos retornados na requisição do protocolo, em caso de duvidas deve ser consultado o manual do equipamento.
* **Force client recoonect after first access:** Em alguns casos, o equipamento exige uma reconexão após a autenticação para liberar a navegação.
* **Wifi controller api username/password**: Dados de login para consulta de dados no equipamento.
* **Wifi controller api token refresh**: Tempo de refresh para o token de consulta no equipamento.
* **Keep mac authentication after session timeout:** Após o timeout, o mac do usuários poderá ser removido da base RADIUS.

## Configurando o  RADIUS

Para integração entre um equipamento usando Wispr com o UserAuth é necessario instalar e configurar o RADIUS.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FadzStVf89sKF0c26SvM7%2Fimage.png?alt=media&amp;token=ec388a92-8a14-4a9c-88a2-3a5815c1d8e5" alt=""><figcaption></figcaption></figure>

Após instalado, acesso pelo menu Services -> FreeRADIUS, acesso o meno NAS/Clients e para configurar clique em ADD.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FzSC0xy1UWCov1YeUSlxR%2Fimage.png?alt=media&amp;token=504c6e7d-94a5-4db6-81c3-fe23be927dc6" alt=""><figcaption></figcaption></figure>

Para configuração deve informar o IP, username e senha configurados no equipamento.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FAibNsL0scmtyMmkvnsGC%2Fimage.png?alt=media&amp;token=6668a254-533d-4461-9ffd-05a6b4eaba2f" alt=""><figcaption></figcaption></figure>

Em Interfaces, é necessario criar as configurações para as portas usadas para comunicação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fcj7Q5MXb2AUd7oGcGF8z%2Fimage.png?alt=media&amp;token=33f4f137-0a4f-4319-8ba1-eed36214c103" alt=""><figcaption></figcaption></figure>

A porta 1812 será usada para autenticação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fv8GTNYKeqqZfViecQZDb%2Fimage.png?alt=media&amp;token=5f8b4a8b-d9df-47b3-a714-daab904d8a67" alt=""><figcaption></figcaption></figure>

A porta 1813 será usado para comunicação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fzqfm9HOBK1oh1bVfTCta%2Fimage.png?alt=media&amp;token=afb954d1-dbf0-4383-ad74-f5302688ecf4" alt=""><figcaption></figcaption></figure>

Realizado esta configurações, as comunicação será realizada e o usuários autenticado no userauth.


# Escolha o Seu Filtro de Acesso

Nesse ponto precisamos escolher o tipo de filtro a ser utilizado.

Importante entender que após a escolha, os caminhos serão diferentes e portanto seguem as suas devidas configurações.


# Filtro DNS com Bind


# Ativando Filtro DNS com Bind

O UserAuth possui a possibilidade de integração com o Bind9, uma ferramenta poderosa para resolução de nomes na internet.&#x20;

Podemos aplicar filtros na camada de DNS, implementando políticas de acesso para [grupos específicos](/configurando-o-seu-userauth/escolha-o-seu-filtro-de-acesso/filtro-dns-com-bind/grupos-de-acesso-do-userauth) configurados no UserAuth.

## Configuração Inicial <a href="#configuracao" id="configuracao"></a>

Para configurar essa integração, basta acessar: **Services -> UserAuth Integration -> General** &#x20;

Navegue até a opção "**Dns/Bind9 Integration Settings"**.

**Integrate with Bind9 dns:** Agora vamos ativar a integração, marque a opção **"Enable - Integrate userauth to bind9 package".**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FcBfGucskm8mw0cEQUQ2p%2Fimage.png?alt=media&amp;token=0a00b107-e37f-45c5-80a9-c461342c8829" alt=""><figcaption></figcaption></figure>

Desça até fim da página e salve as alterações.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FeNXV1fejSfb0AVF1LVYL%2Fimage.png?alt=media&amp;token=7ce73d18-7a7d-4522-86ac-f14036c6effc" alt=""><figcaption></figcaption></figure>

Após realizar os passos acima, vamos voltar para o mesmo local e clicar em: **"configure bind package"**

Isso aplicará uma configuração básica na ferramenta e ativará de fato a integração.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FCpkcmMsfwozC7ot6nffT%2Fimage.png?alt=media&amp;token=a4663526-84f1-43e0-99d3-65fae1b3a47d" alt=""><figcaption></figcaption></figure>

**Forward blocked sites to:** Configuração para retorno de acesso bloqueado, sempre deve ser mantido o **0.0.0.0**, ou seja o próprio firewall.

**Subdomains as wildcard:** Nesse campo você pode indicar o nível de subdomínios que serão verificados.&#x20;

Por padrão, sempre será aplicado o valor 3, que corresponde por exemplo a "**conexti.com.br**", ao selecionar 3, identificará também acessos do nível 2, como por exemplo, **"conexti.com"**.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FQQr1kCqfoBaKHVb8zKXz%2Fimage.png?alt=media&amp;token=601718df-f157-4edc-b8e7-7f7d157df8a5" alt=""><figcaption></figcaption></figure>

Logo abaixo, temos alguns atalhos:

**Goto DNS Logs**: Se desejar verificar os logs do Bind;

**Goto Bind DNS Config**: Verificar a configuração aplicada dentro do Bind.

## Ajustes no Bind

Agora vamos realizar alguns pequenos ajustes, navegue até: **Services -> Bind -> Settings**

**Altere somente as opções informadas:**

**IP Version:** Manter selecionada a opção **"IPv4"**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FinxChfnfLNwqzce3c6L4%2Fimage.png?alt=media&amp;token=88e5df3c-f920-4e61-8beb-eb07fe4cabab" alt=""><figcaption></figcaption></figure>

Agora vamos até o fim da página

**DNSSEC Validation:** Manter selecionada a opção OFF.

Deixamos em "OFF" para ativar o perfeito sincronismo entre os dispositivos ingressados no domínio e o seu servidor AD, ou seja, em caso de encaminhamentos/consultas de GPO e afins.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FjGpZ9RMUc8Wy4glO9YSS%2Fimage.png?alt=media&amp;token=6ec309b0-1b73-4bb7-a486-f58843481ef5" alt=""><figcaption></figcaption></figure>

Após realizar os ajustes acima clique em **"Save"**


# Integração AD

## Configuração do DNS no AD

Para a integração de um dominio com o  Userauth, deve ser realizado a configuração do DNS no AD. Nesta configuração, deve ser indicado o IP da interface do firewall como DNS principal do AD, conforme a imagem abaixo.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FAxSnnCOlT2F9xeg0xK9f%2Fimage.png?alt=media&amp;token=7de69fdd-5243-49e9-9ee0-138ae53263fd" alt=""><figcaption></figcaption></figure>

## Configuração do Forward

Agora vamos criar uma regra para efetivar o sincronismo entre os dispositivos e o AD.

Navegue até: **Services -> Bind -> Zones**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FKOE4XqDjcUS9bYehvkEw%2Fimage.png?alt=media&amp;token=89e9e27f-d013-4456-a78b-cf6a40a5fa81" alt=""><figcaption></figcaption></figure>

Clique em **"+ Add"**

**Zone Name:** Nome do domínio que será realizado a integração;

**Description:** Descrição para identificação da regra;

**Zone Type:** Marque a opção "Forward";

**View:** Marque a opção Localnets.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F7k57kf9LKqgKBBGoF1RT%2Fimage.png?alt=media&amp;token=1b544b11-9b60-4b08-afc4-e5cf40a925f8" alt=""><figcaption></figcaption></figure>

Logo abaixo temos a opção **"Forward Zone Configuration"**

**Forwarders:** Adicione o endereço IP do seu AD, caso tenha mais de um AD, adicione **;** entre os IPs.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F30ne0DOKj5ethSxykdMC%2Fimage.png?alt=media&amp;token=036d5d4a-15a5-479e-bbae-b8696a370f29" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FzofNjCOTA1O983nNe7cH%2Fimage.png?alt=media&amp;token=b6d7dba7-5bde-4630-924b-87693c9a78ee" alt=""><figcaption></figcaption></figure>

Após realizar os ajustes, pode salvar.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F8kqiWtpmBG9EF406FgKa%2Fimage.png?alt=media&amp;token=91376f64-e690-42d4-bd6f-2cd3a271f9bb" alt=""><figcaption></figcaption></figure>


# Apontamentos DNS Internos com BIND

## Criando a regra

Vamos criar uma regra nas "Zonas" do Bind para apontamentos internos.

Navegue até: **Services -> Bind -> Zones**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F1LCWTOzxS8WPJAeGYFiA%2Fimage.png?alt=media&amp;token=b8be36c2-38c0-47b0-8966-f7de3c80489f" alt=""><figcaption></figcaption></figure>

Clique em **"+ Add"**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FtfSxhZ3AurB1b7iZ4CN9%2Fimage.png?alt=media&amp;token=a6719561-0a48-4f3f-9994-8ce688dcfceb" alt=""><figcaption></figcaption></figure>

**Zone Name:** Nome para identificação da regra, mas nesse caso é importante adicionar **".rpz"** no final;

**Description:** Descrição para identificação da regra;

**Zone Type:** Marque a opção "Master";

**View:** Marque a opção Localnets.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Faz5bMw63lWmVSekR1tF2%2Fimage.png?alt=media&amp;token=0283f7fb-a43e-497a-9098-13a2f1c02816" alt=""><figcaption></figcaption></figure>

**Response Policy Zone:** Marque apenas essa opção para ativar a regra com o mecanismo de "Política de resposta",

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FTOM75Ob6qpBmvmZCJj4W%2Fimage.png?alt=media&amp;token=ce58e1bf-d105-4f42-985f-df7d7e0b7424" alt=""><figcaption></figcaption></figure>

**Name Server:** Adicione um domínio interno que fará parte da regra;

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fhe3NCT8Zv6Pk81XgFouA%2Fimage.png?alt=media&amp;token=f23ea954-42d3-48a4-9ce8-02c4bfc4dade" alt=""><figcaption></figcaption></figure>

**Allow-query:** marque a opção **"localnets"**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FKcnJee0lx5OVBLX4QcNM%2Fimage.png?alt=media&amp;token=b520efa8-fe72-4cdc-952f-4744eb4b8d8e" alt=""><figcaption></figcaption></figure>

Nesse momento você pode criar os apontamentos internos que você necessita, criamos como exemplo alguns modelos.

Um adento importante: Você vai criar aqui todos os DOMÍNIOS, cada um com o seu apontamento.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FUR7Cw4JqWbKabkqOLnbk%2Fimage.png?alt=media&amp;token=a271e503-5344-4d88-a608-62b6a4c4b952" alt=""><figcaption></figcaption></figure>

Após realizar todos os seus apontamentos INTERNOS, pode salvar.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FwJY90VuVEwWGetNOCguR%2Fimage.png?alt=media&amp;token=ed56f410-3de3-49c3-b499-8f63e2447a4e" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FHnqY1OnwUA4ZA8w1teg3%2Fimage.png?alt=media&amp;token=b9bdee91-6a5f-401f-b64e-00a59c9c9d48" alt=""><figcaption></figcaption></figure>

## Ativando os apontamentos para os grupos

Após criar a regra acima descrita, precisamos informar ao UserAuth que esses apontamentos serão necessários para determinados grupos.

Navegue até: **Services -> UserAuth Integration -> Local Groups**

Edite o grupo escolhido, caso você ainda não tem grupo, pode ser criado [clicando aqui](/configurando-o-seu-userauth/escolha-o-seu-filtro-de-acesso/filtro-dns-com-bind/grupos-de-acesso-do-userauth)

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FkHstlxADdRXUfg2hpgwt%2Fimage.png?alt=media&amp;token=a31c232f-bac4-417b-993d-cecf85f6f0ad" alt=""><figcaption></figcaption></figure>

Já dentro do grupo, vamos ter a opção:&#x20;

**Aditional Bind Zones:** Ao marcar um apontamento interno criado no Bind, **o UserAuth vai ativar a verificação** para todos os usuários **pertencentes nesse grupo.**

**IMPORTANTE:** **Não ativar** apontamentos **externos**, **somente os internos**, nesse caso da imagem **"local.rpz".**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FdPHdzL7CuQsc4ecw3WT0%2Fimage.png?alt=media&amp;token=3aa4cb5a-bb7c-4910-89de-bd869e6ed0a5" alt=""><figcaption></figcaption></figure>

Após isso pode salvar.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FHniubJlvmbK9kCKfa8uC%2Fimage.png?alt=media&amp;token=d26e6b2e-e3a3-4bc0-bc79-ffbce3cd9e35" alt=""><figcaption></figcaption></figure>


# Configuração WPAD

## Ajustes

Essa configuração é exclusiva para utilização com o filtro DNS em conjunto com o Bind.

Acesse a aba "General" do UserAuth: **Services&#x20;*****->*****&#x20;UserAuth Integration&#x20;*****->*****&#x20;General**

Siga as configurações conforme a numeração abaixo.

1. **Captive portal Interfaces(s):** Selecione a interface onde será aplicado o filtro.
2. **Captive portal bypass:** Por padrão, a ferramenta alimenta como *No bypass*. Neste campo, poderá ser selecionado qualquer alias com IPs das interfaces selecionadas no campo de *Captive portal interfaces* para não exigirão autenticação, e consequentemente não serão filtrados.
3. **Wpad configuration:** Com os parâmetros acima devidamente selecionados e salvos, a configuração da instância WPAD já pode ser automatizada.

Clique no botão **"Create wpad Configuration"**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F4r9cr4JMEWSCx1w8htYy%2Fimage.png?alt=media&amp;token=7066f643-34b1-4f98-aef0-2482edafaf04" alt=""><figcaption></figcaption></figure>

Ao executá-lo, será automaticamente criada uma instância no serviço WPAD.

**OBS:** Como sugerido na descrição do campo, deverá ser alterado a porta de gerencia do firewall.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FAWnGzID46J8a6pF0ZjwB%2Fimage.avif?alt=media&amp;token=ec61fb24-bfe0-4a3f-be53-187bd32fd920" alt=""><figcaption></figcaption></figure>


# Grupos de acesso do UserAuth

## **Configuração de Grupos do UserAuth** <a href="#configuracao-de-grupos-do-userauth" id="configuracao-de-grupos-do-userauth"></a>

Esta é a configuração utilizada para aplicar listas para controle de acesso (ACLs) à internet para os usuários.

Vamos utilizar os grupos **criados no UserAuth,** **somente quando** estamos com a integração com **"Filtro DNS"**, portanto **não pode ser utilizado** em conjunto com o **Proxy E2guardian**.

## Criando os grupos

Navegue até: **Services -> UserAuth Integration -> Local Groups**

Clique em **"+Add"** para criar um novo grupo local no UserAuth.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fdp130cxyPHuk7Iwa1SQg%2Fimage.png?alt=media&amp;token=35588a8a-ced6-441e-9111-4a2e7d7a2efb" alt=""><figcaption></figcaption></figure>

**Group Name:** Nome do grupo, importante lembrar que não deve ser utilizado **caracteres especiais,** além disso manter no **máximo 15 caracteres.**

**Group Description:** Descrição do grupo.

**IMPORTANTE:** o **nomes precisam** ser idênticos aos criados dentro do "DC Active Diretory", "DC Samba" ou "E2guardian", dependendo da origem dos grupos marcados na opção de [Source Groups.](/configurando-o-seu-userauth/configuracao-padrao/configurando-origem-de-grupos)

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F1mQ1SsrVOaaNCmrq8UJw%2Fimage.png?alt=media&amp;token=48950c3c-8e13-41f5-92eb-0f182790c158" alt=""><figcaption></figcaption></figure>

* **Group Users:** Os usuários pertencentes ao grupo em questão, só serão alimentados em caso de uma configuração local, nos demais casos, a informação será consultada na integração (AD, Samba e etc);
* **Group Cdir:** Existe a possibilidade de configurar um intervalo de rede específico para este grupo. Todos os usuários com IPs dentro desta faixa terão a política deste grupo aplicada.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FCObdKqMH9LLqvy4rB5Ri%2Fimage.png?alt=media&amp;token=c8a400cd-4809-45f8-bfc5-83d43e14583a" alt=""><figcaption></figcaption></figure>

## **Opções de filtro DNS para o grupo** <a href="#opcoes-de-filtro-dns-para-o-grupo" id="opcoes-de-filtro-dns-para-o-grupo"></a>

Nestes parâmetros, serão atribuídas as política de acesso designadas para este grupo.

Inicialmente vamos precisar selecionar a opção que será a base de funcionamento para o grupo, no caso qual será o filtro principal, essa definição é escolhida em: "***Forward to"***.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fju8CxrxHVh56v2ryB4Ng%2Fimage.avif?alt=media&amp;token=a82ccb40-601c-4724-908a-462475aaed57" alt=""><figcaption></figcaption></figure>

Dentre as opções, temos como base as seguintes opções:

* **Cloudflare**
* **Quad9**
* **OpenDNS**

Basicamente são utilizados para os filtros de bloqueio direto a **"malwares"** e "**conteúdo adulto"**.

Ainda em **"*****Forward to"*** temos:

* **No Redirection or restrictions:** Será respeitado o DNS configurado na estação, portando não será redirecionado para nenhum serviço externo **(Cloudfare, Opendns e etc).** no entando as listas customizadas de bloqueio serão atendidas.
* **Restrict mode - Permit only sites listed on domains list:** Essa opção é utilizada para "**bloqueio total"**, liberando acesso somente à listas adicionadas nos parâmetros **(ConexTI lists e Domains).**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FH3FhpQAzzdwVCoTODM3t%2Fimage.avif?alt=media&amp;token=6e9d0247-0d43-4fb3-baa9-aa14f595af53" alt=""><figcaption></figcaption></figure>

## Opções de listas <a href="#opcoes-de-listas" id="opcoes-de-listas"></a>

* **ConexTI list:** Listas disponibilizadas pela ConexTI, que são frequentemente utilizadas para definir o bloqueio ou liberação de categorias de forma simples, dependendo claro da seleção da funcionalidade básica em "***Forward to"*****.**
* **Exclude from CNTI List:** uma lista de exceção, caso deseje bloquear uma categoria de maneira geral e liberar apenas um domínio dentro da categoria.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FzZQEunrnPjRAxJwldHbR%2Fimage.avif?alt=media&amp;token=8648be4d-9c16-469e-81b6-767aab187f58" alt=""><figcaption></figcaption></figure>

* **Safe Search:** Nesse campo podemos marcar a integração com os mecanismos de busca e provedores de conteúdo online, estes por sua vez podem filtrar e remover resultados de pesquisa que possam conter material considerado inadequado ou explícito, como pornografia, violência ou linguagem ofensiva.
* **Aditional Bind Zones:** Aqui pode ser ativada a verificação nos apontamentos internos criados no BIND. **IMPORTANTE:** Somente selecionar nessa opção os apontamentos "locais".&#x20;

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FtKtBORdje9aCDTReBPx5%2Fimage.png?alt=media&amp;token=a834186d-bbb6-492e-8358-46bebb35edf5" alt=""><figcaption></figcaption></figure>

**AD Queries Forward:** Quando integrado com o AD, este campo será utilizado para encaminhar qualquer consulta de domínio para os respectivos controladores configurados na guia **"domains"** da ferramenta.

**Domains:** Lista de domínios adicionados manualmente, que poderá ser utilizada tanto para bloqueio como para liberação, dependendo do que for selecionado no campo Forward to.

## Criando aliases para os grupos

Para cada grupo criado, vamos precisar de um alias com o mesmo nome.

Navegue até: **Firewall -> Aliases -> IP**

Clique em **"+Add"**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FCqpv0ovPwJRE5hnks4wy%2Fimage.png?alt=media&amp;token=7356e639-179b-45a5-ad91-2f1bbd2defa5" alt=""><figcaption></figcaption></figure>

Adicione o nome e a descrição idênticos ao grupo criado nos passos acima.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FDz3ReKler6Yz1WXhT3PO%2Fimage.png?alt=media&amp;token=74ba162c-b1e0-4b10-aa9c-ab0167f9faed" alt=""><figcaption></figcaption></figure>

Após isso pode salvar e criar o restantes dos **"Aliases"**, seguindo a quantidade de grupos que você possui.


# Relatórios de acesso do UserAuth

## Configuração dos logs UserAuth <a href="#configuracao-dos-logs-userauth" id="configuracao-dos-logs-userauth"></a>

Na versão 4 do UserAuth foi aberta a possibilidade de gerar relatórios dos acessos, utilizando os domínios e FQDNs que são identificados quando se utiliza a integração com filtro DNS.

Para ativar essa funcionalidade, basta navegar até a opção "**Logs"** na guia **General** do UserAuth.

Será necessário configurar a integração com o serviço DNS e paramentos de logs do pfSense®. Configurados na pagina inicial do UserAuth, configuração de **Logs**.

* **Integrate userauth authenticated user to pfSense logs:** Adiciona o nome do usuario aos registros do lo&#x67;**.**
* **Add fqdn to destination:** Adicionará o fqdn nos logs gerados pelo UserAuth, sendo um requisito ter o NGRules ativo;
* **Add rule description:** Adicionará nos logs a descrição da regra criada para identificar o acesso;

Ao selecionar está opçõa, se faz necessario adicionar a descrição ao configurar a regra.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fq71Fd9WRNC6Lix8OSpP3%2Fimage.png?alt=media&amp;token=3cb5a9b2-0fba-4f13-8ae6-27d15e88af7c" alt=""><figcaption></figcaption></figure>

* **Add DNS/bind9 resolution logs:** Inclui os logs de DNS;
* **Logs Volumetry:** Adiciona volumetria aos logs;
* **Remote syslog:** Integração de um servidor de Greylog externo;
* **Parallel log monitor:** Configuração de quantidade processos máximo para processamento dos logs.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FCEyptoDaRuOMF4LnTVfR%2Fimage.png?alt=media&amp;token=783da648-5f68-4a63-905a-8cef545c93d0" alt=""><figcaption></figcaption></figure>

**Patch Configuration:** Aqui temos duas opções:

* **Enable userauth in Sarg:** Nessa opção podemos realizar a integração dos logs entre o UserAuth e o Sarg, permitindo assim uma opção a mais para o gerenciamento dos relatórios;
* **Remove log duplicate:** Essa função foi criada para melhorar os logs do próprio pfSense, que trás por padrão informações de acessos duplicadas.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FuBh29dVSrbRwRa8vGhIy%2Fimage.png?alt=media&amp;token=2823a569-2b8b-4ea8-95e9-d8c9eb0efc6d" alt=""><figcaption></figcaption></figure>

**Send logons to syslog:** Neste campo pode ser configurado um servidor de logs externos, como por exemplo um Greylog, basta adicionar o IP dele e a ferramenta fará o envio das informações de acesso.

**Logons Log Retention Count:** Se trata do número de dias que os arquivos de logs de login serão retidos antes que a cópia mais antiga seja removida durante a rotação.

**Shipping Format send logons:** Formato que o log pode ser encaminhado para um servidor externo.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F2JP7DLjyCV4Mffciv5xC%2Fimage.png?alt=media&amp;token=d2028022-6ba7-4a99-8c3f-ab0ae638e78d" alt=""><figcaption></figcaption></figure>

## Configuração dos logs no pfSense® <a href="#configuracao-dos-logs-userauth-1" id="configuracao-dos-logs-userauth-1"></a>

Será necessário, inicialmente, aplicar uma configuração dentro dos logs do pfSense® ***"Status -> System Logs -> Settings"***, visto que a ferramenta apenas visualiza o que o pfSense® gera.

Nesta mesma tela de configuração existe a possibilidade de seguir diretamente para a tela de configuração, basta clicar em "**Goto pfSense system log config page".**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fm2xeToWuujb2gCQJvE3j%2Fimage.avif?alt=media&amp;token=a723be1c-417f-4eeb-ae99-0500d5de19d7" alt=""><figcaption></figcaption></figure>

**Agora siga a ordem de ajustes abaixo:**

* **Log firewall default block:** Vamos desabilitar os logs padrão de bloqueio.
* **Forward/Reverse Display:** Vamos ativar  essa opção de exibição

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FscacwMmBvHM2Gx5sqsUS%2Fimage.avif?alt=media&amp;token=9b0c8a07-8f8a-4b1a-a3d1-91f92a5698e2" alt=""><figcaption></figcaption></figure>

* **Log Rotation Size:** Altere o tamanho do arquivo de Logs, lembrando que o tamanho é definido por (Bytes), importante tomar cuidado na hora da conversão.

Na imagem abaixo temos como exemplo  "512000000 KB" convertendo isso para MB da um total de "500MB"

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F9Tei8afCoLEBQvNrsCIE%2Fimage.avif?alt=media&amp;token=8eb7a056-1e1d-4a6d-b48d-1fe18cfdae08" alt=""><figcaption></figcaption></figure>

## Relatórios de acessos <a href="#configuracao-dos-logs-userauth-2" id="configuracao-dos-logs-userauth-2"></a>

Após realizar todas as configurações acima citadas, será possível consultar e exportar os logs dos acessos.

&#x20;Basta acessar a guia **"Logs"** do UserAuth.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FaqMFgkCJB0QJOr3DmN0p%2Fimage.avif?alt=media&amp;token=063a6ea1-0839-4fac-9c32-c617e8dc7a5f" alt=""><figcaption></figcaption></figure>

Dentro da guia "Logs" temos 3 opções que podem ser vistar na imagem acima:

* **Firewall:** Essa opção trás os logs dos acessos do usuários;
* **UserAuth:** Nessa opção é possível visualizar os logs do próprio UserAuth;
* **User History:** Histórico de login e logoff dos usuários.

## Logs -> Firewall <a href="#configuracao-dos-logs-userauth-3" id="configuracao-dos-logs-userauth-3"></a>

Nessa tela será possível visualizar os logs dos acessos, para tal, você pode utilizar algumas opções de filtros:

* **Max lines:** Quantidade de linhas apresentadas em tela;
* **Firewall Logs Files:** Selecione quais arquivos de banco de dados você deseja usar em sua pesquisa, sendo possível mais de um para exibição;
* **Update Interval:** Com que frequência as entradas de log são atualizadas;
* **String Filter:** Filtro de informações no log, ao clicar em obter ajuda serão apresentadas algumas opções de filtros, para a descrição destas opções avançadas de filtro acesse nesse manual "**Opções avançadas para filtro de logs"**;
* **String Filter Limit:** Tamanho máximo para o conteúdo filtrado;
* **Export Logs:** É possível exportar os registros exibidos na tela utilizando as opções de CSV e HTML. Ao selecionar a opção "Arquivo Completo", será realizado o download do arquivo completo do dia, porém sem formatação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FFlc6OOYNAAelXixLyjjJ%2Fimage.png?alt=media&amp;token=0c670fcc-4f68-471a-b35f-868c4ed23f30" alt=""><figcaption></figcaption></figure>

Nos registros deste log, que serão exibidos em tempo real, serão informados o país de origem e destino da conexão, através da bandeira.

Ao clicar no IP de destino ou origem, duas abas serão exibidas logo acima, informando em qual tabela/alias o IP clicado está presente e a quais regras ele pertence.

Para entender como utilizar filtros avançados, clique [aqui](/configurando-o-seu-userauth/escolha-o-seu-filtro-de-acesso/filtro-dns-com-bind/relatorios-de-acesso-do-userauth/utilizacao-avancada-relatorio-com-userauth).

## **Logs -> UserAuth**

**Aqui temos algumas opções de filtros, mas são basicamente os mesmo acima informados.**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FjWq8EM58KMRYqIwcPv92%2Fimage.png?alt=media&amp;token=49e731ab-2f86-4063-a6c0-2189f89e6b95" alt=""><figcaption></figcaption></figure>

### Firewall logs

Nos campos abaixo temos os registros com as informações relacionadas a licenças do pacote, vencimento, além da quantidade de usuários conectados.

Caso você tenha integração com o AD, serão exibidas informações relacionadas a sincronização e eventos locais, bem como IP e usuário de acesso.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FPs7yBYgcevGTpqJ746FM%2Fimage.png?alt=media&amp;token=87192209-efb0-4f1b-8c2d-ba4aca05538d" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FmrO61lYpafS8LUMZth9o%2Fimage.png?alt=media&amp;token=183c084d-d263-46ba-bf3d-3c7b7cbfa93c" alt=""><figcaption></figcaption></figure>

## **Logs -> User History**

Nessa aba, vamos ter também as mesmas opções de filtros já repassados no início dessa página.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FyF6aY8RKdvdbio9Y0uXB%2Fimage.png?alt=media&amp;token=4edf17c9-2ff2-4d45-97d7-c1428ddbc7ae" alt=""><figcaption></figcaption></figure>

### Firewall logs

Nos logs vamos ter as informações de login e logoff de cada usuário, além dos eventos relacionadas a data, grupo pertencente, endereço IP, endereço MAC e onde foi feita autenticação (AD, CP ou MAC)

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FkJsztBRWWHhoC9w5NOBP%2Fimage.png?alt=media&amp;token=58d9c321-6023-4a60-b747-8b16ba00b501" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fg3SbuNb48ERatVnXNpAh%2Fimage.png?alt=media&amp;token=6efeb1fb-8932-4020-822b-9a5e32e9c127" alt=""><figcaption></figcaption></figure>


# Relatórios de acessos

Após realizar todas as configurações acima citadas, será possível consultar e exportar os logs dos acessos.

&#x20;Basta acessar a guia **"Logs"** do UserAuth.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FaqMFgkCJB0QJOr3DmN0p%2Fimage.avif?alt=media&amp;token=063a6ea1-0839-4fac-9c32-c617e8dc7a5f" alt=""><figcaption></figcaption></figure>

Dentro da guia "Logs" temos 3 opções que podem ser vistar na imagem acima:

* **Firewall:** Essa opção trás os logs dos acessos do usuários;
* **UserAuth:** Nessa opção é possível visualizar os logs do próprio UserAuth;
* **User History:** Histórico de login e logoff dos usuários.

## Firewall <a href="#configuracao-dos-logs-userauth-3" id="configuracao-dos-logs-userauth-3"></a>

Nessa tela será possível visualizar os logs dos acessos, para tal, você pode utilizar algumas opções de filtros:

* **Max lines:** Quantidade de linhas apresentadas em tela;
* **Firewall Logs Files:** Selecione quais arquivos de banco de dados você deseja usar em sua pesquisa, sendo possível mais de um para exibição;
* **Update Interval:** Com que frequência as entradas de log são atualizadas;
* **String Filter:** Filtro de informações no log, ao clicar em obter ajuda serão apresentadas algumas opções de filtros, para a descrição destas opções avançadas de filtro acesse nesse manual "**Opções avançadas para filtro de logs"**;
* **String Filter Limit:** Tamanho máximo para o conteúdo filtrado;
* **Export Logs:** É possível exportar os registros exibidos na tela utilizando as opções de CSV e HTML. Ao selecionar a opção "Arquivo Completo", será realizado o download do arquivo completo do dia, porém sem formatação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FFlc6OOYNAAelXixLyjjJ%2Fimage.png?alt=media&amp;token=0c670fcc-4f68-471a-b35f-868c4ed23f30" alt=""><figcaption></figcaption></figure>

Nos registros deste log, que serão exibidos em tempo real, serão informados o país de origem e destino da conexão, através da bandeira.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FYdIJXdccgE5KugaxFzxH%2Fimage.png?alt=media&amp;token=4831307d-ecc7-4781-bb06-110a2f7479e0" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FaJLUmchsveq1IV1yk1bx%2Fimage.png?alt=media&amp;token=0ab27566-ed09-4c96-bcf6-59a2e7d5be0a" alt=""><figcaption></figcaption></figure>

Ao clicar no IP de destino ou origem, duas abas serão exibidas logo acima, informando em qual tabela/alias o IP clicado está presente e a quais regras ele pertence.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FxtYShCXW1amHJUvCG3AT%2Fimage.png?alt=media&amp;token=1b2f08e1-16b9-49f7-98cf-1394b812c35e" alt=""><figcaption></figcaption></figure>

## **UserAuth**

**Aqui temos algumas opções de filtros, mas são basicamente os mesmo acima informados.**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FjWq8EM58KMRYqIwcPv92%2Fimage.png?alt=media&amp;token=49e731ab-2f86-4063-a6c0-2189f89e6b95" alt=""><figcaption></figcaption></figure>

### Firewall logs

Nos campos abaixo temos os registros com as informações relacionadas a licenças do pacote, vencimento, além da quantidade de usuários conectados.

Caso você tenha integração com o AD, serão exibidas informações relacionadas a sincronização e eventos locais, bem como IP e usuário de acesso.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FPs7yBYgcevGTpqJ746FM%2Fimage.png?alt=media&amp;token=87192209-efb0-4f1b-8c2d-ba4aca05538d" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FmrO61lYpafS8LUMZth9o%2Fimage.png?alt=media&amp;token=183c084d-d263-46ba-bf3d-3c7b7cbfa93c" alt=""><figcaption></figcaption></figure>

## **User History**

Nessa aba, vamos ter também as mesmas opções de filtros já repassados no início dessa página.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FyF6aY8RKdvdbio9Y0uXB%2Fimage.png?alt=media&amp;token=4edf17c9-2ff2-4d45-97d7-c1428ddbc7ae" alt=""><figcaption></figcaption></figure>

### Firewall logs

Nos logs vamos ter as informações de login e logoff de cada usuário, além dos eventos relacionadas a data, grupo pertencente, endereço IP, endereço MAC e onde foi feita autenticação (AD, CP ou MAC)

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FkJsztBRWWHhoC9w5NOBP%2Fimage.png?alt=media&amp;token=58d9c321-6023-4a60-b747-8b16ba00b501" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fg3SbuNb48ERatVnXNpAh%2Fimage.png?alt=media&amp;token=6efeb1fb-8932-4020-822b-9a5e32e9c127" alt=""><figcaption></figcaption></figure>

sss


# Utilização Avançada Relatório com UserAuth

Os filtros do Firewall Logs são feitos com base no comando GREP, permitindo filtrar os principais campos, tais como:

* **Date**: Possível pesquisa por data/hora do registro.
* **Iface**: Interface de onde se originou o registro.
* **Action**: Opção se regra está permitindo ou bloqueando, sendo possível as pesquisas por: pass, block ou blocked.
* **Protocol**: Qual protocolo está sendo usado, possível pesquisar por: TCP, UDP, DNS, ICMP, IGMP...
* **Source**: De onde se origina a conexão, possível pesquisa pelo IP (IPv4 ou IPv6) do usuário ou o nome do próprio usuário.
* **Destination**: Para onde está indo a conexão, possível pesquisar pelo IP (IPv4 ou IPv6) ou o FQDN do site visitado.
* **Source/Destination Port:** Portas usadas para conexão.
* **Description**: Descrição da regra quando é criada.
* **OBS**: Para pesquisa não é necessário mencionar qual o nome do campo, pode ser apenas mencionado o que será pesquisado.

*Exemplo:*

Para pesquisa de usuário, podemos apenas informar o nome do usuário.

```
Ederson
```

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F2WgguQAXuUxHdKDXmQcM%2Fimage.png?alt=media&amp;token=f3632851-2dde-48a2-a5ee-300708e36f28" alt=""><figcaption></figcaption></figure>

Como o comando grep é uma forma de pesquisa para “contendo” a informação, para pesquisas mais específicas é necessário adicionar “,”.

Vamos pesquisar pela porta:

```
53,
```

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FO5fpWAhpycNFva4IkFzy%2Fimage.png?alt=media&amp;token=fa4ed7e4-d6cd-4ae2-803d-2f13f788fa2d" alt=""><figcaption></figcaption></figure>

O asterisco (.\*) no comando grep é usado como um curinga para representar zero ou mais caracteres. Quando você utiliza o asterisco em uma expressão de pesquisa, o grep irá encontrar todas as ocorrências que correspondam à parte da expressão que está antes do asterisco, seguida por zero ou mais caracteres que correspondam à parte da expressão que está depois do asterisco. Por exemplo, ao pesquisar por hora, ação e usuário, você pode usar o seguinte padrão:

```
    14:10.*pass.*ederson

Ou seja:

    Hora.*ação.*usuário
```

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FhlbEt9o3ZuMEAl73AqGq%2Fimage.png?alt=media&amp;token=8b3c2ef4-03ae-43b3-a0eb-3a934a45d565" alt=""><figcaption></figcaption></figure>


# Filtro Web com E2guardian


# Configuração E2Guardian

Quando observamos critérios técnicos entre os pacotes que realizam filtro web disponíveis para o pfSense®, é possível notar muito mais desempenho quando utilizando E2Guardian, sem contar que com ele é possível ter um número maior de funcionalidade quando integrado com o UserAuth.

## Instalando E2guardian

Primeiramente será necessário instalar o pacote, navegue até **"System&#x20;*****->*****&#x20;Package Manager&#x20;*****->*****&#x20;Available Packages"**

Pesquise por ele e faça a devida instalação clicando em "Install":&#x20;

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FRlOLCLBsqFhl0IamPFA4%2Fimage.png?alt=media&amp;token=c6af418d-ff93-4319-8c0a-9e01d7da74fb" alt=""><figcaption></figcaption></figure>

## Ativando E2Guardian <a href="#ativando-e2guardian" id="ativando-e2guardian"></a>

Inicialmente deve-se ativar a ferramenta e selecionar as interfaces de origem que serão auditadas pela ferramenta. Selecionando o modo de trabalho como transparente ou não e a porta que o serviço será iniciada.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F3ll3wkP5xMbBPqmd9Eqr%2Fimage.png?alt=media&amp;token=5381bfb0-fd66-4d57-a5ae-a5ad0909c609" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FaMTSQ3PCeOFwmHl7tw1P%2Fimage.png?alt=media&amp;token=550e0aef-f045-489e-bb90-465fa38647fb" alt=""><figcaption></figcaption></figure>

Além destas configurações básicas, deve-se tomar muito cuidado com o campo de **“Http workers”**, pois ele interfere de forma direta o desempenho do proxy.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FDd6PvHO2D9eSlQkIjOnj%2Fimage.png?alt=media&amp;token=ba6d9d56-2ecc-4f43-ad46-5be0bc5ff529" alt=""><figcaption></figcaption></figure>

Nele deve ser informa o número de conexões simultâneas, número que deve ser observado em cada ambiente.

## Filtro de páginas HTTPs <a href="#filtro-de-paginas-https" id="filtro-de-paginas-https"></a>

Para realizar o filtro de páginas HTTPs também com o E2Guardian deve-se criar uma CA no pfSense® e ativar o recurso na ferramenta selecionando a autoridade certificadora criada, caso contrário só será filtrado páginas HTTP.

**Criando a Autoridade Certificadora**

Para criar a CA, basta acessar dentro do pfSense® o menu **"*****System -> Certificate Manager -> CAs"*** e adicionar uma nova CA e preencher as informações solicitadas.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F1W8m7ArP8RIu2W5ZRKDz%2Fimage.png?alt=media&amp;token=fdb71be9-55bf-4b73-87a7-eb5eb95cebc0" alt=""><figcaption></figcaption></figure>

Para selecionar a CA e ativar o recurso no pacote, basta acessar a dashboard principal do E2guardian e selecionar o campo **“*****Enable SSL support*****”** e selecionar autoridade criada.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FbZHoPFEUvsX6dgkhLejB%2Fimage.png?alt=media&amp;token=185e3bc9-2f94-43d6-b404-85af11bf28f6" alt=""><figcaption></figcaption></figure>

## Integrando o tipo de autenticação

Para integrar o E2guardian com o UserAuth deve ser selecionado o **“*****Auth Plugins*****”** como **DNS,** dessa forma ele estará preparado para identificar o nome de cada usuário já tratado pela ferramenta de autenticação UserAuth.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Faylfvv1xdcJSc0YUEW7u%2Fimage.png?alt=media&amp;token=df7efb51-aabc-4e2f-aae5-eac85b9fb87b" alt=""><figcaption></figcaption></figure>

### Configuração de níveis de acesso <a href="#configuracao-de-niveis-de-acesso" id="configuracao-de-niveis-de-acesso"></a>

Dentro da aba “*Groups*” é possível criar os níveis de acesso para os respectivos usuários do ambiente.

OBS: para o correto funcionamento do pacote é recomendado que nunca seja excluído ou alterado de ordem o grupo “*default*”, ele serve como index de partida para os demais grupos.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FuMad5D7HFZ1Ij46YbTko%2Fimage.png?alt=media&amp;token=56653b73-eedb-42ef-981e-cd7d579dcee5" alt=""><figcaption></figcaption></figure>

A configuração deste novo grupo exige uma serie de configuração indexadas da aba “*ACL*” que podem ou não ser criadas antes do grupo.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FEHRikhVuucXFy3YEj4id%2Fimage.png?alt=media&amp;token=253b56c9-00b0-46ba-991a-efe61e44baa1" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fuy5Z8m5L75VuMon8E5HH%2Fimage.png?alt=media&amp;token=d5d6725f-db9d-45b5-ae5b-84c02c3e6da3" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FeLdBGCJY2ZSM8CHidHKy%2Fimage.png?alt=media&amp;token=d3a63487-532e-413f-846d-50055a229bde" alt=""><figcaption></figcaption></figure>

## Atribuindo usuários aos grupos <a href="#atribuindo-usuarios-aos-grupos" id="atribuindo-usuarios-aos-grupos"></a>

Para alocar os usuários aos seus devidos grupos, basta adicioná-los no grupo desejado na aba “*Users*”.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FF8btcvaIKNwxxCB55Nmv%2Fimage.png?alt=media&amp;token=e200fea6-76b9-4261-a2d4-2e5fe8b102cd" alt=""><figcaption></figcaption></figure>

OBS: Essa “**configuração manual dos usuários em seus grupos**” é utilizada quando a origem dos grupos na ferramenta UserAuth é marcada como **“*****E2guardian Groups*****”**, conforme explicado, quando ativada a ferramenta, caso contrário, deve manter os campos vazios, pois o UserAuth alocará os usuários dinamicamente conforme AD.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FcpwYTmrSVZtaG9wGaJkZ%2Fimage.png?alt=media&amp;token=295f8218-62cc-49cc-a6ec-c0bd2dfbc8bd" alt=""><figcaption></figcaption></figure>

## Configurando log <a href="#configurando-log" id="configurando-log"></a>

Nas opções da aba **“Report and Log”** é possível configurar a tela de erro que será exibida, optando pela tela padrão ou personalizando a página conforme a necessidade.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FFIjRPmuBPIIho3zjokCS%2Fimage.png?alt=media&amp;token=c12ccd8f-a684-4f69-a681-17e018aacd30" alt=""><figcaption></figcaption></figure>

Ainda nesta aba, podemos alterar o formato do log que é uma configuração essencial para leitura correta dessas informações pelo Sarg (pacote integrado para leitura e geração dos relatórios de acesso). O Sarg entende logs apenas o padrão Squid, por isso é necessário mudar esta opção para “*Squid Log File Format*”, consulte o capítulo sobre relatórios o Sarg [clicando aqui.](/opcoes-avancadas-do-userauth/filtro-de-logs-com-sarg/sarg-com-e2guardian)

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FnuZ5TceQ84EU4odPFlqs%2Fimage.png?alt=media&amp;token=dc21fcd3-f4fe-4792-a0b4-2befda109170" alt=""><figcaption></figcaption></figure>

Caso queira entender mais sobre a ferramenta, o time da ConexTI elaborou um treinamento exclusivo [sobre o pacote E2Guardian ministrado](https://sys-squad.com/produto/e2guardian/) pelo próprio desenvolvedor da ferramenta, disponível na plataforma de ensino [Sys-Squad](https://sys-squad.com/).<br>


# Regras de Firewall


# Regras com grupos de usuários do UserAuth

Uma das funcionalidade do UserAuth é possibilitar a aplicação de regras de firewall no pfSense "Firewall ***->*** Rules ***->*** LAN" por grupos de usuários previamente autenticados pela ferramenta. Isso é possível por que o UserAuth alimenta dinamicamente aliases com os IPs dos dispositivos que estão em uso pelos respectivos usuários. Assim, é possível aplicar regras de firewall para liberar ou bloquear acessos da rede local à Internet para outros serviços além da navegação web (HTTP/HTTPS) .

Por exemplo: Liberar acesso remoto a servidores Windows (TCP/3389) apenas para os colaboradores que fazem parte do grupo "TI" no Microsoft AD (independentemente de que dispositivos estão sendo usados por estes usuários).

## Criando Aliases <a href="#criando-aliases" id="criando-aliases"></a>

Crie um Alias com o mesmo nome do grupo de acesso oriundo de um AD ou do cadastrado no próprio UserAuth, por exemplo. A descrição do Alias deve ser a mesma do seu nome e ele precisa ser do tipo "Host".&#x20;

Os demais campos de configuração do Alias devem ficar em branco, pois eles serão alimentados dinamicamente conforme o UserAuth for lendo as origens configuradas.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F69qGxWOohCuJeCTbIyQG%2Fimage.png?alt=media&amp;token=c4712458-9b73-4243-92fe-bb93f790a8ac" alt=""><figcaption></figcaption></figure>

## Criando as regras <a href="#criando-as-regras" id="criando-as-regras"></a>

Configurado os devidos aliases desejados dos grupos, você poderá aplicar as regras liberando portas e destinos específicos.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FgvB4zBc7rjuRGC4D9RJw%2Fimage.png?alt=media&amp;token=cebfc241-1b24-4d7f-8c3a-ee8beb632c48" alt=""><figcaption></figcaption></figure>

No exemplo da imagem acima, podemos observar que temos tráfego identificado nas respectivas regras criadas. Você pode consultar os IPs dos dispositivos que foram adicionados dinamicamente a este Alias, visualizando sua tabela (conforme imagem abaixo).

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FivRdK1YWvQEnAQisnwVy%2Fimage.png?alt=media&amp;token=3a9a10bd-946b-4b3b-84b8-60da10731112" alt=""><figcaption></figcaption></figure>

<br>

<br>


# Filtro de Logs com SARG


# Sarg com UserAuth

Agora temos uma opção de integração direta entre o UserAuth e o SARG, portanto você pode utilizar essa função para verificação dos Logs.

## Instalando o SARG

Navegue até: **System -> Package Manager -> Available Packages**

* Busque pelo SARG
* Clique em "Install"

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FLMFqbqJDETfXxHP7K5M7%2Fimage.png?alt=media&amp;token=c854e83a-adc3-4924-816a-0ed523dce30e" alt=""><figcaption></figcaption></figure>

## Configurando a integração UserAuth com Sarg

Navegue até: Services -> UserAuth Integration -> General

Na aba Logs, vamos ter algumas opções, podemos deixar conforme a imagem abaixo.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FKM8NmQXah6NsT245DoBm%2Fimage.png?alt=media&amp;token=ae84cdd9-4457-4b38-8417-c7d6435996a6" alt=""><figcaption></figcaption></figure>

**Log volumetry:** Aqui vamos marcar a opção de volumetria no log;

**Log volumetry Interfaces:** Selecionar as interface a ser auditada;

**Patch Configuration:** Clique na opção **"Enable userAuth Inf Sarg".**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FTUiWTd2XdWAGbVdhLDBS%2Fimage.png?alt=media&amp;token=c560c3bb-cafe-456f-981a-a4b0500d6f78" alt=""><figcaption></figcaption></figure>

## Configurando o Sarg

&#x20;Após realizar todos os passos acima, podemos iniciar os ajustes.

Navegue até: **Status -> Sarg Settings -> General**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F4hrPwVZSLJfbLp8Oosw1%2Fimage.png?alt=media&amp;token=fee2f5c3-a5a5-407a-9fc5-2c11c5822004" alt=""><figcaption></figcaption></figure>

**Proxy Server:** Marque a opção "Userauth";

**Resport Options:** Por padrão marque essas opções abaixo.&#x20;

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FnYVCEMOtEF0xV7UqZfUk%2Fimage.png?alt=media&amp;token=a4875cc1-0f50-415f-942f-927cd393a84b" alt=""><figcaption></figcaption></figure>

**Report To Generate:** Mantenha o padrão deixando todas as opções.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Foxr8f09WlcEbuKR0dVTQ%2Fimage.png?alt=media&amp;token=d2f7c353-d2e7-45c7-948c-cd3f714e8649" alt=""><figcaption></figcaption></figure>

Date Format: Selecione a opção: **European dd/mm/yy**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FC2OOBQEqou2kZrPjhIKi%2Fimage.png?alt=media&amp;token=0dd60721-47a2-4e32-99a2-5a1147ad9e31" alt=""><figcaption></figcaption></figure>

**Days Limits:** Por padrão deixamos com 90 dias.

Caso seja deixando em branco, não haverá exclusão automática, portanto existe a possibilidade de acabar o espaço de armazenamento (Disco, SSD e afins), caso não haja um gerenciamento para isso.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FZfsjLUgENpCGuCmZt2QM%2Fimage.png?alt=media&amp;token=869c300f-f484-4eef-85d1-cd29fa63b9d4" alt=""><figcaption></figcaption></figure>

**Exclude Hosts:** Aqui você pode adicionar endereços que não gostaria de mostrar nos logs, por padrão deixamos apenas: **127.0.0.1**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F6xADyNgiaGCFcX0ptuXX%2Fimage.png?alt=media&amp;token=c7b9fc38-6cd9-4f9e-8cda-b48b6922fb21" alt=""><figcaption></figcaption></figure>

Após realizar todas as alterações, pode salvar.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FIp2QH7vjd4PpTZsIFEao%2Fimage.png?alt=media&amp;token=a74eca0a-5111-40a5-882a-3d90237e489a" alt=""><figcaption></figcaption></figure>

## Criando um Schedule <a href="#criando-um-schedule" id="criando-um-schedule"></a>

Na aba "S**chedule"** você pode definir quanto tempo será gerado o relatório.&#x20;

Podemos criar várias opções com tempos diferentes, conforme o desejo.

Clique em **"Add"**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FEMGlaLdLH0x8kR6QGx5h%2Fimage.png?alt=media&amp;token=4aeff26a-eb19-465f-a6cb-25f14d598d23" alt=""><figcaption></figcaption></figure>

Nesse exemplo vamos criar um relatório do dia atual, atualizando a cada 1hrs.

**Enable:** Ativar essa schedule

**Description:** Adicione uma descrição de fácil identificação

**Sarg Args:** Aqui vamos definir o tempo de cada arquivo de log.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fe51S8ETNfbX0JL3uREWx%2Fimage.png?alt=media&amp;token=fb42fbf6-63e4-42ac-ab54-1733966d3c42" alt=""><figcaption></figcaption></figure>

Frequency: Tempo de atualização dos logs, por padrão mantemos em 1h.

Após isso pode salvar.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FeMck9C7SIKS9gESkPXIG%2Fimage.png?alt=media&amp;token=a208e2b7-67de-4189-844e-65a478a42cbc" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F9MOQ5ShNJq7wplyAKSdl%2Fimage.png?alt=media&amp;token=f08cf3e1-93ec-4720-b4ba-b02d388c6c7a" alt=""><figcaption></figcaption></figure>

## Verificação dos logs

Na aba "View Report", temos o acesso ao logs gerados.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FejLGqVNroMlR2pOQscz4%2Fimage.png?alt=media&amp;token=ea1c6736-898d-4855-a876-93c2a2e65f4d" alt=""><figcaption></figcaption></figure>

O relatórios são separados por **ano, mês e dia**.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FgCYauAy2AbfeNGqDzIoa%2Fimage.png?alt=media&amp;token=c96af579-229d-49ee-8eed-262178e0de9f" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FXpWgii3OMNmDiwwXaYrK%2Fimage.png?alt=media&amp;token=4b93c456-3186-4378-a79d-499d01dacc87" alt=""><figcaption></figcaption></figure>

Após escolher a data, você terá acesso separado por usuário/IP.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FCvM4Ils6JYy1N38dRDdC%2Fimage.png?alt=media&amp;token=77d8ae45-a08d-408e-ac2a-ddde35469f0b" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FMcAedJ472sSgVn8QDxKu%2Fimage.png?alt=media&amp;token=b70eab5c-dbaa-423f-8b53-4dbe4b574396" alt=""><figcaption></figcaption></figure>

Caso queira exportar, pode clicar nas opções abaixo conforme a imagem.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FB8OKXv7ojc8AhbnPxK0g%2Fimage.png?alt=media&amp;token=98e846eb-8df1-4e6c-85ac-272352cdcd6b" alt=""><figcaption></figcaption></figure>


# Sarg com E2guardian

Para gerar relatórios mostrando usuários autenticados, quantidade de acesso, sites bloqueados e acessados, é necessario a utilização do Sarg, quando utilizado com o UserAuth automaticamente é instalado um plugin que faz a repaginação da ferramenta, deixando a interface mais agradável e intuitiva.

Nesse capítulo abordaremos o mesmo procedimento efetuado no vídeo que pode ser acesso clicando aqui: [vídeo-tutorial no canal da ConexTI® no Youtube](https://www.youtube.com/watch?v=ERJJCeX-n0g).

## Pré-requisitos <a href="#pre-requesitos" id="pre-requesitos"></a>

Antes de de configurar o SARG deve-se verificar qual o formato dos logs do E2guardian. Isso pode ser verificado acessando o E2guardian, aba `Report and Log` na opção "**Log File Format"**, deve esta em formato:&#x20;

## Instalando o SARG <a href="#instalando-o-sarg" id="instalando-o-sarg"></a>

Com os repositórios extraoficiais instalados, basta pesquisar pelo pacote em **"Available Packages"**.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F19Nh3rC4JEg2ew5AX3x3%2Fimage.png?alt=media&amp;token=a60c658d-9f4b-4eff-b0c9-f18e1026ac7d" alt=""><figcaption></figcaption></figure>

## Configurando o SARG <a href="#configurando-o-sarg" id="configurando-o-sarg"></a>

Depois de instalado, é possível acessa-lo pelo menu: **Status -> Sarg Reports -> General**.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F4gptxCZ0aOWxeYwtBhPU%2Fimage.png?alt=media&amp;token=7a12ab29-67ff-4348-92a0-da25a260526a" alt=""><figcaption></figcaption></figure>

Selecione qual o proxy que está sendo utilizado, nesse caso "E2guardian".

Marque as opções de report abaixo.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FGnYT2qeUpqJdKk9SQKwV%2Fimage.png?alt=media&amp;token=12857a9d-5e06-46eb-bdb2-e130b6904449" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fc7RLfEVQQ2UivqLM0gXA%2Fimage.png?alt=media&amp;token=2baf4e6d-2835-4bfe-bfc9-242c56b2a565" alt=""><figcaption></figcaption></figure>

Nessa aba também é necessário selecionar o formato da data lido nos logs: **European dd/mm/yy**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FjypTGxlrznAyNLgT3oHC%2Fimage.png?alt=media&amp;token=f57a5392-2f98-4a84-a4d6-570f8be6719b" alt=""><figcaption></figcaption></figure>

E selecionar o numero de dias que os arquivos serão armazenados.&#x20;

Caso seja deixando em branco, não haverá exclusão automática, portanto existe a possibilidade de acabar o espaço de armazenamento (Disco, SSD e afins), caso não haja um gerenciamento para isso.

**Days Limits:** Por padrão deixamos com 90 dias.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FNhvmNBFTQzPrCLGJx6Fp%2Fimage.png?alt=media&amp;token=9fd9806a-66b3-4505-8706-e4c755014268" alt=""><figcaption></figcaption></figure>

**Exclude Hosts:** Aqui você pode adicionar endereços que não gostaria de mostrar nos logs, por padrão deixamos apenas: **127.0.0.1**

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F0cUqJ2EmX40HEDLFMRDS%2Fimage.png?alt=media&amp;token=a2450c5a-f7f5-41d0-b3d7-6a1247f38027" alt=""><figcaption></figcaption></figure>

Após realizar todas as alterações, pode salvar.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FIp2QH7vjd4PpTZsIFEao%2Fimage.png?alt=media&amp;token=a74eca0a-5111-40a5-882a-3d90237e489a" alt=""><figcaption></figcaption></figure>

## Criando um “Schedule” <a href="#criando-um-schedule" id="criando-um-schedule"></a>

Nas schedules é definido a cada quanto tempo será gerado o relatório. Podemos definir várias com tempos diferentes, conforme o desejo.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FZZWiAtaFy22iVTBiePIe%2Fimage.png?alt=media&amp;token=5ab0ba9d-43e9-466f-91f2-3819e05d9e62" alt=""><figcaption></figcaption></figure>

Nesse primeiro exemplo vamos criar um relatório do dia atual, atualizando a cada 4hrs.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FkfIVgiY6PPecWJOreD5t%2Fimage.png?alt=media&amp;token=43ee79e4-d69e-4fd9-8d77-4dd96718407e" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fr0s32Z7eYyb8SADpWaz9%2Fimage.png?alt=media&amp;token=ddcc4606-66be-4ff5-8b9f-06ba80d0a78a" alt=""><figcaption></figcaption></figure>

Quando acessamos a aba **“View Report”**, podemos verificar os acessos ordenados por usuários.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FqCcxxCq6ENB1WdQ11McH%2Fimage.png?alt=media&amp;token=de55ec10-8353-45e5-8103-a32398a8ecc3" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F9EKWe8i2WClNk0wZXkKQ%2Fimage.png?alt=media&amp;token=c7690f5f-306f-469d-8bec-c1dd7f95e2ce" alt=""><figcaption></figcaption></figure>

No segundo exemplo criamos uma schedule mensal do mês atual.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FJCLuCYcAbQWo3jCmPNdf%2Fimage.png?alt=media&amp;token=4a0fb816-3265-4640-8bea-40772f08cb4d" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FmVnOt4M76eynjjX9BgLr%2Fimage.png?alt=media&amp;token=4af1cb77-7b20-49d0-b7f1-dfe41815fcf2" alt=""><figcaption></figcaption></figure>

## Exportando relatórios <a href="#exportando-relatorios" id="exportando-relatorios"></a>

Para exportar os relatórios, basta acessar o relatório desejado, selecionar o usuário e escolhe o formato do arquivo para exportação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FAGXNn93PGvXh18Xt6oSS%2Fimage.png?alt=media&amp;token=2ee196e1-157f-4ad7-81b6-3d79218a6237" alt=""><figcaption></figcaption></figure>


# Page


# Aplicando exceção com UserAuth

Essa função no UserAuth, foi criada para aqueles que utilizam ADs enormes e não querem que todos os grupos sejam autenticados pelo UserAuth, uma maneira de facilitar o controle e consequentemente excluindo a leitura indesejada de outros grupos autenticados no AD.

Ela pode ser acessada no guia **Exceptions** no UserAuth e é válida tanto para quem utilizar grupos locais como grupos do AD.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fpz7fIFGYLNoTP0i2lEWY%2Fimage.png?alt=media&amp;token=051e8baa-5220-4e50-a7c3-32d76716be90" alt=""><figcaption></figcaption></figure>

## Importando apenas usuários dos grupos selecionados <a href="#importando-apenas-usuarios-dos-grupos-selecionados" id="importando-apenas-usuarios-dos-grupos-selecionados"></a>

Por default essa opção vem desativa e todos os usuários configurados poderão se autenticar, agora quando é selecionado a opção “**Import only users on selected group**”, você esta dizendo para o UserAuth autenticará somente usuários dos grupos selecionados no campo abaixo.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FXufE8dwSlKkY7pPufZ2O%2Fimage.png?alt=media&amp;token=80c1ab2d-f5eb-4444-90ba-0d841cccf3f9" alt=""><figcaption></figcaption></figure>

Neste caso, no exemplo acima, somente usuários do grupo "suporte" poderão efetuar autenticação.

Quando um usuário realiza login, e ele, não esta no grupo selecionado podemos observar que o UserAuth ignora a autenticação, informando que o usuário está em um grupo não autorizado para navegar.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FUk6fUGltLGHxJ0JpyYeT%2Fimage.png?alt=media&amp;token=6935ca65-d7f5-4e10-b65d-68971a7c8d99" alt=""><figcaption></figcaption></figure>

Caso queira verificar nas sessões ativas, pode-se constatar que o usuário não foi autenticado e não esta ativo.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FFVdlsCnTkXZVdpxaLPcT%2Fimage.png?alt=media&amp;token=326973b8-c9d0-4102-bb67-44e8376394dc" alt=""><figcaption></figcaption></figure>

## Ignorar usuários do grupo selecionado <a href="#ignorar-usuarios-do-grupo-selecionado" id="ignorar-usuarios-do-grupo-selecionado"></a>

Quando trocamos a opção para “**Ignore users on selected group**”, o UserAuth fará totalmente o oposto da opção anterior, agora ignorando usuários que pertencem ao grupo selecionado.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FsTdbyK4fSAGPwD8Zd7j9%2Fimage.png?alt=media&amp;token=14170371-1798-41eb-a3bc-3129d3b186b8" alt=""><figcaption></figcaption></figure>

Se tentarmos a autenticação com o mesmo usuário “carlos” do exemplo anterior, cuja o qual pertence ao grupo "operacao", o mesmo desta vez autenticará.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F0qXqSkw7c12zCyAc0qbm%2Fimage.png?alt=media&amp;token=7ffd8335-1acb-4ada-b69c-9b84f319e23a" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FQ3AZz3jpvsWGFkL6COep%2Fimage.png?alt=media&amp;token=0bf82157-cffc-4393-80e6-ba5ed3ff7a01" alt=""><figcaption></figcaption></figure>

Agora, ao efetuar o login com usuário que pertence ao grupo “suporte”, o usuário será ignorado e não conseguirá navegar para a internet.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FxPebU6NEvlZ2gst3JCAe%2Fimage.png?alt=media&amp;token=b59e865e-c71b-42bf-a373-b600fe8220a9" alt=""><figcaption></figcaption></figure>

## Filtro de redes/hosts <a href="#filtro-de-redeshosts" id="filtro-de-redeshosts"></a>

A ferramenta UserAuth, também possibilida o filtro de redes a serem aplicadas a autenticação ou não, para ambientes onde não há uma separação lógica. Esta configuração se aplica de duas formas:

* **Autenticação Local:** Quando a autenticação dos usuários acontece utilizando o Captive Portal da ferremanta ou MAC Address, de ser configurado na dashboard principal da ferramenta no campo **Local login options**, onde deve ser selecionado o aliases com as redes/hosts que **deverá** ser aplicado autenticação.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fp25QyCFUC6f6GUEev7wu%2Fimage.png?alt=media&amp;token=cb42f28d-d9aa-4388-8472-377c047c5292" alt=""><figcaption></figcaption></figure>

* **Autenticação AD:** Quando a autenticação dos usuários acontece transparentemente utilizando um controlador de domínio, nesse caso a configuração das redes/host que serão autenticadas é aplicada na integração da ferramenta com o AD, selecionando no campo o aliases com as redes/host já cadastrados.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FZF0VTRCb4F8PYquqVWM9%2Fimage.png?alt=media&amp;token=00b4374d-8155-4f15-a006-bc56003de699" alt=""><figcaption></figcaption></figure>


# Alterações UserAuth

## Limpeza de Cache

O UserAuth é uma ferramenta extremamente robusta e amplamente testada em uma variedade de ambientes. No entanto, algumas situações inerentes à ferramenta, como falhas ou instabilidade nos servidores que contêm as bases de usuários (por exemplo, Microsoft AD), podem exigir a limpeza de dados salvos provenientes dessas fontes no UserAuth. Em outras situações, pode ser interessante forçar uma atualização de dados recém-obtidos a partir dos servidores que contêm a base de usuários. Para essas situações, contamos com "**opções avançadas"** no pacote:

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FUYmDdMOIQpPjAHzILZ5F%2Fimage.png?alt=media&amp;token=5fae5867-89e9-4d66-8fed-0c4371c9c559" alt=""><figcaption></figcaption></figure>

As ações para a resolução de problemas apresentadas nessa tela é a limpeza de cache e a limpeza da integração com o Active Directory.

## Versão do WMI <a href="#versao-do-wmi" id="versao-do-wmi"></a>

Esta é uma opção para manter equalização do UserAuth com eventuais ambientes legados, especialmente quando da autenticação junto a servidores Active Directory que rodam sob sistema operacional Windows Server 2019 ou anteriores.

A opção padrão é usar o WMI 1.4 (funcional com todas as versões de Windows Server suportadas atualmente pela Microsoft). Altere para WMI 1.3 apenas para casos específicos em que um modelo de integração WMI legado é exigido.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FrxJi1kpz7vpSaGIcigMl%2Fimage.png?alt=media&amp;token=95652253-9b60-4b37-b2c0-8a046a65b32e" alt=""><figcaption></figcaption></figure>

Além disso, é possível selecionar a opção **Use WMI Remote Agent**, a qual foi desenvolvida para a utilização em sistemas operacionais Windows Servers após março de 2023. Para mais informações sobre como utilizar o cliente, você pode verificar no capítulo de [integração com o AD](http://20.25.124.119:8000/Configurando_o_UserAuth_com_AD_e_dominio/).

## Opções de memória <a href="#opcoes-de-memoria" id="opcoes-de-memoria"></a>

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FJo0oCrMmR1UijjR6pu1b%2Fimage.png?alt=media&amp;token=ce4f438b-b027-43b2-9ebb-2da436e63535" alt=""><figcaption></figcaption></figure>

* **memory cache:** Cria um espaço alocado no disco para a utilização de algumas funções da ferramenta.
* **memory lifetime:** Tempo de vida do cache alocado, onde irá apagando cache mais antigos baseado no tempo estipulado.

## Limpeza de Cache (Clear all cache data) <a href="#limpeza-de-cache-clear-all-cache-data" id="limpeza-de-cache-clear-all-cache-data"></a>

Como o nome sugere, efetua a limpeza de todos os dados em cache da ferramenta (usuários autenticados, grupos, aliases dinamicamente alimentados pela ferramenta).

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FQyAHhARU8JbO46AbDOVA%2Fimage.png?alt=media&amp;token=c557d3bc-9c31-49a6-997c-bd2e44df71fd" alt=""><figcaption></figcaption></figure>

**OBS:** Ao executar esta ação, todos os usuários autenticados na ferramenta serão desconectados e terão que realizar a autenticação por algum método selecionado novamente.

## Limpeza da integração com o AD (Clear active directory poiter data) <a href="#limpeza-da-integracao-com-o-a-d-clear-active-directory-poiter-data" id="limpeza-da-integracao-com-o-a-d-clear-active-directory-poiter-data"></a>

Essa função recria o arquivo de configuração responsável por manter as informações da última consulta ao AD. Esse arquivo pode armazenar informações equivocadas encaminhadas pelo servidor AD e com isso prejudicar a autenticação transparente de usuários durante a navegação web (ou aplicação de regras de firewall por grupos de usuários).

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FVSbDW5lJ2CSOh51km0Ld%2Fimage.png?alt=media&amp;token=0463ade0-8c76-45ec-bf08-6cde949f8df1" alt=""><figcaption></figcaption></figure>

\ <br>


# Perguntas Frequentes

Esta página relaciona as respostas às dúvidas mais frequentes encaminhadas por usuários e clientes do nosso pacote EXCLUSIVO [UserAuth](https://conexti.com.br/userauth/). Se mesmo depois de ler os pontos levantados aqui você ainda tiver dúvidas sobre o funcionamento ou modelo comercial do UserAuth, [entre em contato com o nosso time](https://conexti.com.br/fale-conosco/).

* **Onde consigo mais informações sobre o UserAuth?**

  Todas as informações que necessita e as atualizações do UserAuth estão disponíveis no hotsite do: [conexti.com.br/userauth](https://conexti.com.br/userauth).
* **Tenho todo o suporte para instalação e configuração?**

  Para que não tenha gastos extras, todas as instruções para instalação e ativação do produto serão encaminhadas para seu e-mail assim que confirmada a assinatura.
* **Caso necessitar de ajuda para a instalação e a configuração, como faço?**

  Caso tenha problemas na instalação ou configuração do UserAuth, a ConexTI® fornece, opcionalmente, para a sua empresa o serviço de instalação e configuração do produto para o seu cenário junto ao nosso time técnico. Para isso, [basta entrar em contato conosco](https://conexti.com.br/fale-conosco).
* **Caso contratar a instalação, terei a tutoria de configuração do Userauth?**

  A nossa equipe vai configurar para a sua empresa, conforme a sua necessidade, mas em função da operacionalidade NÃO será disponibilizado nenhum tipo de tutoria.
* **Como faço para acessar o vídeo de demonstração do produto?**

  A ConexTI® disponibiliza um [vídeo contendo todo o processo de instalação e demonstração do produto](https://www.youtube.com/watch?v=r9NnmdL2PcU\&feature=youtu.be). Nele, você encontrará a demonstração de como implementar todas as principais features do módulo na prática.
* **Como faço backup das configurações do UserAuth?**

  Todas as configurações do UserAuth e suas integrações são inseridas no backup padrão do pfSense®. Em caso de necessidade de reinstalação do servidor, basta adicionar primeiro o REPOSITÓRIO EXTRAOFICIAL do produto e então executar a restauração padrão do XML.


# Changelog UserAuth

Confira abaixo a lista de atualizações do pacote **UserAuth**. Para saber mais sobre o módulo extra que implementa recursos avançados de autenticação de usuários no pfSense®, acesse o [site oficial da ferramenta](https://conexti.com.br/userauth).

## Atualizações

### (22/01/2024) UserAuth 4&#x20;

### <br>

<br>


# Considerações finais

**IMPORTANTE: Os módulos desenvolvidos pela ConexTI®, que adicionam funcionalidades extras ao pfSense® SÃO EXTRAOFICIAIS, ou seja, não são suportados ou homologados pela ESF/Netgate (pfSense Patrons). Todo o desenvolvimento, política de distribuição, continuidade e suporte técnico são de responsabilidade exclusiva da ConexTI®.**

**“pfSense® é uma marca registrada da Electric Sheep Fencing, LLC”**


# Bem-vindo à Base de Conhecimento do NGRules

O NGRules é uma ferramenta poderosa que permite criar Regras de Firewall com base em Wildcards (.whatsapp.net, por exemplo) no pfSense®️. Ele é capaz de executar filtros baseados em consultas DNS e verificação de certificados SSL/TLS do destinatário, sem a necessidade de liberação prévia de conexões da LAN para WAN.&#x20;

Contando com recursos avançados, como o cache de consultas anteriores que aumenta sensivelmente a performance do pacote, o NGRules também pode ser integrado facilmente ao [UserAuth](https://conexti.com.br/userauth/). Desta forma, você pode transformar seu servidor pfSense®️ numa poderosa solução de proteção e auditoria de acessos à Internet - incluindo autenticação por usuários com o [UserAuth](https://conexti.com.br/userauth/).&#x20;

Em outras palavras, agora você define que tipo de aplicações/sites/serviços (WhatsApp, Youtube, Netflix, Sites do Governo, etc..) podem ser ACESSADOS ou NÃO na Internet pelos seus colaboradores, com ou sem webfilter (Squid ou E2Guardian), e sem a necessidade de infinitas horas tentando descobrir as redes IPs que hospedam estes serviços. Tudo simples, seguro e efetivo.&#x20;

“pfSense® é uma marca registrada da Electric Sheep Fencing, LLC”&#x20;


# Licenciamento

O NGRules é um software comercial distribuído sob uma licença anual de uso por servidor pfSense®. Há também a possibildiade de ativar a versão trial da ferramenta (sem limitações para uso durante 15 dias). Todos os direitos são reservados a [ConexTI®](https://conexti.com.br/).&#x20;

Se você deseja saber mais sobre o modelo comercial do NGRules e condições especiais para aquisições por volume (acima de 10 licenças por lote), entre em contato conosco através do <comercial@conexti.com.br>.&#x20;

Todos os demais softwares citados neste documento, seguem suas próprias licenças de uso e distribuição. Para saber mais sobre cada um deles, visite os respectivos sites.&#x20;


# Instalando o NGRules no pfSense®

A instalação do NGRules foi tratada nesse manual no seguinte link: [Clique aqui](/primeiros-passos/instalando-o-userauth-no-pfsense-r)


# Configurando NGRules


# Primeiros passos

Ativando a ferramenta

Navegue até: Services -> NGrules Integration -> General.

Enable: Marcando essa opção a ferramenta será ativada.&#x20;

Listen Interface(s): Agora marque as interfaces que serão filtradas pela ferramenta, apenas marque as opções onde a conexão é originada:&#x20;

Exemplo: LAN

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FgP0ztix6tOcIu4hHgqYi%2Fimage.png?alt=media&amp;token=8e8458de-d2f4-4fb7-875a-83d295740472" alt=""><figcaption></figcaption></figure>

Schedule frequency: Aqui podemos informar a frequência com que os processos do NGRules são reiniciados, isso previne um elevado consumo de memória.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FVP1XvOH0aHIZnQkWYt1z%2Fimage.png?alt=media&amp;token=4743d768-7d7b-4421-8abb-e84574758f57" alt=""><figcaption></figcaption></figure>

Monitor mode: Aqui será ajustado o modo de operação do NGRules, como a ferramenta monitora as conexões e utiliza os recursos do hardware:&#x20;

**Defaulf:** Selecione para ambientes com tráfego moderado;

**High traffic server:** Se o seu ambiente estiver passando por um tráfico mais intenso e existe um número considerável de dispositivos simultâneos, será importante utilizar essa opção;

**Low traffic server:** Essa opção serve para ambientes menores, onde existe poucos dispositivos e o tráfego na rede é baixo.&#x20;

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FswXmn51yqDBLH6rFczTc%2Fimage.png?alt=media&amp;token=309e9a79-cc77-4b3b-a4cd-f66736dec6e4" alt=""><figcaption></figcaption></figure>

License info: Aqui será exibida a informação da licença.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FuoEOi7vFTn8BDAZaPOmP%2Fimage.png?alt=media&amp;token=c6ffccc1-820d-47e3-8ef3-5dfc91a16961" alt=""><figcaption></figcaption></figure>

## Checagem de Aliases

Check Alias: Essa opção é a frequência que os aliases serão alimentados e verificados sobre novas atualizações.&#x20;

Check frequency: Tempo em minutos que será feita a atualização acima.&#x20;

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2F8Yh1exB2LWvVovpoI8tD%2Fimage.png?alt=media&amp;token=7988addf-4f6c-4e18-a6b9-bdd57c2ad80a" alt=""><figcaption></figcaption></figure>


# Opções Avançadas

Quic protocol: Por padrão, o NGRules já faz o bloqueio do tráfego do protocolo Quic (UDP 80 e 443) de forma automatizada, garantindo assim, que certos serviços respeitem as regras impostas futuramente, por padrão deixamos essa opção ativa

Promiscuous mode: No modo padrão de implementação, deixamos essa opção desativada.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FmazmuSyF4bIakdJupwS5%2Fimage.png?alt=media&amp;token=0232cf67-b7de-44c1-8d04-69d63e5efa92" alt=""><figcaption></figcaption></figure>

Additional ports:&#x20;

Toda a inteligência de descoberta de redes IPs das aplicações e sites na Internet no NGRules está alicerçada sob análise das requisições DNS (além de verificações em nível de certificado digital - SSL e TLS). Em outras palavras, a porta lógica mais importante para que o NGRules faça seu trabalho é a UDP/53 (porta default que não necessita de configuração adicional neste campo).&#x20;

A opção de listar portas adicionais só deve ser utilizada em casos muito específicos como filtrar conexões do aplicativo WhatsApp, por exemplo. O WhatsApp utiliza tráfego NÃO traduzível por DNS/SSL para envio de mensagens e mídias entre usuários e, portanto, faz-se necessário configurar o NGRules para auditar um intervalo de portas adicionais como: TCP/5222-5228.&#x20;

IMPORTANTE : Jamais utilize esta opção de forma aleatória como filtrar conexões HTTPS (TCP/443). Isso além de ser INEFICIENTE no trabalho realizado pelo NGRules, potencialmente fará com que seu servidor tenha problemas com o consumo de memória e CPU.&#x20;

Por padrão, adicionamos apenas essas portas: 5222-5228,8721,4567&#x20;

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fh6ZQKRT6nP8BAYiqmsMT%2Fimage.png?alt=media&amp;token=07f02be9-49d9-4098-9665-306622247f22" alt=""><figcaption></figcaption></figure>

Check Certificates: Essa opção possibilita a verificação dos certificados SSL dos servidores quando em conexões "HTTPS/SSL" e atualizar as regras com base nas informaões encontradas.

Por padrão marcamos a opção: Update on any cert, except self signed certificates

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2Fe5pmTrdCg4BeGKv2QbFX%2Fimage.png?alt=media&amp;token=bc389bc2-6073-49f2-af3a-019d19a82f9f" alt=""><figcaption></figcaption></figure>

Check ip updates: Modo de checagem/atualização dos IPs feitos pelo NGRules

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FtSKnliJ5s1oRVP46kLQa%2Fimage.png?alt=media&amp;token=07cf3b09-d595-4d15-ba28-a08af910aa42" alt=""><figcaption></figcaption></figure>

Cache maintenance: Esta opção, como o próprio nome sugere, executa uma limpeza em todos os arquivos de cache e temporários gerados pelo NGRules. Ela pode ser utilizada sempre que você desejar reiniciar os algoritmos de identificação e registro das redes IPs das aplicações identificadas sem restartar o serviço do NGRules.&#x20;

CUIDADO : Ao limpar todo o cache do NGRules, você reinicia o processo de descoberta das redes das aplicações na Internet. Isso pode fazer com que seja necessário esperar novamente o tempo mínimo de reconhecimento para obter os resultados desejados em relação aos bloqueios ou liberações executados nas respectivas regras de firewall.

<figure><img src="https://1714437560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpDCDzvnBYNPCAsAfnRIZ%2Fuploads%2FXSiGDKIOp0kIkuLWV2St%2Fimage.png?alt=media&amp;token=1bc55f34-31a7-4a8a-ac72-11b71258579d" alt=""><figcaption></figcaption></figure>


