]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MEDIUM: tcp: add new tcp action "silent-drop"
authorWilly Tarreau <w@1wt.eu>
Sun, 23 Aug 2015 23:43:45 +0000 (01:43 +0200)
committerWilly Tarreau <w@1wt.eu>
Mon, 28 Sep 2015 20:14:57 +0000 (22:14 +0200)
commit2d392c2c2f73418e8300cf344c1e300c547899fe
treeb89f71c9250c28e6894a733a709a129bd568afed
parentc870bfd0e92aa792c1ce97d56fb914cc890839bb
MEDIUM: tcp: add new tcp action "silent-drop"

This stops the evaluation of the rules and makes the client-facing
connection suddenly disappear using a system-dependant way that tries
to prevent the client from being notified. The effect it then that the
client still sees an established connection while there's none on
HAProxy. The purpose is to achieve a comparable effect to "tarpit"
except that it doesn't use any local resource at all on the machine
running HAProxy. It can resist much higher loads than "tarpit", and
slow down stronger attackers. It is important to undestand the impact
of using this mechanism. All stateful equipments placed between the
client and HAProxy (firewalls, proxies, load balancers) will also keep
the established connection for a long time and may suffer from this
action. On modern Linux systems running with enough privileges, the
TCP_REPAIR socket option is used to block the emission of a TCP
reset. On other systems, the socket's TTL is reduced to 1 so that the
TCP reset doesn't pass the first router, though it's still delivered to
local networks.
doc/configuration.txt
src/proto_tcp.c