Skip to content

Commit 917c999

Browse files
committed
2026-03-05
1 parent 4ea7199 commit 917c999

29 files changed

Lines changed: 1044 additions & 47 deletions

squid-dev/2026-March.txt

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -375,3 +375,95 @@ Best regards,
375375
Anthony
376376

377377

378+
From rousskov at measurement-factory.com Thu Mar 5 17:13:26 2026
379+
From: rousskov at measurement-factory.com (Alex Rousskov)
380+
Date: Thu, 5 Mar 2026 12:13:26 -0500
381+
Subject: [squid-dev] forward bumped traffic to parent in plain form
382+
In-Reply-To: <1478043664.20260305122659@yahoo.com>
383+
References: <1985119311.20260304190328.ref@yahoo.com>
384+
<1985119311.20260304190328@yahoo.com>
385+
<70faedf9-2e5d-4934-b837-874940f81a4b@measurement-factory.com>
386+
<1478043664.20260305122659@yahoo.com>
387+
Message-ID: <30a55c20-f80b-4a5f-be94-352a6a567a9c@measurement-factory.com>
388+
389+
On 2026-03-05 04:26, Anthony Pankov wrote:
390+
> Wednesday, March 4, 2026, 9:43:45 PM, Alex wrote:
391+
>> On 2026-03-04 11:03, Anthony Pankov wrote:
392+
>>> I still want to modify squid in such a way that it can forward
393+
>>> clients http traffic to a parent cache in plain form. I mean after
394+
>>> bumping ssl (forntend-squid establish tls connection with a client)
395+
>>> requests from client should goes to parent cache as a plain http (
396+
>>> GET etc.)
397+
>
398+
>> Let's split this problem into two parts:
399+
>
400+
>> Part 1: Bumping the client.
401+
>
402+
>> Do you want your Squid to bump the TLS client connection without talking to the TLS origin server?
403+
> Yes, for simplicity.
404+
>
405+
>> Bugs notwithstanding, that should already be possible using unsupported "ssl_bump client-first all" or,
406+
>
407+
> common conf :
408+
>
409+
> http_port 100.100.100.100:8080 ssl-bump generate-host-certificates=on \
410+
> options=CIPHER_SERVER_PREFERENCE,NO_TLSv1,NO_SSLv3,NO_TLSv1_1 \
411+
> tls-dh=prime256v1:/usr/local/etc/squid/sq-dhparams.pem \
412+
> tls-cert=/usr/local/etc/squid/imc+.ots101.crt \
413+
> tls-key=/usr/local/etc/squid/key.ots101-imc.pem \
414+
> dynamic_cert_mem_cache_size=10MB
415+
>
416+
> ssl_bump client-first all
417+
>
418+
> There is an error on the client (NO_CIPHER_OVERLAP) and error on squid
419+
420+
OK. It sounds like the TLS client is unhappy with the unsupported
421+
client-first mode. Let's forget about that mode and focus on supported ones:
422+
423+
424+
> ssl_bump stare ssl_bump_step_1
425+
> ssl_bump bump all
426+
>
427+
> I've got in squid-fronted:
428+
>
429+
430+
> 2026/03/05 12:15:18.505 kid1| 44,3| peer_select.cc(305) ...
431+
432+
Peer selection is Part 2. Before we get into that, we need to make sure
433+
that your Squid can bump the client _without_ getting into FwdState.cc,
434+
peer_select.cc, etc. Squid-to-peer logic.
435+
436+
It is not clear to me yet whether bumping the client was successful in
437+
the above test. To confirm, please test using an HTTPS client that sends
438+
something that does not require Squid-to-peer communication from HTTP
439+
point of view. Squid should generate the response internally. The client
440+
should successfully get that Squid-generated response.
441+
442+
Here are some suggestions:
443+
444+
1. GET request with an "unsupported-scheme://a.test/" URL.
445+
2. TRACE request with a "Max-Forwards: 0" header.
446+
3. Non-HTTP (i.e. unparseable as HTTP) garbage with enough new lines
447+
to let Squid find the "end" of "headers".
448+
449+
For Part 1, your goal is to prove that your HTTPS client successfully
450+
communicates with your Squid with zero packets going to peers or origin
451+
servers. You can even add a temporary "assert(false)" to
452+
FwdState::FwdState() to be reasonably sure.
453+
454+
I hope this goal can be accomplished without Squid source code changes,
455+
but I cannot promise that.
456+
457+
458+
HTH,
459+
460+
Alex.
461+
462+
463+
464+
>> Part 2: Forwarding bumped GET requests to cache_peers "as is", without a second layer of encryption.
465+
>
466+
>> This part depends on Part 1. Let's come back to this after Part 1 is working.
467+
468+
469+

squid-dev/2026-March/009981.html

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
}
1313
</style>
1414
<META http-equiv="Content-Type" content="text/html; charset=us-ascii">
15-
<LINK REL="Previous" HREF="009983.html">
15+
<LINK REL="Previous" HREF="009984.html">
1616
<LINK REL="Next" HREF="009982.html">
1717
</HEAD>
1818
<BODY BGCOLOR="#ffffff">
@@ -23,7 +23,7 @@ <H1>[squid-dev] forward bumped traffic to parent in plain form</H1>
2323
</A><BR>
2424
<I>Thu Mar 5 07:55:03 UTC 2026</I>
2525
<P><UL>
26-
<LI>Previous message (by thread): <A HREF="009983.html">[squid-dev] forward bumped traffic to parent in plain form
26+
<LI>Previous message (by thread): <A HREF="009984.html">[squid-dev] forward bumped traffic to parent in plain form
2727
</A></li>
2828
<LI>Next message (by thread): <A HREF="009982.html">[squid-dev] forward bumped traffic to parent in plain form
2929
</A></li>
@@ -80,11 +80,12 @@ <H1>[squid-dev] forward bumped traffic to parent in plain form</H1>
8080

8181

8282

83+
8384
<!--endarticle-->
8485
<HR>
8586
<P><UL>
8687
<!--threads-->
87-
<LI>Previous message (by thread): <A HREF="009983.html">[squid-dev] forward bumped traffic to parent in plain form
88+
<LI>Previous message (by thread): <A HREF="009984.html">[squid-dev] forward bumped traffic to parent in plain form
8889
</A></li>
8990
<LI>Next message (by thread): <A HREF="009982.html">[squid-dev] forward bumped traffic to parent in plain form
9091
</A></li>

squid-dev/2026-March/009982.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ <H1>[squid-dev] forward bumped traffic to parent in plain form</H1>
7777
</PRE>
7878

7979

80+
8081
<!--endarticle-->
8182
<HR>
8283
<P><UL>

squid-dev/2026-March/009983.html

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
</style>
1414
<META http-equiv="Content-Type" content="text/html; charset=us-ascii">
1515
<LINK REL="Previous" HREF="009980.html">
16-
<LINK REL="Next" HREF="009981.html">
16+
<LINK REL="Next" HREF="009984.html">
1717
</HEAD>
1818
<BODY BGCOLOR="#ffffff">
1919
<H1>[squid-dev] forward bumped traffic to parent in plain form</H1>
@@ -25,7 +25,7 @@ <H1>[squid-dev] forward bumped traffic to parent in plain form</H1>
2525
<P><UL>
2626
<LI>Previous message (by thread): <A HREF="009980.html">[squid-dev] forward bumped traffic to parent in plain form
2727
</A></li>
28-
<LI>Next message (by thread): <A HREF="009981.html">[squid-dev] forward bumped traffic to parent in plain form
28+
<LI>Next message (by thread): <A HREF="009984.html">[squid-dev] forward bumped traffic to parent in plain form
2929
</A></li>
3030
<LI> <B>Messages sorted by:</B>
3131
<a href="date.html#9983">[ date ]</a>
@@ -211,13 +211,14 @@ <H1>[squid-dev] forward bumped traffic to parent in plain form</H1>
211211

212212
</PRE>
213213

214+
214215
<!--endarticle-->
215216
<HR>
216217
<P><UL>
217218
<!--threads-->
218219
<LI>Previous message (by thread): <A HREF="009980.html">[squid-dev] forward bumped traffic to parent in plain form
219220
</A></li>
220-
<LI>Next message (by thread): <A HREF="009981.html">[squid-dev] forward bumped traffic to parent in plain form
221+
<LI>Next message (by thread): <A HREF="009984.html">[squid-dev] forward bumped traffic to parent in plain form
221222
</A></li>
222223
<LI> <B>Messages sorted by:</B>
223224
<a href="date.html#9983">[ date ]</a>

squid-dev/2026-March/009984.html

Lines changed: 140 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,140 @@
1+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2+
<HTML>
3+
<HEAD>
4+
<TITLE> [squid-dev] forward bumped traffic to parent in plain form
5+
</TITLE>
6+
<LINK REL="Index" HREF="index.html" >
7+
<LINK REL="made" HREF="mailto:squid-dev%40lists.squid-cache.org?Subject=Re%3A%20%5Bsquid-dev%5D%20forward%20bumped%20traffic%20to%20parent%20in%20plain%20form&In-Reply-To=%3C30a55c20-f80b-4a5f-be94-352a6a567a9c%40measurement-factory.com%3E">
8+
<META NAME="robots" CONTENT="index,nofollow">
9+
<style type="text/css">
10+
pre {
11+
white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */
12+
}
13+
</style>
14+
<META http-equiv="Content-Type" content="text/html; charset=us-ascii">
15+
<LINK REL="Previous" HREF="009983.html">
16+
<LINK REL="Next" HREF="009981.html">
17+
</HEAD>
18+
<BODY BGCOLOR="#ffffff">
19+
<H1>[squid-dev] forward bumped traffic to parent in plain form</H1>
20+
<B>Alex Rousskov</B>
21+
<A HREF="mailto:squid-dev%40lists.squid-cache.org?Subject=Re%3A%20%5Bsquid-dev%5D%20forward%20bumped%20traffic%20to%20parent%20in%20plain%20form&In-Reply-To=%3C30a55c20-f80b-4a5f-be94-352a6a567a9c%40measurement-factory.com%3E"
22+
TITLE="[squid-dev] forward bumped traffic to parent in plain form">rousskov at measurement-factory.com
23+
</A><BR>
24+
<I>Thu Mar 5 17:13:26 UTC 2026</I>
25+
<P><UL>
26+
<LI>Previous message (by thread): <A HREF="009983.html">[squid-dev] forward bumped traffic to parent in plain form
27+
</A></li>
28+
<LI>Next message (by thread): <A HREF="009981.html">[squid-dev] forward bumped traffic to parent in plain form
29+
</A></li>
30+
<LI> <B>Messages sorted by:</B>
31+
<a href="date.html#9984">[ date ]</a>
32+
<a href="thread.html#9984">[ thread ]</a>
33+
<a href="subject.html#9984">[ subject ]</a>
34+
<a href="author.html#9984">[ author ]</a>
35+
</LI>
36+
</UL>
37+
<HR>
38+
<!--beginarticle-->
39+
<PRE>On 2026-03-05 04:26, Anthony Pankov wrote:
40+
&gt;<i> Wednesday, March 4, 2026, 9:43:45 PM, Alex wrote:
41+
</I>&gt;&gt;<i> On 2026-03-04 11:03, Anthony Pankov wrote:
42+
</I>&gt;&gt;&gt;<i> I still want to modify squid in such a way that it can forward
43+
</I>&gt;&gt;&gt;<i> clients http traffic to a parent cache in plain form. I mean after
44+
</I>&gt;&gt;&gt;<i> bumping ssl (forntend-squid establish tls connection with a client)
45+
</I>&gt;&gt;&gt;<i> requests from client should goes to parent cache as a plain http (
46+
</I>&gt;&gt;&gt;<i> GET etc.)
47+
</I>&gt;<i>
48+
</I>&gt;&gt;<i> Let's split this problem into two parts:
49+
</I>&gt;<i>
50+
</I>&gt;&gt;<i> Part 1: Bumping the client.
51+
</I>&gt;<i>
52+
</I>&gt;&gt;<i> Do you want your Squid to bump the TLS client connection without talking to the TLS origin server?
53+
</I>&gt;<i> Yes, for simplicity.
54+
</I>&gt;<i>
55+
</I>&gt;&gt;<i> Bugs notwithstanding, that should already be possible using unsupported &quot;ssl_bump client-first all&quot; or,
56+
</I>&gt;<i>
57+
</I>&gt;<i> common conf :
58+
</I>&gt;<i>
59+
</I>&gt;<i> http_port 100.100.100.100:8080 ssl-bump generate-host-certificates=on \
60+
</I>&gt;<i> options=CIPHER_SERVER_PREFERENCE,NO_TLSv1,NO_SSLv3,NO_TLSv1_1 \
61+
</I>&gt;<i> tls-dh=prime256v1:/usr/local/etc/squid/sq-dhparams.pem \
62+
</I>&gt;<i> tls-cert=/usr/local/etc/squid/imc+.ots101.crt \
63+
</I>&gt;<i> tls-key=/usr/local/etc/squid/key.ots101-imc.pem \
64+
</I>&gt;<i> dynamic_cert_mem_cache_size=10MB
65+
</I>&gt;<i>
66+
</I>&gt;<i> ssl_bump client-first all
67+
</I>&gt;<i>
68+
</I>&gt;<i> There is an error on the client (NO_CIPHER_OVERLAP) and error on squid
69+
</I>
70+
OK. It sounds like the TLS client is unhappy with the unsupported
71+
client-first mode. Let's forget about that mode and focus on supported ones:
72+
73+
74+
&gt;<i> ssl_bump stare ssl_bump_step_1
75+
</I>&gt;<i> ssl_bump bump all
76+
</I>&gt;<i>
77+
</I>&gt;<i> I've got in squid-fronted:
78+
</I>&gt;<i>
79+
</I>
80+
&gt;<i> 2026/03/05 12:15:18.505 kid1| 44,3| peer_select.cc(305) ...
81+
</I>
82+
Peer selection is Part 2. Before we get into that, we need to make sure
83+
that your Squid can bump the client _without_ getting into FwdState.cc,
84+
peer_select.cc, etc. Squid-to-peer logic.
85+
86+
It is not clear to me yet whether bumping the client was successful in
87+
the above test. To confirm, please test using an HTTPS client that sends
88+
something that does not require Squid-to-peer communication from HTTP
89+
point of view. Squid should generate the response internally. The client
90+
should successfully get that Squid-generated response.
91+
92+
Here are some suggestions:
93+
94+
1. GET request with an &quot;unsupported-<A HREF="scheme://a.test/">scheme://a.test/</A>&quot; URL.
95+
2. TRACE request with a &quot;Max-Forwards: 0&quot; header.
96+
3. Non-HTTP (i.e. unparseable as HTTP) garbage with enough new lines
97+
to let Squid find the &quot;end&quot; of &quot;headers&quot;.
98+
99+
For Part 1, your goal is to prove that your HTTPS client successfully
100+
communicates with your Squid with zero packets going to peers or origin
101+
servers. You can even add a temporary &quot;assert(false)&quot; to
102+
FwdState::FwdState() to be reasonably sure.
103+
104+
I hope this goal can be accomplished without Squid source code changes,
105+
but I cannot promise that.
106+
107+
108+
HTH,
109+
110+
Alex.
111+
112+
113+
114+
&gt;&gt;<i> Part 2: Forwarding bumped GET requests to cache_peers &quot;as is&quot;, without a second layer of encryption.
115+
</I>&gt;<i>
116+
</I>&gt;&gt;<i> This part depends on Part 1. Let's come back to this after Part 1 is working.
117+
</I>
118+
119+
</PRE>
120+
121+
<!--endarticle-->
122+
<HR>
123+
<P><UL>
124+
<!--threads-->
125+
<LI>Previous message (by thread): <A HREF="009983.html">[squid-dev] forward bumped traffic to parent in plain form
126+
</A></li>
127+
<LI>Next message (by thread): <A HREF="009981.html">[squid-dev] forward bumped traffic to parent in plain form
128+
</A></li>
129+
<LI> <B>Messages sorted by:</B>
130+
<a href="date.html#9984">[ date ]</a>
131+
<a href="thread.html#9984">[ thread ]</a>
132+
<a href="subject.html#9984">[ subject ]</a>
133+
<a href="author.html#9984">[ author ]</a>
134+
</LI>
135+
</UL>
136+
137+
<hr>
138+
<a href="https://lists.squid-cache.org/listinfo/squid-dev">More information about the squid-dev
139+
mailing list</a><br>
140+
</body></html>

squid-dev/2026-March/author.html

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ <h1>March 2026 Archives by author</h1>
1919
</a></b></li>
2020
</ul>
2121
<p><b>Starting:</b> <i>Wed Mar 4 16:03:28 UTC 2026</i><br>
22-
<b>Ending:</b> <i>Thu Mar 5 09:26:59 UTC 2026</i><br>
23-
<b>Messages:</b> 5<p>
22+
<b>Ending:</b> <i>Thu Mar 5 17:13:26 UTC 2026</i><br>
23+
<b>Messages:</b> 6<p>
2424
<ul>
2525

2626
<LI><A HREF="009981.html">[squid-dev] forward bumped traffic to parent in plain form
@@ -46,13 +46,18 @@ <h1>March 2026 Archives by author</h1>
4646
<LI><A HREF="009980.html">[squid-dev] forward bumped traffic to parent in plain form
4747
</A><A NAME="9980">&nbsp;</A>
4848
<I>Alex Rousskov
49+
</I>
50+
51+
<LI><A HREF="009984.html">[squid-dev] forward bumped traffic to parent in plain form
52+
</A><A NAME="9984">&nbsp;</A>
53+
<I>Alex Rousskov
4954
</I>
5055

5156
</ul>
5257
<p>
5358
<a name="end"><b>Last message date:</b></a>
54-
<i>Thu Mar 5 09:26:59 UTC 2026</i><br>
55-
<b>Archived on:</b> <i>Thu Mar 5 09:26:50 UTC 2026</i>
59+
<i>Thu Mar 5 17:13:26 UTC 2026</i><br>
60+
<b>Archived on:</b> <i>Thu Mar 5 17:13:30 UTC 2026</i>
5661
<p>
5762
<ul>
5863
<li> <b>Messages sorted by:</b>

squid-dev/2026-March/date.html

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ <h1>March 2026 Archives by date</h1>
1919
</a></b></li>
2020
</ul>
2121
<p><b>Starting:</b> <i>Wed Mar 4 16:03:28 UTC 2026</i><br>
22-
<b>Ending:</b> <i>Thu Mar 5 09:26:59 UTC 2026</i><br>
23-
<b>Messages:</b> 5<p>
22+
<b>Ending:</b> <i>Thu Mar 5 17:13:26 UTC 2026</i><br>
23+
<b>Messages:</b> 6<p>
2424
<ul>
2525

2626
<LI><A HREF="009979.html">[squid-dev] forward bumped traffic to parent in plain form
@@ -46,13 +46,18 @@ <h1>March 2026 Archives by date</h1>
4646
<LI><A HREF="009983.html">[squid-dev] forward bumped traffic to parent in plain form
4747
</A><A NAME="9983">&nbsp;</A>
4848
<I>Anthony Pankov
49+
</I>
50+
51+
<LI><A HREF="009984.html">[squid-dev] forward bumped traffic to parent in plain form
52+
</A><A NAME="9984">&nbsp;</A>
53+
<I>Alex Rousskov
4954
</I>
5055

5156
</ul>
5257
<p>
5358
<a name="end"><b>Last message date:</b></a>
54-
<i>Thu Mar 5 09:26:59 UTC 2026</i><br>
55-
<b>Archived on:</b> <i>Thu Mar 5 09:26:50 UTC 2026</i>
59+
<i>Thu Mar 5 17:13:26 UTC 2026</i><br>
60+
<b>Archived on:</b> <i>Thu Mar 5 17:13:30 UTC 2026</i>
5661
<p>
5762
<ul>
5863
<li> <b>Messages sorted by:</b>

0 commit comments

Comments
 (0)