Salve, pessoALL. Me chamo TD Matias ou para a galera das antigas, Tango-Delta (vide Alfabeto Fonético) e este é o primeiro artigo que escrevo para colaborar com a comunidade de TIC e Segurança da informação (#InfoSec). Então, desde já agradeço por ler este artigo, pelo joinha no final e pelo compartilhar (cara de pau, né?!). Se houver alguma falha, perdão, estarei melhorando cada vez mais!!!
Então, vamos parar de cozinhar o galo e ir para o cerne de nosso artigo; quem quiser saber mais da minha história pode ir no “Sobre os autores”.
Como configurar um ambiente com autenticação simplificada com FSSO/NTLM em firewalls FortiGate. Há muitas explicações em como configurar ambientes de autenticação em FortiGate com Pooling Mode, DC Agent, Standard, Advance, Mega blaster… Mas pouco se vê sobre o uso de NTLM e FSSO, juntos, como uma solução de autenticação com FortiGate. Necessitei pesquisar mais sobre isso na volta de um treinamento que fiz no México, o Fortinet Xtreme Team Engineering 2015, onde estudei exaustivamente sobre temas de Secure Wireless, mas um assunto que buscava, só foi abordado nas mesas de cafezinho: Problemas com autenticação de usuários corporativos que frequentemente mudavam entre o uso de redes cabeadas e sem fio. Tínhamos este problema em alguns clientes: Usuário começava o dia de trabalho com o notebook ligado ao cabo de rede na sua posição de trabalho, certa feita ele precisa seguir para uma sala de reunião, despluga o cabo de rede, logo o SO reconhece e se conecta ao SSID Corporativo, mas ao abrir uma página no navegador, aparece para o bendito a página de logon (se usa LDAP além do FSSO). Aí, logo vem o iluminado “Essa rede não funciona! É uma b****!”. Conversando nos intervalos do café, relatando a epopéia sofrida do retirante administrador do firewall, um amigo do Suuullll, tchê, comentara que para reduzir os problemas de cenários como este, ele usa autenticação FSSO+NTLM. No retorno para o Brasil, ele compartilhou conosco esta e outras informações e vim a fazer alguns Labs. Ele citou que o NTLM é a solução de contorno de 90% dos problemas de autenticação do FSSO. E hoje eu concordo! Mas quem disse que tinha material público? Nada sobre configuração do cenário em FortiGate. Assim, surgiu a ideia de descrever os passos de configuração deste cenário de autenticação, inclusive com a configuração para GPO nos navegadores IE-like (IE, Chrome, Opera) e Mozilla Firefox. E em PT-BR!!!
Segue o procedimento:
1. Instalar o FSSO Collector Agent: Executar a configuração para o Fortinet SSO Collector Agent. Depois de instalado, configure o agente como na tela. Atenção: Selecione como Método de acesso do Diretório Windows como Advanced.
2. Depois de instalado, adicionar a informação de endereço IP do Collector Agent.
3. Selecione o(s) domínio(s) para monitorar, e quaisquer usuários de que a atividade de logon/logoff você não deseja monitorar.
4. Configure o working mode, o DC que deseja monitorar e finalize a configuração.
5. Configurar o Single Sign-on Agent: Se preciso for (recomendado), selecione Require authenticated connection from FortiGate, e adicione uma chave compartilhada. Você também entrará com esta senha quando configurar o Autenticador FSSO no FortiGate. Aqui deve manter ativado Support NTLM authentication para este cenário. Recomendo também manter selecionado Log logon events in separate logs.
6. Configurar o FortiGate para conectar ao FSSO agent: No FortiGate, vá em User & Device > Single Sign-On. Digite a chave compartilhada usada na configuração do FSSO Collector Agent.
7. Adicionar registro (opcional): Crie um registro tipo A ou CNAME no servidor DNS apontando para o Fortigate, como por exemplo: “portal.dominio.local”; Agora, defina um FQDN para o portal de autenticação do firewall:
config firewall auth-portal set portal-addr "portal.dominio.local" end |
8. Configurar a Autenticação de NTLM no navegador: Para a autenticação de NTLM, o navegador usa as credenciais do usuário de domínio logado na estação (se o usuário estiver conectado ao domínio), oferecendo assim a funcionalidade total de login único. Como funciona a autenticação nos diversos tipos de navegadores:
- Internet Explorer – Utiliza as credenciais do domínio do usuário e autentica de forma transparente ao acessar um site web pelo FortiGate, tendo o endereço de login no firewall com intranet local neste navegador, de acordo com a guia Segurança em Opções de Internet. Isto requer a inclusão do endereço do FortiGate na lista de websites na zona de Intranet Local em Opções de Internet, como segue:
http://<Endereço IP ou FQDN do FGT>/ https://<Endereço IP ou FQDN do FGT>/ |
- Isto pode ser feito por meio da política de grupo do domínio na Lista de atribuição de website à zona em Configuração do computador > Políticas (no caso de Windows Server 2008 ou superior, senão não haverá este subitem) > Modelos administrativos > Componentes do Windows > Internet Explorer > Painel de controle da Internet > Página de segurança > duplo clique em Lista de atribuição de website a zonas > botão Mostrar; adiciona registro como segue na imagem, com o valor ‘1’ (Intranet local). Ainda, cheque se há a configuração para usar a autenticação de NTLM de navegador no Internet Explorer.
- Google Chrome / Opera 10 ou superior – O Chrome se comporta da mesma maneira que o Internet Explorer, incluindo na exigência de que o endereço do Fortigate seja adicionado à lista de websites na zona de Intranet Local em Opções de Internet.
- Firefox 3.6 – O Firefox utiliza as credenciais de domínio do usuário e autentica de forma transparente se o website ao qual ele está se conectando no Fortigate está listado na entrada de configuração network.automatic-ntlm-auth.trusted-uris (acessada ao digitar about:config na barra de endereços do Firefox).
- Você pode configurar uma GPO para executar no logon o seguinte Batch file para setar as mesmas informações no Firefox:
pushd "%APPDATA%\Mozilla\Firefox\Profiles\*.default" echo user_pref("network.automatic-ntlm-auth.allow-non-fqdn", true);>>prefs.js echo user_pref("network.automatic-ntlm-auth.trusted-uris","<Endereço IP ou FQDN do FGT>");>>prefs.js popd |
- Basta executar ‘gpmc.msc’, editar uma GPO aplicada aos usuários e ir em Configuração de usuário > Políticas > Configurações do Windows > Scripts (Logon/Logoff) > duplo clique no item ‘Logon’. Clicando em ‘Mostrar Arquivos…’, abrirá o Explorador de Arquivos, no diretório onde deve salvar seu arquivo de bat. Em seguida, volte a tela anterior, clique em ‘Adicionar’ e entre com o nome do arquivo. Clique em Ok. OBS: Deve-se tomar cuidado pois a cada logon de usuário, ele executará o bat. Deve-se mante-lo ativo por tempo determinado para não causar sobrecarga nos logons de usuário;
- Safari 3.6 – Embora o Safari ofereça suporte ao NTLM, atualmente ele não oferece suporte um login totalmente transparente usando as credenciais de domínio do usuário. Utilize Device Definition para autenticar este tipo de dispositivo;
- Navegadores em plataformas fora do PC – As plataformas fora do PC como o Linux e Mac podem acessar recursos em um domínio do Windows por meio do Samba, mas não têm o conceito de “efetuar login do PC no domínio” como os PCs com Windows. Portanto, os navegadores nessas plataformas não têm acesso às credenciais de domínio do usuário e não é possível usá-las para o NTLM.
- Quando um usuário não estiver conectado ao domínio ou o navegador não é capaz de usar suas credenciais de domínio, ele solicitará um nome de usuário e senha ou utilizará as credenciais em cache, caso o usuário já tiver optado por salvá-las anteriormente.
- Em todos os casos, em caso de falha na autenticação ao utilizar as credenciais de domínio do usuário (que pode ocorrer devido ao fato de o usuário não estar num grupo de autenticação mapeado no FortiGate), então o navegador solicitará que o usuário insira um nome e uma senha. Isso permite que o usuário insira credenciais diferentes das credenciais de domínio para obter acesso.
9. Adicionar um grupo de usuário FSSO: No FortiGate, vá em User & Device > User Groups.
10. Adicionar um objeto Endereço IPv4 (firewall address) para a rede interna: Vá em Policy & Objects > Addresses.
11. Adicionar um Perfil de Segurança para relacionar a uma política autenticada: Vá em Policy & Objects > IPv4 Policy. Adicione usuário(s) e/ou grupo(s) de usuários FSSO numa política com ação Aceita.
12. Aí, acesse a CLI e habilite NTLM na regra de firewall:
config firewall policy set ntlm enable end |
13. Resultados: Vá em Log & Report > Forward Traffic. Como os usuários efetuam login no sistema Windows AD, o FortiGate coletas estas informações. Selecione uma entrada de log para ver mais. Ainda, você pode checa no FSSO Collector Agent instalado no Controlador de Domínio as informações NTLM clicando em Show Service Status > Get NTLM Statistics.
Agora gente, é pau na moleira! É só testar e partir para o abraço. Reduzirá bastante as reclamações de usuários em relação a autenticação com dispositivos que se movimentam entre redes, ou entre cabeada e sem fio.
Obrigado por ler este artigo e esteja ligado no TI com Uai para o lançamentos dos próximos!
Latest posts by TD Matias (see all)
- [MTI] Como subir um FortiGate-VM no Hyper-V do Windows 10 - 10 de setembro de 2016
- Como configurar ambiente com autenticação simplificada com FSSO/NTLM em FortiGate - 26 de abril de 2016
0 comentário