On 2020-03-03, Chris Cappuccio <ch...@nmedia.net> wrote:
> Jyri Hovila [Turvamies.fi] [jyri.hov...@turvamies.fi] wrote:
>> Hello everyone!
>> 
>> Now here's a mysterious one -- I've been working on this for weeks and still 
>> have no clue what's causing it.
>> 
>> "client_loop: send disconnect: Broken pipe
>> 
>> As soon as I disable pf entirely, the problem goes away.
>> 
>> Any ideas on how to debug this further?
>> 
>
> Figure out which exact part of your pf config is causing this. Try disabling
> everything line-by-line. 
>
>

Look at pfctl -ss -v. Do you have "wscale" values printed for most
TCP connections? If not then you are likely creating state on intermediate
rather than ACK packets (window scaling values are not present in most
packets, only the initial handshake). If that is the case, make sure
you don't have anything passed by the implicit default rule which is
equivalent to "pass all flags any no state", I like to make sure I don't
hit this by starting my ruleset with "block log".

Note the paragraph starting "Where more than one firewall might actively
handle packets" in pfsync(4) if this might apply to you.

You can also try bumping up the PF debug level (pfctl -x; the default
is "err"), be careful doing this on a busy system (take it up one notch
at a time and make sure it doesn't create insane amounts of logging, be
ready to knock back to a previous level if needed). Be extra careful
with this if you have serial console.

Reply via email to