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

    Squid 3.3.10 para pfsense 2.0 e 2.1 com filtro de SSL/HTTPS

    Scheduled Pinned Locked Moved Portuguese
    593 Posts 129 Posters 372.6k 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.
    • T
      teslacrew
      last edited by

      Marcelo, eu instalei o Squid3-dev e o SquidGuard-squid3, detalhe que acabei atualizando o meu pfSense para a nova versão 2.1.1 .. abs

      1 Reply Last reply Reply Quote 0
      • marcellocM
        marcelloc
        last edited by

        Veja com o tcpdump se as requisições estão chegando no squid.

        Desabilite o squidguard até você conseguir fazer o ambiente funcionar.

        Treinamentos de Elite: http://sys-squad.com

        Help a community developer! ;D

        1 Reply Last reply Reply Quote 0
        • D
          dfioretti
          last edited by

          Olá Pessoal,

          Configurei o PfSense para interceptar o SSL, mas não está funcionando.

          Segue o arquivo de squid.conf.

          
          # This file is automatically generated by pfSense
          # Do not edit manually !
          
          http_port 192.168.117.250:3128 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=10MB cert=/usr/pbi/squid-amd64/etc/squid/serverkey.pem capath=/usr/pbi/squid-amd64/share/certs/
          
          http_port 127.0.0.1:3128 intercept ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=10MB cert=/usr/pbi/squid-amd64/etc/squid/serverkey.pem capath=/usr/pbi/squid-amd64/share/certs/
          
          https_port 127.0.0.1:3129 intercept ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=10MB cert=/usr/pbi/squid-amd64/etc/squid/serverkey.pem capath=/usr/pbi/squid-amd64/share/certs/
          
          icp_port 7
          dns_v4_first on
          pid_filename /var/run/squid.pid
          cache_effective_user proxy
          cache_effective_group proxy
          error_default_language pt-br
          icon_directory /usr/pbi/squid-amd64/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
          sslcrtd_program /usr/pbi/squid-amd64/libexec/squid/ssl_crtd -s /var/squid/lib/ssl_db -M 4MB -b 2048
          sslcrtd_children 5
          sslproxy_capath /usr/pbi/squid-amd64/share/certs/
          sslproxy_cert_error allow all
          sslproxy_cert_adapt setValidBefore all
          
          logfile_rotate 0
          shutdown_lifetime 3 seconds
          # Allow local network(s) on interface(s)
          acl localnet src  192.168.117.0/24
          httpd_suppress_version_string on
          uri_whitespace strip
          
          acl dynamic urlpath_regex cgi-bin \?
          cache deny dynamic
          
          cache_mem 8 MB
          maximum_object_size_in_memory 32 KB
          memory_replacement_policy heap GDSF
          cache_replacement_policy heap LFUDA
          
          minimum_object_size 0 KB
          maximum_object_size 10 KB
          offline_mode off
          cache allow all
          
          # No redirector configured
          
          #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 3127 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 192.168.117.0/24
          acl blacklist dstdom_regex -i "/var/squid/acl/blacklist.acl"
          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
          
          # Custom options
          
          # Block access to blacklist domains
          http_access deny blacklist
          always_direct allow all
          ssl_bump server-first all
          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
          
          

          Alguém pode me ajudar?

          Desde já obrigado!!!

          1 Reply Last reply Reply Quote 0
          • C
            Cortez
            last edited by

            @teslacrew:

            Marcelo, eu instalei o Squid3-dev e o SquidGuard-squid3, detalhe que acabei atualizando o meu pfSense para a nova versão 2.1.1 .. abs

            Marcelo, também estou com o mesmo problema do amigo acima, estava com tudo rodando redondinho squid transparent +squidguard, fui atualizar o pfsense pra versão 2.1.1 começou dar problemas, toda página https que tento abrir da erro de certificado, sabe o que pode ser? já quebrei a cabeça aqui e não consegui resolver, estou pensando em voltar pro pfsense 2.1.

            1 Reply Last reply Reply Quote 0
            • marcellocM
              marcelloc
              last edited by

              Não testei a atualização da 2.1 para a 2.1.1 com o squid.

              O primeiro passo é verificar se o certificado é o mesmo.

              Treinamentos de Elite: http://sys-squad.com

              Help a community developer! ;D

              1 Reply Last reply Reply Quote 0
              • D
                dfioretti
                last edited by

                Pessoal,

                Seguem mais informações sobre o squid aqui.

                [2.1-RELEASE][root@pfsense.localdomain]/root(20): netstat -an | grep LISTEN
                tcp4      0      0 127.0.0.1.3129        .                    LISTEN
                tcp4      0      0 127.0.0.1.3128        .                    LISTEN
                tcp4      0      0 192.168.117.250.3128  .                    LISTEN
                tcp6      0      0 *.53                  .                    LISTEN
                tcp4      0      0 *.53                  .                    LISTEN
                tcp4      0      0 *.22                  .                    LISTEN
                tcp6      0      0 *.22                  .                    LISTEN
                tcp4      0      0 *.80                  .                    LISTEN
                tcp6      0      0 *.443                  .                    LISTEN
                tcp4      0      0 *.443                  .                    LISTEN

                FreeBSD pfsense.localdomain 8.3-RELEASE-p11 FreeBSD 8.3-RELEASE-p11 #0: Wed Sep 11 18:51:23 EDT 2013    root@snapshots-8_3-amd64.builders.pfsense.org:/usr/obj.pfSense/usr/pfSensesrc/src/sys/pfSense_SMP.8  amd64

                Criei a CA e importei como Trusted Root CA no cliente para teste.

                O acesso na 3128 está 100% ok, mas na 3129 nada.

                Alguma luz?

                At.,

                Daniel.

                1 Reply Last reply Reply Quote 0
                • marcellocM
                  marcelloc
                  last edited by

                  O que aparece no cache.log?

                  Treinamentos de Elite: http://sys-squad.com

                  Help a community developer! ;D

                  1 Reply Last reply Reply Quote 0
                  • D
                    dfioretti
                    last edited by

                    Bom dia, Marcello.

                    Segue log.

                    
                    2014/04/08 09:11:28 kid1| Starting Squid Cache version 3.3.10 for amd64-portbld-freebsd8.3...
                    2014/04/08 09:11:28 kid1|  parse error while reading template file: /usr/pbi/squid-amd64/etc/squid/errors/en/error-details.txt
                    2014/04/08 09:11:28 kid1| Unable to load default error language files. Reset to backups.
                    2014/04/08 09:11:28 kid1|  parse error while reading template file: /usr/pbi/squid-amd64/etc/squid/errors/templates/error-details.txt
                    2014/04/08 09:11:28 kid1| WARNING: failed to find or read error text file error-details.txt
                    2014/04/08 09:11:28| pinger: Initialising ICMP pinger ...
                    2014/04/08 09:11:28 kid1| Shutdown: NTLM authentication.
                    2014/04/08 09:11:28 kid1| Shutdown: Negotiate authentication.
                    2014/04/08 09:11:28 kid1| Shutdown: Digest authentication.
                    2014/04/08 09:11:28 kid1| Shutdown: Basic authentication.
                    2014/04/08 09:11:36 kid1| Starting Squid Cache version 3.3.10 for amd64-portbld-freebsd8.3...
                    2014/04/08 09:11:36 kid1|  parse error while reading template file: /usr/pbi/squid-amd64/etc/squid/errors/en/error-details.txt
                    2014/04/08 09:11:36 kid1| Unable to load default error language files. Reset to backups.
                    2014/04/08 09:11:36 kid1|  parse error while reading template file: /usr/pbi/squid-amd64/etc/squid/errors/templates/error-details.txt
                    2014/04/08 09:11:36 kid1| WARNING: failed to find or read error text file error-details.txt
                    2014/04/08 09:11:36| pinger: Initialising ICMP pinger ...
                    2014/04/08 09:11:40 kid1| Starting Squid Cache version 3.3.10 for amd64-portbld-freebsd8.3...
                    2014/04/08 09:11:40 kid1|  parse error while reading template file: /usr/pbi/squid-amd64/etc/squid/errors/en/error-details.txt
                    2014/04/08 09:11:40 kid1| Unable to load default error language files. Reset to backups.
                    2014/04/08 09:11:40 kid1|  parse error while reading template file: /usr/pbi/squid-amd64/etc/squid/errors/templates/error-details.txt
                    2014/04/08 09:11:40 kid1| WARNING: failed to find or read error text file error-details.txt
                    2014/04/08 09:11:40| pinger: Initialising ICMP pinger ...
                    
                    

                    No browser IE com o CA instalado eu tenho essa msg:

                    •Check your proxy settings 192.168.117.250:3129.
                    Go to Tools > Internet Options > Connections. If you are on a LAN, click “LAN settings”.
                    •Make sure your firewall settings aren’t blocking your web access.
                    •Ask your system administrator for help.

                    Tcpdump no PfSense.

                    
                    [2.1-RELEASE][root@pfsense.localdomain]/var/squid/logs(9): tcpdump not port 22 and host 192.168.117.89 and port 3129
                    tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
                    listening on em0, link-type EN10MB (Ethernet), capture size 96 bytes
                    09:28:37.816210 IP 192.168.117.89.49229 > pfsense.localdomain.3129: Flags [s], seq 3453049056, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0
                    09:28:40.806905 IP 192.168.117.89.49229 > pfsense.localdomain.3129: Flags [s], seq 3453049056, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0
                    09:28:46.813291 IP 192.168.117.89.49229 > pfsense.localdomain.3129: Flags [s], seq 3453049056, win 8192, options [mss 1460,nop,nop,sackOK], length 0
                    09:28:58.811285 IP 192.168.117.89.49230 > pfsense.localdomain.3129: Flags [s], seq 1367197418, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0
                    09:29:01.820173 IP 192.168.117.89.49230 > pfsense.localdomain.3129: Flags [s], seq 1367197418, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0
                    09:29:07.826499 IP 192.168.117.89.49230 > pfsense.localdomain.3129: Flags [s], seq 1367197418, win 65535, options [mss 1460,nop,nop,sackOK], length 0
                    [code]
                    
                    Obrigado.
                    
                    Daniel.[/code][/s][/s][/s][/s][/s][/s]
                    
                    1 Reply Last reply Reply Quote 0
                    • marcellocM
                      marcelloc
                      last edited by

                      Você está usando proxy transparente? Se for marcar o proxy no navegador,  use a porta 3128 mesmo.

                      Treinamentos de Elite: http://sys-squad.com

                      Help a community developer! ;D

                      1 Reply Last reply Reply Quote 0
                      • marcellocM
                        marcelloc
                        last edited by

                        Olhando o tcpdump, acredito que esteja faltando também a regra que libera acesso local a 3129.

                        As conexões não estáo chegando ao squid.

                        Treinamentos de Elite: http://sys-squad.com

                        Help a community developer! ;D

                        1 Reply Last reply Reply Quote 0
                        • D
                          dfioretti
                          last edited by

                          Marcello,

                          Segue resumo das "regras" do Firewall.

                          Interface LAN
                          Proto Source Port Destination Port Gateway Queue Schedule
                          IPv4 * *      * *                 * *         none

                          Estou usando como proxy transparente, pelo que você disse, tenho que configurar no browser somente a porta 3128 para todos os protocolos, certo?

                          Devo mudar também a porta do SSL nas confs do squid ou devo manter 3129?

                          At.,

                          Daniel

                          1 Reply Last reply Reply Quote 0
                          • marcellocM
                            marcelloc
                            last edited by

                            @dfioretti:

                            Segue resumo das "regras" do Firewall.

                            Interface LAN
                            Proto Source Port Destination Port Gateway Queue Schedule
                            IPv4 * *      * *                 * *         none

                            Esse resumo diz:
                            Tenho um firewall totalmente aberto, nenhuma restrição de saída.

                            Pode usar o proxy em modo transparente, mas sugiro fortemente você rever suas regras.

                            Treinamentos de Elite: http://sys-squad.com

                            Help a community developer! ;D

                            1 Reply Last reply Reply Quote 0
                            • D
                              dfioretti
                              last edited by

                              Marcello,

                              Sim, tenho um firewall completamente aberto, pois estou querendo testar unicamente o SQUID.

                              Firewall e cliente estão confinados em um ambiente virtualizado tendo acesso externo somente pela interface WAN do firewall.

                              Você tem um ambiente de teste para que eu possa comparar com o meu?

                              At.,

                              Daniel.

                              1 Reply Last reply Reply Quote 0
                              • S
                                sapodexter
                                last edited by

                                Olá pessoal sou novo aqui no fórum, adotei aqui na empresa o Pfsense, gostei muito da ferramenta, atende muito bem minha necessidade, mas recentemente eu fiz o filtro de ssl/https e funcionou perfeito, mas fui atualizar o firmware do pfsense pra versão recente e aí começara meus problemas, não consigo mais fazer funcionar o meu certificado, ele tá dando esse erro no navegador " O servidor www.google.com.br usa um certificado de segurança inválido. O certificado não é considerado confiável porque é autoassinado. O certificado é válido somente para proxy-ca. (Código do erro: sec_error_untrusted_issuer) ", eu já removi o certificado, criei outro e instalei mas sem sucesso. Será que alguém aqui já teve esse mesmo problema e pode me ajudar ??????

                                1 Reply Last reply Reply Quote 0
                                • marcellocM
                                  marcelloc
                                  last edited by

                                  Coloque estas acl no campo Custom ACLS (Before_Auth)

                                  
                                  always_direct allow all
                                  ssl_bump server-first all
                                  

                                  Na versão 3.2.3 já está corrigida, mas infelizmente o repositório dos pacotes agora só é alterado pelo core team.

                                  Uma atualização que demorava minutos agora pode levar dias… como acontece com o snort.

                                  Treinamentos de Elite: http://sys-squad.com

                                  Help a community developer! ;D

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    rec
                                    last edited by

                                    Funcionou muito bem, de primeira. VLW

                                    1 Reply Last reply Reply Quote 0
                                    • D
                                      dfioretti
                                      last edited by

                                      Bom dia a todos, especialmente ao Marcello.

                                      Tudo bom Marcello, você tem alguma ideia do que possa estar acontecendo com meu ambiente? Ou mesmo alguma ideia para que efetue um teste?

                                      Antecipadamente, obrigado.

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

                                        Marcelloc,

                                        Tudo bem? Primeiramente obrigado pelo vídeo, contribuiu em muito pois estou utilizando o pfsense agora na empresa que trabalho. Estou utilizando a última versão 2.1.2, e percebi que todos os https estão sendo bloqueados, mesmo com o certificado corretamente instalado. Fiz um teste, colocando o ip e a porta 3128 nas configurações do navegador, resolveu. Está liberando os https que preciso, e bloqueando os que pedi (ex. facebook).

                                        Sabe o que estar ocorrendo?

                                        Abraço,

                                        1 Reply Last reply Reply Quote 0
                                        • marcellocM
                                          marcelloc
                                          last edited by

                                          @tdaniel:

                                          Tudo bem? Primeiramente obrigado pelo vídeo,

                                          Qual vídeo? A lista de tutorias tem topicos de vários autores, eu só organizo para facilitar a busca.

                                          @tdaniel:

                                          contribuiu em muito pois estou utilizando o pfsense agora na empresa que trabalho.

                                          Não esqueça de apertar um Thanks no tópico que te ajudou.

                                          @tdaniel:

                                          Estou utilizando a última versão 2.1.2, e percebi que todos os https estão sendo bloqueados, mesmo com o certificado corretamente instalado. Fiz um teste, colocando o ip e a porta 3128 nas configurações do navegador, resolveu. Está liberando os https que preciso, e bloqueando os que pedi (ex. facebook).

                                          Sabe o que estar ocorrendo?

                                          Não sei como configurou seu ambiente. squid3-dev? autenticação captive portal?

                                          Treinamentos de Elite: http://sys-squad.com

                                          Help a community developer! ;D

                                          1 Reply Last reply Reply Quote 0
                                          • R
                                            rec
                                            last edited by

                                            Olá, estava tudo rodando legal só que do nada o SQUID parou.

                                            php: /status_services.php: The command '/usr/local/etc/rc.d/squid.sh stop' returned exit code '1', the output was 'squid: No running copy'
                                            
                                            sshd[1395]: Accepted keyboard-interactive/pam for root from 192.168.0.101 port 64248 ssh2
                                            Apr 22 11:39:05	php: /pkg_edit.php: Reloading Squid for configuration sync
                                            Apr 22 11:39:03	php: /pkg_edit.php: [Squid] - Squid_resync function call pr:1 bp: rpc:no
                                            Apr 22 11:39:02	check_reload_status: Syncing firewall
                                            Apr 22 11:39:01	check_reload_status: Reloading filter
                                            Apr 22 11:39:01	php: /pkg_edit.php: Reloading Squid for configuration sync
                                            Apr 22 11:38:59	php: /pkg_edit.php: [Squid] - Squid_resync function call pr:1 bp: rpc:no
                                            Apr 22 11:34:21	check_reload_status: Reloading filter
                                            Apr 22 11:34:21	Squid_Alarm[39381]: Squid has resumed. Reconfiguring filter.
                                            Apr 22 11:34:12	lighttpd[51334]: (connections.c.137) (warning) close: 19 Connection reset by peer
                                            Apr 22 11:33:38	squid[22616]: Squid Parent: (squid-1) process 23136 started
                                            Apr 22 11:33:38	squid[22616]: Squid Parent: will start 1 kids
                                            Apr 22 11:33:36	php: /status_services.php: The command '/usr/local/etc/rc.d/squid.sh stop' returned exit code '1', the output was 'squid: No running copy'
                                            Apr 22 11:30:36	check_reload_status: Syncing firewall
                                            Apr 22 11:29:21	check_reload_status: Syncing firewall
                                            Apr 22 11:29:04	check_reload_status: Syncing firewall
                                            Apr 22 11:28:49	check_reload_status: Syncing firewall
                                            Apr 22 11:28:34	check_reload_status: Syncing firewall
                                            

                                            Estou utilizando o "squid3-dev 3.3.10 pkg 2.2.2".

                                            Já li em alguns tópicos e eles pediram para baixar novamente as LIBS, mas não funcionou, do nada ele para.

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