Dead Packets

24/09/2014

Acesso à Internet usando SSO, múltiplos grupos e SSL Inspection

Filed under: fortinet,webfilters — drak @ 6:00 AM

No último post integramos nosso FGT com o AD para acesso administrativo ao firewall, agora iremos melhorar nossas regras para acesso à Internet agregando o requerimento de autenticação e inspeção “light” do SSL, dessa maneira teremos o controle de usuários, granularidade nos acessos e garantiremos que a política de Web Filter será aplicada corretamente.

Os objetivos hoje são: fazer com que todo acesso seja autenticado de maneira transparente (SSO), que os usuários de Marketing tenham acesso ao YouTube e Facebook (Streaming e Redes Sociais), IT tenha acesso à sites de hacking, usuários VIP possam acessar tudo que não traga risco à segurança da rede ou que possa ser considerado legalmente prejudicial para a imagem da empresa e que os demais usuários somente tenham acesso a um conjunto mínimo de websites, todos relacionados a trabalho.

Após isso iremos ativar o SSL Inspection (para evitar o bypass das políticas) e descobrir como podemos implementar esta tecnologia sem causar caos na rede 🙂

Embora já tenhamos feito a integração com o AD fazendo com que o FGT realizasse o pooling (no post anterior) agora iremos instalar o agente no DC. Durante a instalação é possível selecionar o modo de funcionamento do agente. Para escolher corretamente precisamos ter alguns conceitos em mente, podemos configurar o SSO com agente das seguintes maneiras:

  • DC Agent (ambientes grandes, links lentos – mínimo 64Kbps, alta rotatividade de IPs)
  • NetAPI (ambientes pequenos, links rápidos, baixa rotatividade de IPs)
  • WinSecLog Polling (ambientes grandes, links rápidos, alta rotatividades e MACs logando no AD)
  • WinSecLog WMI Polling (ambientes grandes, links rápidos, alta rotatividades e MACs logando no AD, melhor performance do que o anterior porém requer configurações adicionais nos DCs)

No agente também é possível customizar alguns parâmetros como o cache de grupos (minimizando o impacto em CPU e memória no server), tanto via GUI quanto pelo registro em:

64bit: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Fortinet\FSAE\collectoragent
32bit: HKEY_LOCAL_MACHINE\SOFTWARE\Fortinet\FSAE\collectoragent

O DC Agent é instalado no DC, Collector Agent é instalado em qualquer máquina membro do AD. Múltiplos DC Agents podem enviar a informação para um Collector que envia para o FGT. Em nosso cenário iremos utilizar o modo DC Agent e o Collector no mesmo servidor.

Após instalação do agente (o executável deve ser o adequado para a versão do FOS rodando no FGT, neste lab usei FOS 5.0.9 e FSSO Agent 4.3.0157, OS W2K8 R2 STD) vamos configurá-lo:

  1. Show Monitored DCs
  2. Select DC to Monitor…
  3. DC Agent Mode
  4. Selecione o DC, o agente em DC Mode será instalado e o servidor será reiniciado

Agora voltamos para a configuração no FGT, é esperado que o LDAP Server já esteja configurado de acordo com este post:
Autenticação LDAP para acesso administrativo ao FortiGate.

Bônus: Confira o que acontece ao apertar o botão “Test” em User & Device, Authentication, LDAP Servers, <servidor>

Download: ldap_test.pcap, altere a extensão para PCAP para visualizar o conteúdo no Wireshark.

Vamos criar um novo SSO Server e indicar quais grupos do AD podem ser utilizados nas regras, é importante lembrar que nesse primeiro momento iremos somente indicar quais grupos iremos utilizar e somente após essa configuração iremos criar os grupos locais no FGT (que efetivamente serão usados nas regras) e associá-los aos grupos do AD correspondentes.

config user fsso								# User & Device::Authentication::Single Sign-On
    edit "FSSO DC Agent Mode"
        set ldap-server "baldur"
        set password ENC THcsYGLMwna8Z6+7qv9AJpT5vrW...
        set server "10.0.1.10"
    next
end

config user adgrp
    edit "CN=Information Technology,OU=HQ,DC=ad,DC=deadpackets,DC=com"
        set server-name "FSSO DC Agent Mode"
    next
    edit "CN=Marketing,OU=HQ,DC=ad,DC=deadpackets,DC=com"
        set server-name "FSSO DC Agent Mode"
    next
    edit "CN=VIP,OU=HQ,DC=ad,DC=deadpackets,DC=com"
        set server-name "FSSO DC Agent Mode"
    next
    edit "CN=Domain Users,CN=Users,DC=ad,DC=deadpackets,DC=com"
        set server-name "FSSO DC Agent Mode"
    next
end

Ok, tudo configurado! Ao verificar o status da comunicação com o agente vemos um nada animador “X”…

sso-status-nok

Após conferir que a senha configurada no agente está igual à configurada na configuração do SSO Server testamos a comunicação entre o FGT e o Collector (que nesse caso está no mesmo servidor que o DC Agent) na porta TCP/8000.

LAB-DC # exec telnet 10.0.1.10 8000 
Timeout!

Após criação da regra no firewall do Windows no AD podemos ver que a conexão é estabelecida com sucesso.

LAB-DC # exec telnet 10.0.1.10 8000
Z?
??
FSSO 4.3.0157j0xAr<??4bz?FFSAE_SERVER_10001
LAB-DC # 
LAB-DC # diag debug ena
LAB-DC # diag debug authd fsso server-status
LAB-DC # 2014-09-18 01:35:14 
Server Name			     Connection Status     Version
-----------			     -----------------     -------
2014-09-18 01:35:14 FSSO DC Agent Mode                   connected             FSSO 4.3.0157


E o status na GUI também reflete isso:

sso-status-ok

Procedemos com a criação dos grupos:

config user group								# User & Device::User::User Groups
    edit "Marketing-FSSO"
        set group-type fsso-service
        set member "CN=Marketing,OU=HQ,DC=ad,DC=deadpackets,DC=com"
    next
    edit "VIP-FSSO"
        set group-type fsso-service
        set member "CN=VIP,OU=HQ,DC=ad,DC=deadpackets,DC=com"
    next
    edit "Domain Users-FSSO"
        set group-type fsso-service
        set member "CN=Domain Users,CN=Users,DC=ad,DC=deadpackets,DC=com"
    next
end

Para o grupo de IT inicialmente não vamos criar um novo grupo, vamos tentar aproveitar o grupo já existente “Information Technology-FW” (e não vai ter o resultado esperado).

Após a criação dos grupos vamos criar os perfis de Web Filter adequados, cada um de acordo com as restrições definidas inicialmente.

config webfilter profile						# Security Profiles::Web Filter::Profiles
    edit "WF-DOMAIN-USERS"
        set ovrd-perm bannedword-override urlfilter-override fortiguard-wf-override contenttype-check-override
            config override
                set ovrd-user-group ""
            end
            config ftgd-wf
                unset options
                    config filters
                        edit 83
                            set category 143
                        next
                        edit 1
                            set category 142
                        next
                        edit 2
                            set category 140
                        next
                        edit 3
                            set category 141
                        next
                        edit 4
                            set action block
                            set category 83
                        next
                        edit 5
                            set action block
                            set category 5
                        next
                        edit 6
                            set action block
                            set category 1
                        next
                        edit 7
                            set action block
                            set category 6
                        next
                        edit 8
                            set action block
                            set category 12
                        next
                        edit 9
                            set action block
                            set category 3
                        next
                        edit 10
                            set action block
                            set category 4
                        next
                        edit 11
                            set action block
                            set category 62
                        next
                        edit 12
                            set action block
                            set category 59
                        next
                        edit 13
                            set action block
                            set category 7
                        next
                        edit 14
                            set action block
                            set category 9
                        next
                        edit 15
                            set action block
                            set category 64
                        next
                        edit 16
                            set action block
                            set category 2
                        next
                        edit 17
                            set action block
                            set category 15
                        next
                        edit 18
                            set action block
                            set category 11
                        next
                        edit 19
                            set action block
                            set category 66
                        next
                        edit 20
                            set action block
                            set category 57
                        next
                        edit 21
                            set action block
                            set category 13
                        next
                        edit 22
                            set action block
                            set category 8
                        next
                        edit 23
                            set action block
                            set category 14
                        next
                        edit 24
                            set action block
                            set category 63
                        next
                        edit 25
                            set action block
                            set category 67
                        next
                        edit 26
                            set action block
                            set category 65
                        next
                        edit 27
                            set action block
                            set category 16
                        next
                        edit 28
                            set action block
                            set category 24
                        next
                        edit 29
                            set action block
                            set category 19
                        next
                        edit 30
                            set action block
                            set category 75
                        next
                        edit 31
                            set action block
                            set category 76
                        next
                        edit 32
                            set action block
                            set category 72
                        next
                        edit 33
                            set action block
                            set category 25
                        next
                        edit 34
                            set action block
                            set category 26
                        next
                        edit 35
                            set action block
                            set category 61
                        next
                        edit 36
                            set action block
                            set category 86
                        next
                        edit 37
                            set action block
                            set category 17
                        next
                        edit 38
                            set action block
                            set category 29
                        next
                        edit 39
                            set action block
                            set category 18
                        next
                        edit 40
                            set action block
                            set category 77
                        next
                        edit 41
                            set action block
                            set category 82
                        next
                        edit 42
                            set action block
                            set category 71
                        next
                        edit 43
                            set action block
                            set category 85
                        next
                        edit 44
                            set action block
                            set category 54
                        next
                        edit 45
                            set action block
                            set category 30
                        next
                        edit 46
                            set action block
                            set category 28
                        next
                        edit 47
                            set action block
                            set category 58
                        next
                        edit 48
                            set action block
                            set category 20
                        next
                        edit 49
                            set action block
                            set category 40
                        next
                        edit 50
                            set action block
                            set category 33
                        next
                        edit 51
                            set action block
                            set category 69
                        next
                        edit 52
                            set action block
                            set category 34
                        next
                        edit 53
                            set action block
                            set category 55
                        next
                        edit 54
                            set action block
                            set category 35
                        next
                        edit 55
                            set action block
                            set category 36
                        next
                        edit 56
                            set action block
                            set category 70
                        next
                        edit 57
                            set action block
                            set category 87
                        next
                        edit 58
                            set action block
                            set category 48
                        next
                        edit 59
                            set action block
                            set category 80
                        next
                        edit 60
                            set action block
                            set category 38
                        next
                        edit 61
                            set action block
                            set category 78
                        next
                        edit 62
                            set action block
                            set category 39
                        next
                        edit 63
                            set action block
                            set category 79
                        next
                        edit 64
                            set action block
                            set category 42
                        next
                        edit 65
                            set action block
                            set category 37
                        next
                        edit 66
                            set action block
                            set category 44
                        next
                        edit 67
                            set action block
                            set category 46
                        next
                        edit 68
                            set action block
                            set category 47
                        next
                        edit 69
                            set action block
                            set category 68
                        next
                        edit 70
                            set action block
                            set category 23
                        next
                        edit 72
                            set category 53
                        next
                        edit 73
                            set category 49
                        next
                        edit 74
                            set category 31
                        next
                        edit 75
                            set category 43
                        next
                        edit 76
                            set category 51
                        next
                        edit 77
                            set category 52
                        next
                        edit 78
                            set category 50
                        next
                        edit 79
                            set category 41
                        next
                        edit 80
                            set category 81
                        next
                        edit 81
                            set category 56
                        next
                        edit 82
                            set category 84
                        next
                        edit 71
                            set action block
                        next
                    end
            end
    next
end
config webfilter profile						# Security Profiles::Web Filter::Profiles
    edit "WF-IT"
        set ovrd-perm bannedword-override urlfilter-override fortiguard-wf-override contenttype-check-override
            config override
                set ovrd-user-group ""
            end
            config ftgd-wf
                unset options
                    config filters
                        edit 91
                            set category 143
                        next
                        edit 1
                            set category 142
                        next
                        edit 2
                            set category 140
                        next
                        edit 3
                            set category 141
                        next
                        edit 71
                            set action block
                            set category 83
                        next
                        edit 72
                            set action block
                            set category 5
                        next
                        edit 73
                            set action block
                            set category 1
                        next
                        edit 74
                            set action block
                            set category 6
                        next
                        edit 75
                            set action block
                            set category 12
                        next
                        edit 90
                            set category 3
                        next
                        edit 76
                            set action block
                            set category 4
                        next
                        edit 77
                            set action block
                            set category 62
                        next
                        edit 78
                            set action block
                            set category 59
                        next
                        edit 12
                            set action block
                            set category 7
                        next
                        edit 13
                            set action block
                            set category 9
                        next
                        edit 14
                            set action block
                            set category 64
                        next
                        edit 15
                            set action block
                            set category 2
                        next
                        edit 16
                            set action block
                            set category 15
                        next
                        edit 17
                            set action block
                            set category 11
                        next
                        edit 18
                            set action block
                            set category 66
                        next
                        edit 19
                            set action block
                            set category 57
                        next
                        edit 20
                            set action block
                            set category 13
                        next
                        edit 21
                            set action block
                            set category 8
                        next
                        edit 22
                            set action block
                            set category 14
                        next
                        edit 23
                            set action block
                            set category 63
                        next
                        edit 24
                            set action block
                            set category 67
                        next
                        edit 25
                            set action block
                            set category 65
                        next
                        edit 26
                            set action block
                            set category 16
                        next
                        edit 27
                            set action block
                            set category 24
                        next
                        edit 28
                            set action block
                            set category 19
                        next
                        edit 29
                            set action block
                            set category 75
                        next
                        edit 30
                            set action block
                            set category 76
                        next
                        edit 31
                            set action block
                            set category 72
                        next
                        edit 32
                            set action block
                            set category 25
                        next
                        edit 33
                            set action block
                            set category 26
                        next
                        edit 34
                            set action block
                            set category 61
                        next
                        edit 35
                            set action block
                            set category 86
                        next
                        edit 36
                            set action block
                            set category 17
                        next
                        edit 37
                            set action block
                            set category 29
                        next
                        edit 38
                            set action block
                            set category 18
                        next
                        edit 39
                            set action block
                            set category 77
                        next
                        edit 40
                            set action block
                            set category 82
                        next
                        edit 41
                            set action block
                            set category 71
                        next
                        edit 42
                            set action block
                            set category 85
                        next
                        edit 43
                            set action block
                            set category 54
                        next
                        edit 44
                            set action block
                            set category 30
                        next
                        edit 45
                            set action block
                            set category 28
                        next
                        edit 46
                            set action block
                            set category 58
                        next
                        edit 47
                            set action block
                            set category 20
                        next
                        edit 48
                            set action block
                            set category 40
                        next
                        edit 49
                            set action block
                            set category 33
                        next
                        edit 50
                            set action block
                            set category 69
                        next
                        edit 51
                            set action block
                            set category 34
                        next
                        edit 52
                            set action block
                            set category 55
                        next
                        edit 53
                            set action block
                            set category 35
                        next
                        edit 54
                            set action block
                            set category 36
                        next
                        edit 55
                            set action block
                            set category 70
                        next
                        edit 56
                            set action block
                            set category 87
                        next
                        edit 57
                            set action block
                            set category 48
                        next
                        edit 58
                            set action block
                            set category 80
                        next
                        edit 59
                            set action block
                            set category 38
                        next
                        edit 60
                            set action block
                            set category 78
                        next
                        edit 61
                            set action block
                            set category 39
                        next
                        edit 62
                            set action block
                            set category 79
                        next
                        edit 63
                            set action block
                            set category 42
                        next
                        edit 64
                            set action block
                            set category 37
                        next
                        edit 65
                            set action block
                            set category 44
                        next
                        edit 66
                            set action block
                            set category 46
                        next
                        edit 67
                            set action block
                            set category 47
                        next
                        edit 68
                            set action block
                            set category 68
                        next
                        edit 69
                            set action block
                            set category 23
                        next
                        edit 79
                            set category 53
                        next
                        edit 80
                            set category 49
                        next
                        edit 81
                            set category 31
                        next
                        edit 82
                            set category 43
                        next
                        edit 83
                            set category 51
                        next
                        edit 84
                            set category 52
                        next
                        edit 85
                            set category 50
                        next
                        edit 86
                            set category 41
                        next
                        edit 87
                            set category 81
                        next
                        edit 88
                            set category 56
                        next
                        edit 89
                            set category 84
                        next
                        edit 70
                            set action block
                        next
                    end
            end
    next
end      
config webfilter profile						# Security Profiles::Web Filter::Profiles
    edit "WF-MARKETING"
        set ovrd-perm bannedword-override urlfilter-override fortiguard-wf-override contenttype-check-override
            config override
                set ovrd-user-group ""
            end
            config ftgd-wf
                unset options
                set category-override 143
                    config filters
                        edit 83
                            set category 143
                        next
                        edit 1
                            set category 142
                        next
                        edit 2
                            set category 140
                        next
                        edit 3
                            set category 141
                        next
                        edit 4
                            set action block
                            set category 83
                        next
                        edit 5
                            set action block
                            set category 5
                        next
                        edit 6
                            set action block
                            set category 1
                        next
                        edit 7
                            set action block
                            set category 6
                        next
                        edit 8
                            set action block
                            set category 12
                        next
                        edit 9
                            set action block
                            set category 3
                        next
                        edit 10
                            set action block
                            set category 4
                        next
                        edit 11
                            set action block
                            set category 62
                        next
                        edit 12
                            set action block
                            set category 59
                        next
                        edit 13
                            set action block
                            set category 7
                        next
                        edit 14
                            set action block
                            set category 9
                        next
                        edit 15
                            set action block
                            set category 64
                        next
                        edit 16
                            set action block
                            set category 2
                        next
                        edit 17
                            set action block
                            set category 15
                        next
                        edit 18
                            set action block
                            set category 11
                        next
                        edit 19
                            set action block
                            set category 66
                        next
                        edit 20
                            set action block
                            set category 57
                        next
                        edit 21
                            set action block
                            set category 13
                        next
                        edit 22
                            set action block
                            set category 8
                        next
                        edit 23
                            set action block
                            set category 14
                        next
                        edit 24
                            set action block
                            set category 63
                        next
                        edit 25
                            set action block
                            set category 67
                        next
                        edit 26
                            set action block
                            set category 65
                        next
                        edit 27
                            set action block
                            set category 16
                        next
                        edit 28
                            set action block
                            set category 24
                        next
                        edit 29
                            set action block
                            set category 19
                        next
                        edit 30
                            set action block
                            set category 75
                        next
                        edit 31
                            set action block
                            set category 76
                        next
                        edit 32
                            set action block
                            set category 72
                        next
                        edit 33
                            set category 25
                        next
                        edit 34
                            set action block
                            set category 26
                        next
                        edit 35
                            set action block
                            set category 61
                        next
                        edit 36
                            set action block
                            set category 86
                        next
                        edit 37
                            set action block
                            set category 17
                        next
                        edit 38
                            set action block
                            set category 29
                        next
                        edit 39
                            set action block
                            set category 18
                        next
                        edit 40
                            set action block
                            set category 77
                        next
                        edit 41
                            set action block
                            set category 82
                        next
                        edit 42
                            set action block
                            set category 71
                        next
                        edit 43
                            set action block
                            set category 85
                        next
                        edit 44
                            set action block
                            set category 54
                        next
                        edit 45
                            set action block
                            set category 30
                        next
                        edit 46
                            set action block
                            set category 28
                        next
                        edit 47
                            set action block
                            set category 58
                        next
                        edit 48
                            set action block
                            set category 20
                        next
                        edit 49
                            set action block
                            set category 40
                        next
                        edit 50
                            set action block
                            set category 33
                        next
                        edit 51
                            set action block
                            set category 69
                        next
                        edit 52
                            set action block
                            set category 34
                        next
                        edit 53
                            set action block
                            set category 55
                        next
                        edit 54
                            set action block
                            set category 35
                        next
                        edit 55
                            set action block
                            set category 36
                        next
                        edit 56
                            set action block
                            set category 70
                        next
                        edit 57
                            set action block
                            set category 87
                        next
                        edit 58
                            set action block
                            set category 48
                        next
                        edit 59
                            set action block
                            set category 80
                        next
                        edit 60
                            set action block
                            set category 38
                        next
                        edit 61
                            set action block
                            set category 78
                        next
                        edit 62
                            set action block
                            set category 39
                        next
                        edit 63
                            set action block
                            set category 79
                        next
                        edit 64
                            set action block
                            set category 42
                        next
                        edit 65
                            set category 37
                        next
                        edit 66
                            set action block
                            set category 44
                        next
                        edit 67
                            set action block
                            set category 46
                        next
                        edit 68
                            set action block
                            set category 47
                        next
                        edit 69
                            set action block
                            set category 68
                        next
                        edit 70
                            set action block
                            set category 23
                        next
                        edit 72
                            set category 53
                        next
                        edit 73
                            set category 49
                        next
                        edit 74
                            set category 31
                        next
                        edit 75
                            set category 43
                        next
                        edit 76
                            set category 51
                        next
                        edit 77
                            set category 52
                        next
                        edit 78
                            set category 50
                        next
                        edit 79
                            set category 41
                        next
                        edit 80
                            set category 81
                        next
                        edit 81
                            set category 56
                        next
                        edit 82
                            set category 84
                        next
                        edit 71
                            set action block
                        next
                    end
            end
    next
end
config webfilter profile						# Security Profiles::Web Filter::Profiles
    edit "WF-VIP"
        set ovrd-perm bannedword-override urlfilter-override fortiguard-wf-override contenttype-check-override
            config override
                set ovrd-user-group ""
            end
            config ftgd-wf
                unset options
                    config filters
                        edit 16
                            set category 143
                        next
                        edit 1
                            set category 142
                        next
                        edit 2
                            set category 140
                        next
                        edit 3
                            set category 141
                        next
                        edit 4
                            set action block
                            set category 83
                        next
                        edit 5
                            set action block
                            set category 5
                        next
                        edit 6
                            set action block
                            set category 1
                        next
                        edit 7
                            set action block
                            set category 6
                        next
                        edit 8
                            set action block
                            set category 12
                        next
                        edit 9
                            set action block
                            set category 3
                        next
                        edit 10
                            set action block
                            set category 4
                        next
                        edit 11
                            set action block
                            set category 62
                        next
                        edit 12
                            set action block
                            set category 59
                        next
                        edit 17
                            set category 7
                        next
                        edit 18
                            set category 9
                        next
                        edit 19
                            set category 64
                        next
                        edit 20
                            set category 2
                        next
                        edit 21
                            set category 15
                        next
                        edit 22
                            set category 11
                        next
                        edit 23
                            set category 66
                        next
                        edit 24
                            set category 57
                        next
                        edit 25
                            set category 13
                        next
                        edit 26
                            set category 8
                        next
                        edit 27
                            set category 14
                        next
                        edit 28
                            set category 63
                        next
                        edit 29
                            set category 67
                        next
                        edit 30
                            set category 65
                        next
                        edit 31
                            set category 16
                        next
                        edit 32
                            set category 24
                        next
                        edit 33
                            set category 19
                        next
                        edit 34
                            set category 75
                        next
                        edit 35
                            set category 76
                        next
                        edit 36
                            set category 72
                        next
                        edit 37
                            set category 25
                        next
                        edit 13
                            set action block
                            set category 26
                        next
                        edit 14
                            set action block
                            set category 61
                        next
                        edit 15
                            set action block
                            set category 86
                        next
                        edit 38
                            set category 17
                        next
                        edit 39
                            set category 29
                        next
                        edit 40
                            set category 18
                        next
                        edit 41
                            set category 77
                        next
                        edit 42
                            set category 82
                        next
                        edit 43
                            set category 71
                        next
                        edit 44
                            set category 85
                        next
                        edit 45
                            set category 54
                        next
                        edit 46
                            set category 30
                        next
                        edit 47
                            set category 28
                        next
                        edit 48
                            set category 58
                        next
                        edit 49
                            set category 20
                        next
                        edit 50
                            set category 40
                        next
                        edit 51
                            set category 33
                        next
                        edit 52
                            set category 69
                        next
                        edit 53
                            set category 34
                        next
                        edit 54
                            set category 55
                        next
                        edit 55
                            set category 35
                        next
                        edit 56
                            set category 36
                        next
                        edit 57
                            set category 70
                        next
                        edit 58
                            set category 87
                        next
                        edit 59
                            set category 48
                        next
                        edit 60
                            set category 80
                        next
                        edit 61
                            set category 38
                        next
                        edit 62
                            set category 78
                        next
                        edit 63
                            set category 39
                        next
                        edit 64
                            set category 79
                        next
                        edit 65
                            set category 42
                        next
                        edit 66
                            set category 37
                        next
                        edit 67
                            set category 44
                        next
                        edit 68
                            set category 46
                        next
                        edit 69
                            set category 47
                        next
                        edit 70
                            set category 68
                        next
                        edit 71
                            set category 23
                        next
                        edit 72
                            set category 53
                        next
                        edit 73
                            set category 49
                        next
                        edit 74
                            set category 31
                        next
                        edit 75
                            set category 43
                        next
                        edit 76
                            set category 51
                        next
                        edit 77
                            set category 52
                        next
                        edit 78
                            set category 50
                        next
                        edit 79
                            set category 41
                        next
                        edit 80
                            set category 81
                        next
                        edit 81
                            set category 56
                        next
                        edit 82
                            set category 84
                        next
                        edit 83
                        next
                    end
            end
    next
end

Como podem ver a configuração via CLI pode ficar um pouco extensa, por isso é muito mais interessante configurarmos e verificarmos isso via GUI. Alguns detalhes interessantes:

  • “Allow” não gera log de Web Filter (a categoria do site não é incluída no log), na CLI isso é refletido pela ausência da categoria explicitamente na configuração
  • “Monitor” gera log de Web Filter (populando o campo “Category Description”), na CLI vai existir a definição da categoria, mas sem ação explícita
  • “Warning” gera uma tela que avisa que o acesso não é recomendado, mas que deixa o usuário proceder com o acesso (como um reforço da política, mas que não vai impedir o acesso caso ele realmente seja necessário)

Segue o exemplo do como ficaria na GUI o perfil que criamos para “Domain Users”:

config-domain-users

Após criação dos perfis de Web Filter vamos associá-los aos grupos na política de firewall.

config firewall policy
    edit 3
        set srcintf "LAN"
        set dstintf "WAN"
        set srcaddr "net-10.0.1.0/24"
        set action accept
        set webcache enable
        set fsso enable
        set log-unmatched-traffic enable
        set identity-based enable
        set nat enable
            config identity-based-policy
                edit 2
                    set schedule "always"
                    set logtraffic all
                    set utm-status enable
                    set groups "Domain Users-FSSO"
                    set dstaddr "all"
                    set service "Web Access"
                    set webfilter-profile "WF-DOMAIN-USERS"
                    set profile-protocol-options "default"
                next
                edit 1
                    set schedule "always"
                    set logtraffic all
                    set logtraffic-start enable
                    set utm-status enable
                    set groups "Information Technology-FW"
                    set dstaddr "all"
                    set service "Web Access"
                    set webfilter-profile "WF-IT"
                    set profile-protocol-options "default"
                next
                edit 3
                    set schedule "always"
                    set logtraffic all
                    set utm-status enable
                    set groups "Marketing-FSSO"
                    set dstaddr "all"
                    set service "Web Access"
                    set webfilter-profile "WF-MARKETING"
                    set profile-protocol-options "default"
                next
                edit 4
                    set schedule "always"
                    set logtraffic all
                    set utm-status enable
                    set groups "VIP-FSSO"
                    set dstaddr "all"
                    set service "Web Access"
                    set webfilter-profile "WF-VIP"
                    set profile-protocol-options "default"
                next
            end
    next
end

Ou de maneira muito mais amigável na GUI:

config-policy-identity

Ok, tudo configurado agora vamos testar e resolver os problemas (intencionalmente colocados).

Ao logar como hford (Domain Users) e tentarmos acessar a Internet vemos a tela de Firewall Authentication:

fw-auth

Estranho… Ao rever a regra acima notamos que o grupo “Information Technology-FW” é de um tipo diferente dos demais, revendo a configuração dele e comparando com os outros grupos criados recentemente é possível ver que ele é um grupo do tipo “Firewall” enquanto os demais são do tipo “Fortinet Single Sign-On”. A tela de autenticação que nos é apresentada ocorre devido a existência desse grupo na regra que configuramos, portanto para corrigir isso vamos criar um grupo novo para IT, dessa vez como SSO e utilizá-lo na nossa política

config user group
    edit "Information Technology-FSSO"
        set group-type fsso-service
    next
end
</pre>
<pre>config firewall policy
    edit 3
            config identity-based-policy
                edit 1
                    set groups "Information Technology-FSSO"
            end
end

Novo teste, dessa vez não vemos a tela de Firewall Authentication porém ainda não temos acesso, a mensagem de erro “The page cannot be displayed” é exibida. Conferindo os logs no FGT vemos:

LAB-DC # exec log filter field srcip 10.0.1.100
LAB-DC # exec log filter field dstport 80
LAB-DC # exec log display
6 logs found.
6 logs returned.

1: date=2014-09-18 time=16:29:38 logid=0000000013 type=traffic subtype=forward level=notice vd=root srcip=10.0.1.100 srcport=2467 srcintf="port3" dstip=66.171.121.34 dstport=80 dstintf="port2" sessionid=5443 status=deny policyid=3 dstcountry="United States" srccountry="Reserved" trandisp=noop service=HTTP proto=6 duration=0 sentbyte=0 rcvdbyte=0

2: date=2014-09-18 time=16:29:32 logid=0000000013 type=traffic subtype=forward level=notice vd=root srcip=10.0.1.100 srcport=2467 srcintf="port3" dstip=66.171.121.34 dstport=80 dstintf="port2" sessionid=5441 status=deny policyid=3 dstcountry="United States" srccountry="Reserved" trandisp=noop service=HTTP proto=6 duration=0 sentbyte=0 rcvdbyte=0

....

O bloqueio está ocorrendo na policy id 3, a única maneira disso ocorrer é através do bloqueio pela regra de DENY implícita, se o tráfego chega nela é porque existe algum problema com a identificação do usuário que está tentando navegar. Vamos verificar como está o agente e a lista de usuários identificados no FGT.

LAB-DC # diag debug authd fsso list
----FSSO logons----
Total number of logons listed: 0, filtered: 0
----end of FSSO logons----

E no agente:

agent-std

O usuário logado é identificado porém o FGT não parece reconhecer esta informação. Veja também que os grupos do usuários aparecem no formato “Domínio/Grupo” diferente da maneira de como fizemos os filtros de grupo, no formato ““CN=Marketing,OU=HQ,DC=ad,DC=deadpackets,DC=com”. Lendo o capítulo de autenticação do Handbook é possível notar que quando utilizamos a informação do servidor LDAP na configuração do SSO Server (como nós fizemos) é necessário configurar o agente no modo “Advanced” para que envie a informação dos grupos da maneira correta, basta alterar em “Set Directory Access Information”:

Limpe o cache de usuários (Show Logon Users, Clear User Cache) e faça login novamente, verifique como a informação dos grupos que esse usuário pertence é apresentada em outro formato:

agent-adv

e ao verificar no FGT temos a informação correta, coerente com o que é exibido no agente:

LAB-DC # diag debug authd fsso list
----FSSO logons----
IP: 10.0.1.100  User: HFORD  Groups: CN=DOMAIN USERS,CN=USERS,DC=AD,DC=DEADPACKETS,DC=COM  Workstation: ALEXANDR-BD97B3.AD.DEADPACKETS.COM MemberOf: Domain Users-FSSO 
Total number of logons listed: 1, filtered: 0
----end of FSSO logons----

Essa mesma informação pode ser vista na GUI em User & Device::Monitor::Firewall, ative a opção “Show all FSSO Logons” no canto superior direito.

sh-fsso-logons

Uma vez garantido a identificação dos usuários vamos testar o acesso com hford (IT) e… SUCESSO!

Realizando os demais podemos constatar que todos tem o resultado esperado: Pornografia bloqueado com sucesso, Redes Sociais idem… porém ao tentar entrar no Facebook usando HTTPS conseguimos acessar! Isso ocorre porque não ativamos a inspeção do SSL, seguimos para a configuração:

Perfil de SSL Inspection:

config firewall deep-inspection-options			# Policy::SSL/SSH Inspection
    edit "https-only"					# Na versão 5.0.9 esse perfil já existe por padrão
            config https
                set ports 443
            end
            config ftps
                set ports 990
                set status disable
            end
            config imaps
                set ports 993
                set status disable
            end
            config pop3s
                set ports 995
                set status disable
            end
            config smtps
                set ports 465
                set status disable
            end
            config ssh
                set ports 22
                set status disable
            end
    next
end

Alteração na regra de firewall:

config firewall policy
    edit 3
            config identity-based-policy
                edit 2						# Ou simplesmente ative a opção "SSL/SSH Inspection"
                    set deep-inspection-options "https-only"	# e selecione o perfil "https-only"
			end
end

Alteração no perfil de Web Filter

conf webfilter profile 					
	edit WF-DOMAIN-USERS 
		set options https-url-scan			 # Idem a desabilitar a opção "Scan Encrypted Connections" via GUI
end

Teste novamente e tudo funciona como esperado!

Agora replicamos as alterações acimas para os outros grupos (na política de firewall e no perfil do Web Filter), e fazemos os testes novamente, segue log de resultados para o teste com os seguintes websites:

http://www.exploit-db.com (Hacking)
http://www.pornhub.com (Pornography)
http://www.facebook.com (Social Networks)
http://www.fortinet.com (Information Technology, incluído em General Interest – Business)

hford (Domain Users)

hford-log

jwayne (IT)

jwayne-log

rdeniro (Marketing)

rdeniro-log

ggarbo (VIP)

ggarbo-log

Como vemos acima todos os testes mostram que os perfis definidos inicialmente estão configurados corretamente e que os bloqueios/liberações estão ocorrendo conforme o esperado, de maneira granular usando os grupos do AD e utilizando categorias que são atualizadas constantemente, minimizando riscos de segurança como os relacionados a acessos indevidos e utilização excessiva de banda.

Referências

User Authentication
Configuring FortiOS v5.0 Webfiltering for HTTPS scanning without SSL Deep Scanning
Technical Note : Allowing FSSO Ports when using Windows Server 2008

Anúncios

14/09/2009

Fazer query LDAP do Linux CentOS

Filed under: webfilters — drak @ 10:00 AM

Durante a integração do webfilter com a base LDAP, importante para a granularidade da concessão de liberações, é essencial ter visibilidade de como o serviço de diretório está estruturado.

Caso seu webfilter esteja sobre um SO Windows isso é moleza, basta instalar o “Ferramentas Administrativas” e ler a base com as credenciais do domínio, porém, caso seu Webfilter seja baseado em Linux as coisas complicam um pouco.

Para contornar esse problema, utilizei um pacote para o CentOS da implementação open source OpenLDAP. Segue o procedimento utilizado para a consulta a partir da CLI.

Instalação do pacote adequado

yum install openldap-clients.i386

Consulta na base

ldapsearch -x -h 192.168.1.252 -b 'OU=MKT,DC=lab,DC=local' -D 'CN=leitura,OU=MKT,DC=lab,DC=local' -w leitura '(objectCategory=person)'

Onde os parâmetros utilizados são os seguintes:

-h: IP do Servidor LDAP
-b: DN onde serão procurados os usuários, limita o escopo da busca
-D: Usuário utilizado para consulta a base
-w: Senha do usuário, pode ser substituído por ‘-W’ para que você entre com a senha no momento da busca

Outros filtros (utilizando a sintaxe comum de querys LDAP) podem ser utilizados para que sua consulta retorne os resultados adequados. Por exemplo, no lugar do ‘(objectCategory=person)’ podem ser usados:

‘(sAMAccountName=vipuser)’ – Busca um usuário com o account name “vipuser”
‘(memberOf=CN=FC-LAB-AcessoVIP,OU=MKT,DC=lab,DC=local)’ – Busca os membros do grupo “FC-LAB-AcessoVIP”

Referências
How to write a LDAP search filter

07/09/2009

Dúvida nas categorias do Webfilter

Filed under: webfilters — drak @ 10:00 AM

Uma das dúvidas mais comuns ao montar a política de bloqueio do filtro de conteúdo web é: Qual site está em qual categoria ?

Embora seja impossível listar cada site de cada categoria (primeiro porque isso é o segredo de cada produto, segundo porque seria uma lista com milhões de sites entrando e saindo de cada categoria diariamente) é possível verificar pontualmente alguns sites chave.

No site SurfControl Filter Testing é possível testar a URL de interesse, minimizando possíveis erros de interpretação nas diferentes categorias do seu filtro de conteúdo.

Blog no WordPress.com.