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 402.3k 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.
    • 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
                                        • marcellocM
                                          marcelloc
                                          last edited by

                                          No fórum internacional, tem posts sobre isso.

                                          Parece bug na 2.1.2.

                                          Já tentou em outra versão do pfsense?

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

                                          Help a community developer! ;D

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

                                            @marcelloc:

                                            No fórum internacional, tem posts sobre isso.

                                            Parece bug na 2.1.2.

                                            Já tentou em outra versão do pfsense?

                                            MARCELLOC, estou na versão 2.1-RELEASE (i386). Vou atualizar para última para ver o que que dá!

                                            Volto para responder.

                                            Att.

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