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 367.7k 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.
    • 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
                                          • 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
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.