I'm currently working on hardening my RoS RB1000's from malicous traffic, and with the help of the wiki, this forum and it's many gracious users I've got several rules in place. One is the SYN protection chain that can be found in the wiki under protecting from DDoS, slightly modified here per the suggestions of others:
Code: Select all
add action=jump chain=forward comment="SYN Flood protect" disabled=no \
jump-target=SYN-Protect protocol=tcp tcp-flags=\
syn,!fin,!rst,!psh,!ack,!urg,!ece,!cwr
add action=accept chain=SYN-Protect comment="" disabled=no limit=X,Y \
protocol=tcp tcp-flags=syn,!fin,!rst,!psh,!ack,!urg,!ece,!cwr
add action=drop chain=SYN-Protect comment="" disabled=no protocol=tcp \
tcp-flags=syn,!fin,!rst,!psh,!ack,!urg,!ece,!cwr
I also have connection tracking on and tcp-syncookie enabled - my understanding is that SYN cookies are useful way to dump false connect packets while servicing valid ones. If the above rules are throwing out valid connect attempts right away because the threshold has been exceeded, it seems like they are sabotaging SYN cookie too.
Perhaps I'm just confused, but can someone explain to me why I would not want to disable these rules and just let SYN cookie handle the DDoS attacks instead?
Thanks!
Ed