Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    TUTORIAL - Web Filter - Bloqueio de sites usando DNS - Pacote NXFILTER + Pfsense

    Scheduled Pinned Locked Moved Portuguese
    28 Posts 13 Posters 18.0k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      castrofrota
      last edited by

      Pergunta: É possível usar em conjunto com o Squid? Tipo, somente o Squid teria acesso as porta 80, 443 e etc, configuramos o Squid para consultar somente o DNS do NxFilter, mas o controle de acesso é feito pelo NxFilter integrado com o AD. Resolveria o problema da fragilidade?

      É possível ou viajei?

      Hoje faço algo parecido com o OpenDNS, deixo bloqueado a categoria Porn por DNS e para outras categorias, uso o SquiGuard mesmo. O problema é que não teria como liberar a categoria Porn para um determinado grupo do AD ou user, caso houvesse solicitação.

      1 Reply Last reply Reply Quote 0
      • V
        victorfmaraujo
        last edited by

        @JackL:

        @marcelloc:

        @victorfmaraujo:

        Como não existe "pacote oficial" para pfsense, não temos como utilizar (Por enquanto) o fórum como canal principal de comunicação.

        Pode colocar aqui com o procedimento de instalação como fiz com o contador de regras e o patch da consulta ldap do squidguard.

        @victorfmaraujo:

        Diferente do Squid (Que é um Proxy Server), o Nxfilter se trata de Um Servidor DNS com integração à listas (shallalist por exemplo) onde podemos configurar ACLS (Em comparação ao squid) permitindo ou negando um determinado Domínio.

        Tem uma implementação parecida usando o bind com views + opendns.

        Aliás, temos uma aula específica sobre este tema no treinamento pfSense Extranet: http://sys-squad.com/sys/curso/52

        Pessoalmente vejo vantagens nesse tipo de implementação para ambientes controlados mas infelizmente filtro de navegação por dns é facilmente contornado pelos usuários curiosos ou furiosos uma vez que as portas de navegação ficam abertas para acesso direto.

        Além disso, o NxFilter só consegue efetuar bloqueios por expressões/palavras com utilização de agents na ponta - o que está longe de ser prático!

        []`s
        Jack

        Com certeza, assim que chegar em casa irei postar aqui tanto os vídeos do pessoal já testando, bem como o passo a passo de implementacao.

        Concordo inclusive com o Jack sobre as portas http e https fixarem abertas, inclusive isso foi questão de uma calorosa discussão ontem no grupo Rsrs.

        Chegamos à conclusão que,  até mesmo com o Squid sem interceptação ssl, não fica totalmente fechado e que o ideal é o conjunto com um ids /ips.

        Creio inclusive que o treinamento de suricata irá me ajudar bastante nessa empreitada.

        1 Reply Last reply Reply Quote 0
        • JackLJ
          JackL
          last edited by

          @castrofrota:

          Pergunta: É possível usar em conjunto com o Squid? Tipo, somente o Squid teria acesso as porta 80, 443 e etc, configuramos o Squid para consultar somente o DNS do NxFilter, mas o controle de acesso é feito pelo NxFilter integrado com o AD. Resolveria o problema da fragilidade?

          É possível ou viajei?

          Possível, é, mas não é funcional, nem prático e muito menos performático. Dentro desta configuração, ao meu ver, o NxFilter fica como 'água de salsicha', ou seja, sem muita utilidade! - Já que todo o trabalho vai continuar sendo feito pelo Squid.

          Aliás, foi pensando exatamente neste tipo de cenário, onde se busca controle e auditoria de conexões HTTP/HTTPS - sem abrir mão de alto-desempenho, que desenvolvemos o SSO WMI: http://conexti.com.br/sso_wmi

          []`
          Jack

          Treinamentos de Elite: http://sys-squad.com
          Soluções: https://conexti.com.br

          1 Reply Last reply Reply Quote 0
          • JackLJ
            JackL
            last edited by

            @victorfmaraujo:

            Concordo inclusive com o Jack sobre as portas http e https fixarem abertas, inclusive isso foi questão de uma calorosa discussão ontem no grupo Rsrs.
            Chegamos à conclusão que,  até mesmo com o Squid sem interceptação ssl, não fica totalmente fechado e que o ideal é o conjunto com um ids /ips.

            A questão é que com Squid, as conexões HTTP/HTTPS passam obrigatoriamente por dentro do Proxy. Nada 'fica aberto' da LAN pra WAN sem 'auditoria' ou aplicação de 'webfilter' - mesmo sem intercepção SSL (coisa que aliás, particularmente, não recomendo por questões práticas e de segurança)!

            []`s
            Jack

            Treinamentos de Elite: http://sys-squad.com
            Soluções: https://conexti.com.br

            1 Reply Last reply Reply Quote 0
            • V
              victorfmaraujo
              last edited by

              @marcelloc:

              Pode colocar aqui com o procedimento de instalação como fiz com o contador de regras e o patch da consulta ldap do squidguard.

              Editei o primeiro Post e adicionei o passo a passo de implementação e alguns vídeos.

              1 Reply Last reply Reply Quote 0
              • M
                mateus0032
                last edited by

                Vejo uma grande ajuda para muitos, nada contra mas em redes que se utiliza muitos dispositivos movel como citado pelo Tomas acredito que sim é uma grande ajuda. Mas em questão de segurança dentre mais, sim squid é uma alternativa muito boa mas não vejo total segurança então nada que utilizar IDS/IPS ou pfblock ou ambos poderia sim manter uma boa segurança…
                Esse é meu ponto de vista onde hoje utilizo com dezenas de redes wireless e esta muito bom...

                1 Reply Last reply Reply Quote 0
                • E
                  elizeufreitas
                  last edited by

                  Concordo com o Mateus, pois atualmente nosso grande problema é lidar com bloqueios https nos smartphones, e isso o nxfilter trouxe com facilidade.

                  Realmente dá pra fazer algo parecido com o Bind, más não teremos a mesma praticidade, com as listas.

                  E pra finalizar, essas "facilidades" em burlar a segurança do pfSense em conjunto com o NXFilter, precisa de algum usuário "espertinho", então esse certamente será demitido.

                  1 Reply Last reply Reply Quote 0
                  • JackLJ
                    JackL
                    last edited by

                    @mateus0032:

                    Vejo uma grande ajuda para muitos, nada contra mas em redes que se utiliza muitos dispositivos movel como citado pelo Tomas acredito que sim é uma grande ajuda. Mas em questão de segurança dentre mais, sim squid é uma alternativa muito boa mas não vejo total segurança então nada que utilizar IDS/IPS ou pfblock ou ambos poderia sim manter uma boa segurança…
                    Esse é meu ponto de vista onde hoje utilizo com dezenas de redes wireless e esta muito bom...

                    "Total segurança" é um termo que ninguém usaria em sã consciência - simplesmente porque ela não existe de fato!.

                    Contudo, trabalhar com as portas de conexão diretas (80/443 neste exemplo) abertas, é um ato falho consideravelmente grave. O usuário não precisa ser 'muito esperto' para configurar um simples proxy local na sua máquina ou se quer isso. Ele pode usar centenas de opções em vários países do mundo de proxys abertos na Internet. Se você ainda não enfrentou problemas com usuários burlando este frágil esquema de segurança baseado num filtro DNS, logo, logo terá (se é que ainda não o tem e você não percebeu - já que não aplica filtros e auditoria sobre as portas de conexão).

                    Quanto a usar um IPS/IDS ou mesmo o pfBlocker pra conexões saintes, realmente não entendo como isso poderia ajudar de fato. Um sistema de análise de intrusão em conjunto com bloqueios por ranges IP com base da região geográfica (pfBlocker) não resolveria nada neste caso. Ao contrário, deixaria todo o processo de análise de conexões muuuuuuiiiittooooo mais lento que um webproxy com webfilter bem configurado. Toda e qualquer eventual vantagem assinalada aqui em relação a performance com o uso do NxFilter, se perderia muito facilmente e ainda por cima sem qualquer resultado prático que aumentasse a segurança. Notem que usar um IDS/IPS ou um "IPv4/v6 List Sources by Country" são técnicas essencialmente de proteção na extranet (proteger a rede interna da Internet e não o oposto).

                    Enfim, estas são apenas algumas reflexões que precisam ser feitas. Sei que é 'fácil subir um NxFilter na rede' e parar de filtrar/auditar as portas diretas de configuração. Também pode ser mais performático - mas não se iludam, isso está longe de ser algo eficiente do ponto de vista de segurança. Acho que pode até ser uma técnica complementar, mas não única para proteger redes locais de acesso indevido na web.

                    []`s
                    Jack

                    Treinamentos de Elite: http://sys-squad.com
                    Soluções: https://conexti.com.br

                    1 Reply Last reply Reply Quote 0
                    • T
                      ThoMalverde
                      last edited by

                      Pergunta : É possível instalar o nxfilter no PfSense 2.3.2?

                      1 Reply Last reply Reply Quote 0
                      • JackLJ
                        JackL
                        last edited by

                        @ThoMalverde:

                        Pergunta : É possível instalar o nxfilter no PfSense 2.3.2?

                        Sim, é possível: http://blog.bemanuel.com.br/post/nxfilter/nxfilter_pfsense_2_3/

                        []`s
                        Jack

                        Treinamentos de Elite: http://sys-squad.com
                        Soluções: https://conexti.com.br

                        1 Reply Last reply Reply Quote 0
                        • P
                          pliniofelipe
                          last edited by

                          @JackL:

                          @ThoMalverde:

                          Pergunta : É possível instalar o nxfilter no PfSense 2.3.2?

                          Sim, é possível: http://blog.bemanuel.com.br/post/nxfilter/nxfilter_pfsense_2_3/

                          []`s
                          Jack

                          Boa tarde, o pacote do java jdk não estão mais disponível no repositório padrão, como efetuaria a instalação dele neste caso?
                          Se alguém puder ajudar agradecido! Muito Obrigado por este tutorial!

                          Nulla tenaci invia est via - "Para os persistentes, nenhum caminho é impossível"

                          1 Reply Last reply Reply Quote 0
                          • T
                            ThoMalverde
                            last edited by

                            @pliniofelipe:

                            @JackL:

                            @ThoMalverde:

                            Pergunta : É possível instalar o nxfilter no PfSense 2.3.2?

                            Sim, é possível: http://blog.bemanuel.com.br/post/nxfilter/nxfilter_pfsense_2_3/

                            []`s
                            Jack

                            Boa tarde, o pacote do java jdk não estão mais disponível no repositório padrão, como efetuaria a instalação dele neste caso?
                            Se alguém puder ajudar agradecido! Muito Obrigado por este tutorial!

                            Segue esse tutorial do Tacio Andrade : http://pastebin.com/auANUcxk!
                            Consegui instalar por ele!

                            E 1 Reply Last reply Reply Quote 0
                            • P
                              pliniofelipe
                              last edited by

                              @ThoMalverde:

                              @pliniofelipe:

                              @JackL:

                              @ThoMalverde:

                              Pergunta : É possível instalar o nxfilter no PfSense 2.3.2?

                              Sim, é possível: http://blog.bemanuel.com.br/post/nxfilter/nxfilter_pfsense_2_3/

                              []`s
                              Jack

                              Boa tarde, o pacote do java jdk não estão mais disponível no repositório padrão, como efetuaria a instalação dele neste caso?
                              Se alguém puder ajudar agradecido! Muito Obrigado por este tutorial!

                              Segue esse tutorial do Tacio Andrade : http://pastebin.com/auANUcxk!
                              Consegui instalar por ele!

                              Funcionou perfeitamente! Muito Obrigado

                              Vou aproveitar e agregar alguns detalhes do passo a passo:

                              Segue o Tutorial do Tacio Andrade  http://pastebin.com/auANUcxk!

                              ATENÇÃO PARA A LINHA 14 DO TUTORIAL DO TACIO, um pequeno ERRO de digitação na extensão do pacote JDK para instalar

                              1 - #!/bin/sh
                              2 - # Script: Scritp de instalação do NXFilter no pfSense 2.3 RC
                              3 - # Autor: Tácio Andrade
                              4 -
                              5 - # Instala os pacotes necessários:
                              6 - echo "Atualizando a lista de pacotes"
                              7 -  pkg update
                              8 - echo "Instalando o Cron"
                              9 - pkg install pfSense-pkg-Cron
                              10 - echo "Baixando o Java"
                              11 - fetch http://tacioandrade.com/owncloud/index.php/s/zDW2mtOgpDxT99c/download -o openjdk8-jre.zip
                              12 - unzip openjdk8-jre.zip
                              13 - echo "Instalando o Java"
                              14 - pkg add openjdk8-jre/openjdk8-jre*.xtz  ''TROQUE A EXTENSÃO .XTZ POR .TXZ''  se não não irá instalar!!
                              15 - rehash

                              16 - # Inicia a instalação do NXFilter
                              17 - echo "Criando a pasta do NXFilter"
                              17 - mkdir -p /opt/nxfilter/
                              18 - cd /opt/nxfilter/
                              19 - echo "Baixando a versão 3.1.6 do NXFilter"
                              20 - fetch http://nxfilter.org/download/nxfilter-3.1.6.zip
                              21 - unzip nxfilter-.zip
                              22 - rm -fr nxfilter-
                              .zip
                              23 - chmod +x /opt/nxfilter/bin/*.sh
                              24 - echo "NXFilter instalado com sucesso!"
                              25 - read -p "Vá até o dnsforward e desabilite o serviço. Depois disso vá em System -> Advanced e altere o TCP port para 10443. E pressione qualquer tecla para continuar a configuração."

                              26 - # Instalando o Shallalist
                              27 - echo "Instalando o Shallalist"
                              28 - mkdir  /opt/nxfilter/shallalist1
                              29 - cd /opt/nxfilter/shallalist1
                              30 - fetch http://www.shallalist.de/Downloads/shallalist.tar.gz
                              31 - tar -zxf shallalist.tar.gz
                              32 - echo "Se prepara pois esta parte demora!!!!!"
                              33 - /opt/nxfilter/bin/update_sh.sh /opt/nxfilter/shallalist1/BL

                              34 - # Cria Script de auto start caso o serviço caia
                              35 - fetch http://tacioandrade.com/owncloud/index.php/s/euft2ruu4StzORM/download -o /root/iniciaNXFilter.sh

                              36 - chmod +x /root/iniciaNXFilter.sh
                              37 - echo "NXFilter instalado com sucesso. Crie uma regra no Cron para executar o script /root/iniciaNXFilter.sh o tempo todo e sua instalação estara finalizada!!!"

                              AGREGANDO

                              1 - Você pode instalar a versão mais nova do NXFILTER, basta quando chegar na linha 19 e 20 do tutorial do Tácio vc trocar o nome do arquivo para a versão mais recente do NXFILTER, fiquem atentos a NOVA POLÍTICA DE USO DO NXFILTER, pois a nova versão 3.4  ela foi alterada, antes era possível usar a Blacklist SHALLALIST em ambientes COMERCIAIS sem a licença, mas a SHALLALIST é livre apenas em ambientes para fins NÃO COMERCIAL. A solução que eles fizeram foi uma versão OEM do NXFILTER, no site tem o endereço para download, e quando for instalar em ambiente COMERCIAL use a versão OEM;

                              2 - Instale o Pacote ShellCMD para fazer o NXFilter iniciar junto com o REBOOT do PFSense
                              Nele adicione o comando : /opt/nxfilter/bin/startup.sh –d

                              3 - A Time Zone do NXFilter costuma estar diferente a do Brasil, para corrigir basta editar o arquivo /opt/nxfilter/bin/startup.sh e editar as linhas 8 e 12 logo após ''java'' e acrescentar o parâmetro:  -Duser.timezone=America/Sao_Paulo LEMBRANDO, NAS LINHAS 8 E 12
                              O Correto ficará assim:

                              #!/bin/sh
                              cd $(dirname $0)
                              cd ..
                              export NX_HOME=$PWD
                              export PATH=$PATH:/usr/bin:/usr/local/bin
                              case $1 in
                              '-d')
                              nohup java -Duser.timezone=America/Sao_Paulo -Djava.net.preferIPv4Stack=true -Xmx512m -Djava.security.egd=file:/dev/./urandom -cp $NX_HOME/nxd.jar:$NX_HOME//lib/: nxd.Main > /dev/null 2>&1 &
                              ;;
                              )
                              #java -Xmx512m -cp $NX_HOME/nxd.jar:$NX_HOME//lib/
                              : nxd.Main
                              java -Duser.timezone=America/Sao_Paulo -Djava.net.preferIPv4Stack=true -Xmx512m -Djava.security.egd=file:/dev/./urandom -cp $NX_HOME/nxd.jar:$NX_HOME//lib/
                              : nxd.Main
                              ;;
                              esac

                              4 - Adicione também este comando ao CRON: /root/checknx.sh configure para executar o tempo todo

                              5 - Comandos Úteis para o NXFILTER

                              opt/nxfilter/bin/startup.sh -d        INICIA O NXFILTER
                              opt/nxfilter/bin/shutdown.sh -d    DESLIGA O NXFILTER

                              1. Abraço a todos!

                              Nulla tenaci invia est via - "Para os persistentes, nenhum caminho é impossível"

                              1 Reply Last reply Reply Quote 0
                              • E
                                eltonalex @ThoMalverde
                                last edited by

                                @thomalverde olá, link quebrado para jdk...alguém conhece algum repositório para baixá-lo???

                                1 Reply Last reply Reply Quote 0
                                • A
                                  amaica
                                  last edited by

                                  Bom dia o link do openjdk está quebrado, alguém teria outro link para disponibilizar?

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    rafael.vla
                                    last edited by

                                    Pessoal, boa tarde.

                                    Existe a possibilidade de trabalhar com o PFSense e NxFilter em hosts diferentes? Pelo que vi, estão sendo instalados todos no mesmo host, como se o NxFilter fosse um 'pacote não oficial' do PFSense.

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post
                                    Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.