Hi,
sorry for my late reply.
Thank you for providing these log messages.
Anything that has the “URG ACK PSH RST SYN FIN” is interesting to see. These appear to be FIN-ACKs (which conntrack
seems to flag as invalid sometimes, but I do not know why that is yet), but I do not expect those packets to have a SYN flag set, too.
Either I am missing something completely, or those packets are bogus - I would blame a completely broken TCP implementation if this wasn’t for some well-known public DNS resolvers…
To be honest, I still do not have a reasonable idea on the “TCP scan” hits from countries being blocked in the location block. As I mentioned here, there might be a delta between the country allocations the GUI shows and the xt_geoip
module is actually using, but none of the offending source IP addresses was recently reallocated, so I doubt this could be a reason.
Looking at the firewall initscript, the chains related to TCP/UDP/… scan come before the connection tracking. This means a packet matching one of the criteria for the BADTCP
chain will be logged and dropped accordingly, even if it belongs to a connection that was established by IPFire or a client behind it.
Consequently, that would mean one or more of your devices established connections to these IP addresses, which would at some point respond with a bad/(deliberately) broken network packet. That packet is being logged as a “TCP scan”, giving the misleading appearance of the location filter not working properly.
At the moment, I cannot really think of another reason. Is there any way of telling if a client established connections to these IP addresses, i. e. if you enabled logging of accepted connections in a firewall rule? That might clarify things even further.
Thanks, and best regards,
Peter MĂĽller