[squid-users] https interception problem with Squid 5

ns at fabbricapolitica.com ns at fabbricapolitica.com
Mon Feb 14 10:26:58 UTC 2022


-  OS version

Description: Ubuntu Jammy Jellyfish (development branch)
Release: 22.04
Codename: jammy

I couldn't use Ubuntu server 20.04 LTS focal fossa because the 
squid-OpenSSL package was unavailable for that release.

===

- Squid -v output

Squid Cache: Version 5.2

This binary uses OpenSSL 3.0.1 14 Dec 2021. configure options:  
'--build=x86_64-linux-gnu' '--prefix=/usr' 
'--includedir=${prefix}/include' '--mandir=${prefix}/share/man' 
'--infodir=${prefix}/share/info' '--sysconfdir=/etc' 
'--localstatedir=/var' '--disable-option-checking' 
'--disable-silent-rules' '--libdir=${prefix}/lib/x86_64-linux-gnu' 
'--runstatedir=/run' '--disable-maintainer-mode' 
'--disable-dependency-tracking' 'BUILDCXXFLAGS=-g -O2 
-ffile-prefix-map=/build/squid-V7aRc2/squid-5.2=. -flto=auto 
-ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong 
-Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 
-Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -flto=auto 
-Wl,-z,relro -Wl,-z,now ' 'BUILDCXX=g++' 
'--with-build-environment=default' '--enable-build-info=Ubuntu linux' 
'--datadir=/usr/share/squid' '--sysconfdir=/etc/squid' 
'--libexecdir=/usr/lib/squid' '--mandir=/usr/share/man' 
'--enable-inline' '--disable-arch-native' '--enable-async-io=8' 
'--enable-storeio=ufs,aufs,diskd,rock' 
'--enable-removal-policies=lru,heap' '--enable-delay-pools' 
'--enable-cache-digests' '--enable-icap-client' 
'--enable-follow-x-forwarded-for' 
'--enable-auth-basic=DB,fake,getpwnam,LDAP,NCSA,PAM,POP3,RADIUS,SASL,SMB' 
'--enable-auth-digest=file,LDAP' 
'--enable-auth-negotiate=kerberos,wrapper' 
'--enable-auth-ntlm=fake,SMB_LM' 
'--enable-external-acl-helpers=file_userip,kerberos_ldap_group,LDAP_group,session,SQL_session,time_quota,unix_group,wbinfo_group' 
'--enable-security-cert-validators=fake' 
'--enable-storeid-rewrite-helpers=file' 
'--enable-url-rewrite-helpers=fake' '--enable-eui' '--enable-esi' 
'--enable-icmp' '--enable-zph-qos' '--enable-ecap' 
'--disable-translation' '--with-swapdir=/var/spool/squid' 
'--with-logdir=/var/log/squid' '--with-pidfile=/run/squid.pid' 
'--with-filedescriptors=65536' '--with-large-files' 
'--with-default-user=proxy' '--enable-linux-netfilter' '--with-systemd' 
'--with-openssl' '--enable-ssl-crtd' 'build_alias=x86_64-linux-gnu' 
'CFLAGS=-g -O2 -ffile-prefix-map=/build/squid-V7aRc2/squid-5.2=. 
-flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects 
-fstack-protector-strong -Wformat -Werror=format-security -Wall' 
'LDFLAGS=-Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects 
-flto=auto -Wl,-z,relro -Wl,-z,now ' 'CPPFLAGS=-Wdate-time 
-D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 
-ffile-prefix-map=/build/squid-V7aRc2/squid-5.2=. -flto=auto 
-ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong 
-Wformat -Werror=format-security'

===

- squid.conf

# ACL
acl localnet src 0.0.0.1-0.255.255.255    # RFC 1122 "this" network 
(LAN)
acl localnet src 10.0.0.0/8        # RFC 1918 local private network 
(LAN)
acl localnet src 100.64.0.0/10        # RFC 6598 shared address space 
(CGN)
acl localnet src 169.254.0.0/16            # RFC 3927 link-local 
(directly plugged) machines
acl localnet src 172.16.0.0/12        # RFC 1918 local private network 
(LAN)
acl localnet src 192.168.0.0/16        # RFC 1918 local private network 
(LAN)
acl localnet src fc00::/7            # RFC 4193 local private network 
range
acl localnet src fe80::/10            # RFC 4291 link-local (directly 
plugged) machines
acl SSL_ports port 443        # httpssl
acl Safe_ports port 80        # http
acl Safe_ports port 21        # ftp
acl Safe_ports port 443        # https
acl Safe_ports port 70        # gopher
acl Safe_ports port 210        # wais
acl Safe_ports port 1025-65535    # unregistered ports
acl Safe_ports port 280        # http-mgmt
acl Safe_ports port 488        # gss-http
acl Safe_ports port 591        # filemaker
acl Safe_ports port 777        # multiling http
acl CONNECT method CONNECT
acl intermediate_fetching transaction_initiator certificate-fetching

#Other configuration files
include /etc/squid/conf.d/*

#Access rules
http_access allow intermediate_fetching
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
http_access allow localnet
http_access allow localhost
http_access deny all

# HTTPS interception direct proxy
http_port 3128 tcpkeepalive=60,30,3 ssl-bump 
generate-host-certificates=on dynamic_cert_mem_cache_size=20MB 
tls-cert=/var/lib/squid/ssl_cert/squid-self-signed.crt 
tls-key=/var/lib/squid/ssl_cert/squid-self-signed.key 
cipher=HIGH:MEDIUM:!LOW:!RC4:!SEED:!IDEA:!3DES:!MD5:!EXP:!PSK:!DSS:!TLS13-AES-256-GCM-SHA384 
options=NO_TLSv1,NO_SSLv3 
tls-dh=prime256v1:/var/lib/squid/ssl_cert/squid-self-signed_dhparam.pem
sslcrtd_program /lib/squid/security_file_certgen -s 
/var/lib/squid/ssl_db -M 20MB
sslcrtd_children 5
acl step1 at_step SslBump1
ssl_bump bump all
sslproxy_cert_error deny all

# Cache
cache_mem 512 MB
maximum_object_size 240 MB
cache_dir aufs /var/spool/squid/ 4096 16 256
coredump_dir /var/spool/squid
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

# More privacy
via off
forwarded_for off

Il 2022-02-14 10:00 Eliezer Croitoru ha scritto:

> Can you share the squid.conf so I can try to reproduce the issue here 
> locally and verify how it could  be resolved?
> 
> What OS and other relevant details such as "squid -v"  output might 
> help.
> 
> Thanks,
> 
> Eliezer
> 
> ----
> 
> Eliezer Croitoru
> 
> NgTech, Tech Support
> 
> Mobile: +972-5-28704261
> 
> Email: ngtech1ltd at gmail.com
> 
> From: squid-users <squid-users-bounces at lists.squid-cache.org> On Behalf 
> Of ns at fabbricapolitica.com
> Sent: Monday, February 14, 2022 11:16
> To: squid-users at lists.squid-cache.org
> Subject: [squid-users] https interception problem with Squid 5
> 
> Good morning,
> 
> I have been using Squid as an http caching proxy for a long time.
> 
> It's the second time I configured Squid for https caching and 
> interception/inspection.
> 
> The first time everything was fine
> 
> The second...not so much.
> 
> I use the ssl_bump feature.
> 
> With Squid 4.13 and Openssl v 1.1.1k-1 all works well without errors or 
> warnings.
> 
> With Squid v. 5.2.1 and Openssl v. 3.0.1, I got one error and one 
> warning.
> 
> I tried to use the same squid.conf for Squid 4 and Squid 5.
> 
> Here are the problems with Squid 5.
> 
> 1) ERROR
> 
> I checked the configuration with the command "squid -k parse" and I got 
> this error: ERROR: Unable to configure Ephemeral ECDH: 
> error:0480006C:PEM routines::no start line
> 
> If I remove the curve name from tls-dh in the config file, the error 
> disappears.
> 
> First question: Which is the problem? How can I do to keep the curve 
> name (prime256v1)
> 
> 2) WARNING
> 
> I checked the configuration with the command "squid -k parse" and I got 
> this warning: WARNING: Failed to decode DH parameters 
> '/var/lib/squid/ssl_cert/squid-self-signed_dhparam.pem'
> 
> I generated the file for the Diffie-Hellman algorithm with this command 
> (it worked with Squid4): openssl dhparam -outform PEM -out 
> squid-self-signed_dhparam.pem 2048
> 
> Second question: Have you an idea on how to fix this?
> 
> Thank you.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squid-cache.org/pipermail/squid-users/attachments/20220214/c6154605/attachment-0001.htm>


More information about the squid-users mailing list