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

    Configurar squid numa interface autenticado e na outra transparent

    Scheduled Pinned Locked Moved Portuguese
    34 Posts 6 Posters 6.1k 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.
    • I Offline
      isaiasbertin
      last edited by

      boa noite pessoal

      quero fazer uma implementação do pfsense com 4 interface de rede são 2 wan e 2 lan, mas preciso de uma ajuda pois como na interface padão não consigo fazer tal configuração queria ver como posso fazer no Custom Options esta configurações;

      o que estar fazendo

      numa interface lan tenho proxy autenticado no ad com proxy wpad.dat e na outra interface teria o proxy transparente numa rede visitante sem o proxy wpad.dat pois teria problema com os celulares

      os colegas podem dar uma ajuda utilizo o pfsense 2.2.6-RELEASE (amd64)  com  Squid Cache: Version 3.4.10 e squidGuard-devel 1.5.10

      obrigado

      1 Reply Last reply Reply Quote 0
      • 106659121 Offline
        10665912
        last edited by

        Boa noite campeão, tudo bem?

        Vá em Services>Squid Proxy Server>Transparent Proxy Settings e escolha a outra interface que não irá utilizar o WPAD via DHCP, assim você irá poder ter o proxy transparente para a outra rede sem ter problemas com a atual.

        Um abraço, espero ter ajudado!

        Milton Araújo
        Consultor em Tecnologia da Informação
        Especialista em tecnologias Microsoft, VMware e ferramentas OpenSource e apaixonado por boas práticas.

        1 Reply Last reply Reply Quote 0
        • T Offline
          tomaswaldow
          last edited by

          Quando a autenticação está habilitada não tem como separar por interface.

          Tomas @ 2W Consultoria

          1 Reply Last reply Reply Quote 0
          • I Offline
            isaiasbertin
            last edited by

            se desabilitar uma da autenticação pois tem uma função na aba autenticação que tira a rede da autenticação ai trabalhar com os bloqueios manual para aquela rede

            o que vc acha Tomas

            1 Reply Last reply Reply Quote 0
            • T Offline
              tomaswaldow
              last edited by

              Não tem como separar. Eu virtualizaria e criaria uma instancia para cada autenticação.

              Tomas @ 2W Consultoria

              1 Reply Last reply Reply Quote 0
              • R Offline
                rlrobs
                last edited by

                Acho que você terá que criar uma outra instância do squid. Fiz isso em lab e funcionou, só q no caso usei uma interface pra WPAD e outra pra Captive portal (com squid). A ideia é a mesma.

                +- assim:

                1-No GUI, configura a interface transparente e salva o squid.conf via console. Ex: squid-lab.conf
                2-Muda as configs de 1 pra wpad e reconfigure.
                3- Volte na opção 1(via console) e mude as configurações do arquivo salvo.
                troque:

                • http_port 127.0.0.1:3128 por IP_INTERFACE:3128
                • pid_filename /var/run/squid/squid-lab.conf
                • acl localnet src REDE/MASK 127.0.0.1/8
                • acl allow_subnets src REDE/MASK

                4 - Suba a nova instância:

                /usr/local/squid -k reconfigure -f /usr/local/etc/squid/squid-lab.conf

                Obs:  nos testes que fiz mantive o access.log e o cache.log para as duas instancias do squid. Dessa forma consegui ver os acessos em tempo real na gui.

                1 Reply Last reply Reply Quote 0
                • I Offline
                  isaiasbertin
                  last edited by

                  rlrobs sera que consigo trabalhar com squidguard junto a esta interface também

                  vou tentar fazer isso pois é uma rede visitante pois queria proteger contra as pornografias, mas como os celulares não trabalhão com wpad ai deve ficar configurndo e tal

                  1 Reply Last reply Reply Quote 0
                  • R Offline
                    rlrobs
                    last edited by

                    isaiasbertin,

                    sim. Nos testes que fiz o squidGuard funcionou sem problemas cmo as duas instâncias do squid

                    1 Reply Last reply Reply Quote 0
                    • I Offline
                      isaiasbertin
                      last edited by

                      rlrobs fiz o teste e deu certo mesmo, sera que pode dar algum problema com cache do squid memoria essas coisa sera que não é melhor separar ate o cache na outra instancia e deixar somente os logs

                      o que vc ache caro.

                      1 Reply Last reply Reply Quote 0
                      • R Offline
                        rlrobs
                        last edited by

                        Acredito q se der problema é com o cache.log e access.log, mas não coloquei em produção ainda pra ver o resultado. Coloca em produção aí pra gente ver. Se der problema separa os arquivos.

                        1 Reply Last reply Reply Quote 0
                        • I Offline
                          isaiasbertin
                          last edited by

                          agora tenho que colocar na inicialização somente e ver no que vai dar

                          1 Reply Last reply Reply Quote 0
                          • I Offline
                            isaiasbertin
                            last edited by

                            cara  nos teste que fiz tinha alguma coisa de script wpad ativo ainda
                            ai configurei uma outra maquina para testar o squid na segunda interface se eu comfigurar o cara no navedor o squid funciona a segunda instancia mas não como transparente

                            vou mandar o meu arquivo de conf  acho que tem alguma coisa no pf para redirecionar a porta

                            
                            # This file is automatically generated by pfSense
                            # Do not edit manually !
                            
                            http_port 192.168.10.1:3128 
                            http_port 172.0.0.1:3128 intercept
                            icp_port 0
                            dns_v4_first on
                            pid_filename /var/run/squid/squidvisitante.pid
                            cache_effective_user proxy
                            cache_effective_group proxy
                            error_default_language pt-br
                            icon_directory /usr/pbi/squid-amd64/local/etc/squid/icons
                            visible_hostname pfsense.bertin.local
                            cache_mgr isaias@mastercomp.com.br
                            access_log /var/squid/logs/access.log
                            cache_log /var/squid/logs/cache.log
                            cache_store_log none
                            netdb_filename /var/squid/logs/netdb.state
                            pinger_enable off
                            pinger_program /usr/pbi/squid-amd64/local/libexec/squid/pinger
                            
                            logfile_rotate 30
                            debug_options rotate=30
                            shutdown_lifetime 3 seconds
                            # Allow local network(s) on interface(s)
                            acl localnet src  192.168.10.0/24
                            forwarded_for on
                            httpd_suppress_version_string on
                            uri_whitespace strip
                            
                            cache_mem 64 MB
                            maximum_object_size_in_memory 256 KB
                            memory_replacement_policy heap GDSF
                            cache_replacement_policy heap LFUDA
                            minimum_object_size 0 KB
                            maximum_object_size 4 MB
                            cache_dir ufs /var/squid/cache 1000 16 256
                            offline_mode off
                            cache_swap_low 90
                            cache_swap_high 95
                            cache allow all
                            # Add any of your own refresh_pattern entries above these.
                            refresh_pattern ^ftp:    1440  20%  10080
                            refresh_pattern ^gopher:  1440  0%  1440
                            refresh_pattern -i (/cgi-bin/|\?) 0  0%  0
                            refresh_pattern .    0  20%  4320
                            
                            #Remote proxies
                            
                            # Setup some default acls
                            # From 3.2 further configuration cleanups have been done to make things easier and safer. The manager, localhost, and to_localhost ACL definitions are now built-in.
                            # acl localhost src 127.0.0.1/32
                            acl allsrc src all
                            acl safeports port 21 70 80 210 280 443 488 563 591 631 777 901 9999 3128 3129 1025-65535 
                            acl sslports port 443 563 9999 
                            
                            # From 3.2 further configuration cleanups have been done to make things easier and safer. The manager, localhost, and to_localhost ACL definitions are now built-in.
                            #acl manager proto cache_object
                            
                            acl purge method PURGE
                            acl connect method CONNECT
                            
                            # Define protocols used for redirects
                            acl HTTP proto HTTP
                            acl HTTPS proto HTTPS
                            acl allowed_subnets src 192.168.10.0/24
                            http_access allow manager localhost
                            
                            http_access deny manager
                            http_access allow purge localhost
                            http_access deny purge
                            http_access deny !safeports
                            http_access deny CONNECT !sslports
                            
                            # Always allow localhost connections
                            # From 3.2 further configuration cleanups have been done to make things easier and safer.
                            # The manager, localhost, and to_localhost ACL definitions are now built-in.
                            # http_access allow localhost
                            
                            request_body_max_size 0 KB
                            delay_pools 1
                            delay_class 1 2
                            delay_parameters 1 -1/-1 -1/-1
                            delay_initial_bucket_level 100
                            delay_access 1 allow allsrc
                            
                            # Reverse Proxy settings
                            
                            # Package Integration
                            url_rewrite_program /usr/pbi/squidguard-devel-amd64/bin/squidGuard -c /usr/pbi/squidguard-devel-amd64/etc/squidGuard/squidGuard.conf
                            url_rewrite_bypass off
                            url_rewrite_children 16 startup=8 idle=4 concurrency=0
                            
                            # Custom options before auth
                            
                            # Setup allowed ACLs
                            # Allow local network(s) on interface(s)
                            http_access allow allowed_subnets
                            http_access allow localnet
                            # Default block all to be sure
                            http_access deny allsrc
                            
                            

                            este é meu arquivo

                            cara acredito que falta redirecionar a porta para o squid no pf.conf

                            1 Reply Last reply Reply Quote 0
                            • I Offline
                              isaiasbertin
                              last edited by

                              caros colegas nos meus teste acho que esta faltando no Pocket filter o direcionamento da porta para o squid transparente na segunda interface
                              pois se configurar no navegado funciona

                              sera que alguém tem uma idéia se consigo direcionar o proxy nas configurações da interface ou se posso adicionar esta regra direto no pocket filter

                              e qual seria o comando.

                              pessoa uma ajuda para os colegas

                              1 Reply Last reply Reply Quote 0
                              • R Offline
                                rlrobs
                                last edited by

                                Você criou um arquivo  de configuração pra cada instância squid?  Você quer isso aqui mesmo ?
                                http_port 192.168.10.1:3128
                                http_port 172.0.0.1:3128 intercept

                                1 Reply Last reply Reply Quote 0
                                • I Offline
                                  isaiasbertin
                                  last edited by

                                  sim tenho um para cada instancia, este aquivo é fruto da configuração.
                                  primeiro selecionei as interfaces no ambiente web e gerei o arquivo, então escolhi a interface rede_visitante e selecionei ele como proxy transparente ai gerou este arquivo fiz a copia dele de squid.conf para squidvisitante.conf e montei a segunda instancia do squid com este arquivo.

                                  deu certo a instancia mas não funcionou  como transparente por isso acho que não criou a regra no pocket filter, pois se configurar na mão navega se não não navega, cara fiz de tudo deixei so a esta :

                                  http_port 192.168.10.1:3128 tirei esta  http_port 172.0.0.1:3128 intercept
                                  coloquei assim http_port 192.168.10.1:3128 tranparent
                                  tentei assim http_port 192.168.10.1:3128 intercept e por ultimo so esta http_port 192.168.10.1:3128

                                  não navega transparente tem uma ideia? sabes como adicionar uma regra pocket filter para proxy transparente iria tentar isso

                                  1 Reply Last reply Reply Quote 0
                                  • R Offline
                                    rlrobs
                                    last edited by

                                    Você nao pode fazer isso aqui na instância:

                                    http_port 192.168.10.1:3128
                                    http_port 172.0.0.1:3128 intercept

                                    Ou é transparente (intercept) ou proxy ativo.

                                    Crie um squid.conf agrupado por tipo de instância. Ex:

                                    squid-lab.conf
                                    http_port 192.168.10.1:3128

                                    squid.conf
                                    http_port 172.0.0.1:3128 intercept

                                    1 Reply Last reply Reply Quote 0
                                    • G Offline
                                      gerardocoelho
                                      last edited by

                                      Vendo tentando fazer essa configuração, mas sem sucesso.
                                      Quem conseguiu fazer funcionar poderia fazer um tutorial!?
                                      Desde já agradeço.
                                      Att.
                                      Gerardo Coelho

                                      1 Reply Last reply Reply Quote 0
                                      • I Offline
                                        isaiasbertin
                                        last edited by

                                        Quando ativo o proxy transparente na interface funciona e copio o arquivo ele sempre gera assim
                                        http_port 192.168.10.1:3128
                                        http_port 127.0.0.1:3128 intercept

                                        O endereço de rede mais a  loopback
                                        Pessoal desculpem coloquei errado é a loopback

                                        Se configurar no navegador funciona quer dizer que o arquivo do squid está OK mais no meu ponto de vista está faltando a entrada PF o encaminhamento para porta 80 para o squid trabalhar transparente

                                        Quem sabe solicitar ajuda para o Marcello ou Jack

                                        Mas vamos lá vamos descobrir como colocar esta entrada no PF o firewall

                                        1 Reply Last reply Reply Quote 0
                                        • R Offline
                                          rlrobs
                                          last edited by

                                          Seguinte… acabei de refazer os testes e só funcionou quando eu deixei a instância padrão (configurada via webgui) como transparente e a segunda instância como autenticada. Segue os arquivos de configuração de cada.

                                          Instancia padrão squid.conf e transparente. (Deve ser configurada no webgi)

                                          
                                          # This file is automatically generated by pfSense
                                          # Do not edit manually !
                                          
                                          http_port 10.40.0.1:3128
                                          http_port 127.0.0.1:3128 intercept
                                          icp_port 0
                                          dns_v4_first on
                                          pid_filename /var/run/squid/squid.pid
                                          cache_effective_user squid
                                          cache_effective_group proxy
                                          error_default_language en
                                          icon_directory /usr/local/etc/squid/icons
                                          visible_hostname proxy
                                          cache_mgr admin@localhost
                                          access_log /var/squid/logs/access.log
                                          cache_log /var/squid/logs/cache.log
                                          cache_store_log none
                                          netdb_filename /var/squid/logs/netdb.state
                                          pinger_enable on
                                          pinger_program /usr/local/libexec/squid/pinger
                                          
                                          logfile_rotate 0
                                          debug_options rotate=0
                                          shutdown_lifetime 3 seconds
                                          # Allow local network(s) on interface(s)
                                          acl localnet src  10.40.0.0/16
                                          forwarded_for on
                                          uri_whitespace strip
                                          
                                          acl dynamic urlpath_regex cgi-bin \?
                                          cache deny dynamic
                                          
                                          cache_mem 64 MB
                                          maximum_object_size_in_memory 256 KB
                                          memory_replacement_policy heap GDSF
                                          cache_replacement_policy heap LFUDA
                                          minimum_object_size 0 KB
                                          maximum_object_size 4 MB
                                          
                                          offline_mode off
                                          cache_swap_low 90
                                          cache_swap_high 95
                                          cache allow all
                                          # Add any of your own refresh_pattern entries above these.
                                          refresh_pattern ^ftp:    1440  20%  10080
                                          refresh_pattern ^gopher:  1440  0%  1440
                                          refresh_pattern -i (/cgi-bin/|\?) 0  0%  0
                                          refresh_pattern .    0  20%  4320
                                          
                                          #Remote proxies
                                          
                                          # Setup some default acls
                                          # From 3.2 further configuration cleanups have been done to make things easier and safer. The manager, localhost, and to_localhost ACL definitions are now built-in.
                                          # acl localhost src 127.0.0.1/32
                                          acl allsrc src all
                                          acl safeports port 21 70 80 210 280 443 488 563 591 631 777 901  3128 3129 1025-65535 
                                          acl sslports port 443 563  
                                          
                                          # From 3.2 further configuration cleanups have been done to make things easier and safer. The manager, localhost, and to_localhost ACL definitions are now built-in.
                                          #acl manager proto cache_object
                                          
                                          acl purge method PURGE
                                          acl connect method CONNECT
                                          
                                          # Define protocols used for redirects
                                          acl HTTP proto HTTP
                                          acl HTTPS proto HTTPS
                                          acl allowed_subnets src 10.40.0.0/16
                                          http_access allow manager localhost
                                          
                                          http_access deny manager
                                          http_access allow purge localhost
                                          http_access deny purge
                                          http_access deny !safeports
                                          http_access deny CONNECT !sslports
                                          
                                          # Always allow localhost connections
                                          # From 3.2 further configuration cleanups have been done to make things easier and safer.
                                          # The manager, localhost, and to_localhost ACL definitions are now built-in.
                                          # http_access allow localhost
                                          
                                          request_body_max_size 0 KB
                                          delay_pools 1
                                          delay_class 1 2
                                          delay_parameters 1 -1/-1 -1/-1
                                          delay_initial_bucket_level 100
                                          delay_access 1 allow allsrc
                                          
                                          # Reverse Proxy settings
                                          
                                          # Package Integration
                                          url_rewrite_program /usr/local/bin/squidGuard -c /usr/local/etc/squidGuard/squidGuard.conf
                                          url_rewrite_bypass off
                                          url_rewrite_children 16 startup=8 idle=4 concurrency=0
                                          
                                          # Custom options before auth
                                          
                                          acl sglog url_regex -i sgr=ACCESSDENIED
                                          http_access deny sglog
                                          # Setup allowed ACLs
                                          # Allow local network(s) on interface(s)
                                          http_access allow allowed_subnets
                                          http_access allow localnet
                                          # Default block all to be sure
                                          http_access deny allsrc
                                          
                                          

                                          Segunda instância. proxy ativo (configurada apenas via cli)
                                          Obs: estou usando autenticação com o AD. lembre-se de trocar as redes.

                                          
                                          # This file is automatically generated by pfSense
                                          # Do not edit manually !
                                          #squid autenticado
                                          
                                          http_port 10.20.0.1:3128
                                          #http_port 127.0.0.1:3128
                                          icp_port 0
                                          dns_v4_first on
                                          pid_filename /var/run/squid/squid-auth.pid
                                          cache_effective_user squid
                                          cache_effective_group proxy
                                          error_default_language en
                                          icon_directory /usr/local/etc/squid/icons
                                          visible_hostname localhost
                                          cache_mgr admin@localhost
                                          access_log /var/squid/logs/access.log
                                          cache_log /var/squid/logs/cache.log
                                          cache_store_log none
                                          netdb_filename /var/squid/logs/netdb.state
                                          pinger_enable on
                                          pinger_program /usr/local/libexec/squid/pinger
                                          
                                          logfile_rotate 0
                                          debug_options rotate=0
                                          shutdown_lifetime 3 seconds
                                          # Allow local network(s) on interface(s)
                                          acl localnet src  10.20.0.0/16 127.0.0.0/8
                                          forwarded_for on
                                          uri_whitespace strip
                                          
                                          acl dynamic urlpath_regex cgi-bin \?
                                          cache deny dynamic
                                          
                                          cache_mem 64 MB
                                          maximum_object_size_in_memory 256 KB
                                          memory_replacement_policy heap GDSF
                                          cache_replacement_policy heap LFUDA
                                          minimum_object_size 0 KB
                                          maximum_object_size 4 MB
                                          
                                          offline_mode off
                                          cache_swap_low 90
                                          cache_swap_high 95
                                          cache allow all
                                          # Add any of your own refresh_pattern entries above these.
                                          refresh_pattern ^ftp:    1440  20%  10080
                                          refresh_pattern ^gopher:  1440  0%  1440
                                          refresh_pattern -i (/cgi-bin/|\?) 0  0%  0
                                          refresh_pattern .    0  20%  4320
                                          
                                          #Remote proxies
                                          
                                          # Setup some default acls
                                          # From 3.2 further configuration cleanups have been done to make things easier and safer. The manager, localhost, and to_localhost ACL definitions are now built-in.
                                          # acl localhost src 127.0.0.1/32
                                          acl allsrc src all
                                          acl safeports port 21 70 80 210 280 443 488 563 591 631 777 901 8443 3128 3129 1025-65535 
                                          acl sslports port 443 563 8443 
                                          
                                          # From 3.2 further configuration cleanups have been done to make things easier and safer. The manager, localhost, and to_localhost ACL definitions are now built-in.
                                          #acl manager proto cache_object
                                          
                                          acl purge method PURGE
                                          acl connect method CONNECT
                                          
                                          # Define protocols used for redirects
                                          acl HTTP proto HTTP
                                          acl HTTPS proto HTTPS
                                          acl allowed_subnets src 10.20.0.0/16
                                          http_access allow manager localhost
                                          
                                          http_access deny manager
                                          http_access allow purge localhost
                                          http_access deny purge
                                          http_access deny !safeports
                                          http_access deny CONNECT !sslports
                                          
                                          # Always allow localhost connections
                                          # From 3.2 further configuration cleanups have been done to make things easier and safer.
                                          # The manager, localhost, and to_localhost ACL definitions are now built-in.
                                          # http_access allow localhost
                                          
                                          request_body_max_size 0 KB
                                          delay_pools 1
                                          delay_class 1 2
                                          delay_parameters 1 -1/-1 -1/-1
                                          delay_initial_bucket_level 100
                                          delay_access 1 allow allsrc
                                          
                                          # Reverse Proxy settings
                                          
                                          # Package Integration
                                          url_rewrite_program /usr/local/bin/squidGuard -c /usr/local/etc/squidGuard/squidGuard.conf
                                          url_rewrite_bypass off
                                          url_rewrite_children 16 startup=8 idle=4 concurrency=0
                                          
                                          # Custom options before auth
                                          
                                          acl sglog url_regex -i sgr=ACCESSDENIED
                                          auth_param basic program /usr/local/libexec/squid/basic_ldap_auth -v 3 -b dc=ifg,dc=teste -D cn=Administrator,cn=Users,dc=ifg,dc=teste -w 123456 -f "sAMAccountName=%s" -u uid -P 10.30.0.10:389
                                          auth_param basic children 5
                                          auth_param basic realm Please enter your credentials to access the proxy
                                          auth_param basic credentialsttl 5 minutes
                                          acl password proxy_auth REQUIRED
                                          # Custom options after auth
                                          
                                          http_access deny password sglog
                                          http_access allow password localnet
                                          http_access allow password allowed_subnets
                                          # Default block all to be sure
                                          http_access deny allsrc
                                          
                                          

                                          Script de inicialização da segunda instância. (iniciará no boot)
                                          Pf 2.3: /usr/local/etc/rc.d/check_squid-auth.sh

                                          
                                          #!/bin/sh
                                          
                                          /bin/ps ax | /usr/bin/grep /usr/local/etc/squid/squid-auth.conf | /usr/bin/grep -v grep
                                          if [ $? -eq 0 ];then
                                              /bin/echo ok
                                          else
                                              /usr/local/sbin/squid -f /usr/local/etc/squid/squid-auth.conf
                                          fi
                                          
                                          

                                          Dessa forma ai eu consegui fazer funcionar.

                                          1 Reply Last reply Reply Quote 0
                                          • G Offline
                                            gerardocoelho
                                            last edited by

                                            No meu caso preciso usar uma instancia como transparente para rede wifi com captive portal ( autenticacao e vouchers)
                                            E a outra instancia proxy ativo para rede dos funcionários.
                                            Preciso pegar os logs de acesso das duas redes.
                                            Você testou se esta pegando os logs de acesso das duas redes?

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