<div dir="ltr"><div><p class="gmail-">Hi Alex,</p>
<p class="gmail-">Thank you very much for your quick and helpful response regarding the PROXY protocol configuration.</p>
<p class="gmail-">Your clarification about using <code>require-proxy-header</code> instead of <code>proxy-protocol</code> was spot on — I’ve updated my <code>squid.conf</code> accordingly, and it now seems to be working as expected.</p>
<p class="gmail-">I really appreciate your support and guidance on this!</p>
<p class="gmail-">Best regards,</p><p class="gmail-">
Michael Tin</p></div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><br></div></div></div><br></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Tue, 8 Apr 2025 at 14:09, Alex Rousskov <<a href="mailto:rousskov@measurement-factory.com">rousskov@measurement-factory.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 2025-04-08 08:24, Michael Tint wrote:<br>
<br>
> I'm running into a blocking issue while deploying Squid 6.13 ... My goal is <br>
> to enable the PROXY protocol support via the following config line:<br>
> <br>
> http_port 3128 proxy-protocol<br>
<br>
<br>
The correct http_port option name for enabling PROXY protocol support is <br>
not "proxy-protocol" but "require-proxy-header". See http_port directive <br>
description in your generated squid.conf.documented or at<br>
<a href="https://www.squid-cache.org/Doc/config/http_port/" rel="noreferrer" target="_blank">https://www.squid-cache.org/Doc/config/http_port/</a><br>
<br>
HTH,<br>
<br>
Alex.<br>
<br>
<br>
<br>
> However, on startup I consistently get this error:<br>
> <br>
> |2025/04/08 13:14:44| Processing Configuration File: <br>
> /etc/squid/my-squid.conf (depth 0) 2025/04/08 13:14:44| FATAL: Unknown <br>
> http_port option 'proxy-protocol'. 2025/04/08 13:14:44| FATAL: Bungled <br>
> /etc/squid/my-squid.conf line 1: http_port 3128 proxy-protocol <br>
> 2025/04/08 13:14:44| Squid Cache (Version 6.13): Terminated abnormally. |<br>
> <br>
> ------------------------------------------------------------------------<br>
> <br>
> <br>
> 🔍 *What I’ve Done So Far:*<br>
> <br>
> *<br>
> <br>
> Using Squid *6.13* (confirmed)<br>
> <br>
> *<br>
> <br>
> Verified |--enable-proxy-auth|, |--enable-auth-*|, and many other<br>
> flags in my Dockerfile<br>
> <br>
> *<br>
> <br>
> Using the Dockerfile provided by |b4tman/docker-squid| repo<br>
> <br>
> *<br>
> <br>
> Running on *Docker Swarm* and mapping config via:<br>
> <br>
> |volumes: - ./config/squid.conf:/etc/squid/my-squid.conf:ro |<br>
> <br>
> *<br>
> <br>
> |SQUID_CONFIG_FILE| is set properly, and the config loads — until it<br>
> hits that line.<br>
> <br>
> ------------------------------------------------------------------------<br>
> <br>
> <br>
> ❓ *What is |proxy-protocol| supposed to do?*<br>
> <br>
> The |proxy-protocol| option is designed to allow Squid to accept <br>
> *original client IP addresses* from trusted proxies or load balancers <br>
> (e.g., HAProxy, AWS ELB, Traefik) via the PROXY protocol <br>
> <<a href="https://www.haproxy.org/download/2.0/doc/proxy-protocol.txt" rel="noreferrer" target="_blank">https://www.haproxy.org/download/2.0/doc/proxy-protocol.txt</a>>.<br>
> <br>
> It lets you do things like:<br>
> <br>
> |http_port 3128 proxy-protocol |<br>
> <br>
> Instead of seeing the IP of the load balancer, Squid gets the real <br>
> client IP passed in the PROXY header — which is essential for proper <br>
> logging, ACLs, or geo-restrictions in reverse-proxy environments.<br>
> <br>
> ------------------------------------------------------------------------<br>
> <br>
> <br>
> 🚫 *Current Blocker*<br>
> <br>
> Despite enabling many Squid features in the Docker build, this one fails <br>
> with |Unknown http_port option 'proxy-protocol'|, which usually means <br>
> the *binary wasn't compiled with support* for it.<br>
> <br>
> ------------------------------------------------------------------------<br>
> <br>
> <br>
> 🛠️ *Questions / Help Needed*<br>
> <br>
> *<br>
> <br>
> Is |--with-proxy-protocol| or equivalent *compile flag* required to<br>
> enable this? (I can't find it in the list of |./configure| options<br>
> for Squid.)<br>
> <br>
> *<br>
> <br>
> Has anyone used |proxy-protocol| successfully with Squid 6.13 in<br>
> Docker or with the |b4tman/docker-squid| base image?<br>
> <br>
> *<br>
> <br>
> Is there a specific patch, module, or feature flag I'm missing?<br>
> <br>
> Thanks in advance — this feature is critical for deployment in Swarm <br>
> behind a reverse proxy, and I’m stuck!<br>
> <br>
> Best regards,<br>
> <br>
> <br>
> *Michael Tint*<br>
> Linux Admin<br>
> <br>
> <br>
> _______________________________________________<br>
> squid-users mailing list<br>
> <a href="mailto:squid-users@lists.squid-cache.org" target="_blank">squid-users@lists.squid-cache.org</a><br>
> <a href="https://lists.squid-cache.org/listinfo/squid-users" rel="noreferrer" target="_blank">https://lists.squid-cache.org/listinfo/squid-users</a><br>
<br>
</blockquote></div>