<html><head></head><body><div style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:16px;"><div style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:16px;"><span><span><pre class="ydp76dbc839yiv7064100023ydped22fd51code-java">Hi
I am in a dire need about using squid in my Linux iptables firewall as a transparent proxy.<br><span><pre class="ydp76dbc839yiv7064100023ydp9f69da87code-java">In my linux iptables firewall i want to <span class="ydp76dbc839yiv7064100023ydp9f69da87code-keyword">do</span> iptables rules and controls in forward chain and after that <span class="ydp76dbc839yiv7064100023ydp9f69da87code-keyword">do</span> http filtering with squid, because of that i need to change netfilter packet flow and send packets to squid(app layer, user space) after forward chain, and then get them back to kernel space to <span class="ydp76dbc839yiv7064100023ydp9f69da87code-keyword">continue</span> their's way in forward chain and then go out, <b>something like other firewals and utm</b>(like Pfsense or opensense and ....) does.</pre></span>In my situation, i want squid to place <b>after</b> my <b>forwards</b> iptables rules,by default squid is listen on input port of machine but its not what i want and redirect packets to the input chain does not work <span class="ydp76dbc839yiv7064100023ydped22fd51code-keyword">for</span> me.<br>I think <b>NFqueue</b> is a good solution for my problem but i don't know that is possible to change squid source code to get packets from nfqueue? or does nfqueue can keep the packet state and handle TCP connection?<br>I want to change My packet flow like this: client-request >>> prerouting  >  Nat  > forward  > squid-cache > post-routing  >>>> HTTP(s)-server<br>The <b>important</b> part is that forward rules must check before packets forwards to squid. i don't want packets destinate to input chain of firewall.
I thought maybe its possible to use DAQ ,like the way snort use or nfqueue in iptables. I need some help about that, please help me <span class="ydp76dbc839yiv7064100023ydped22fd51code-keyword">if</span> its possible or <b>there are any other ways to solve it</b>.
<br><br>Thanks a lot<br>Morteza Omidian</pre></span></span></div></div></body></html>