syn flooding 공격을 막을만한 대안이 있을까요
글쓴이: sweep / 작성시간: 일, 2009/02/08 - 12:38오전
간단한 툴로도 웹서버가 마비가 되버리네요
똑같은공격을 다른서버에 했을때는 다른서버는 그대로있거든요..
제서버에 공격을하면 웹서버가 2초만에 마비가되버립니다
구글에서 찾아봐도 영 시원찮은 해결책밖에없고
어떻게..SYN_RESV상태를 짧게 유지하면 될것같은데요.
방법이 있을까요?
Forums:
일단검색부터하심이..
syn flooding 공격 검색부터 하심이
간단히 iptables 설정으로만으로도 차단을 할수가 있습니다..
공개된 방화벽 oops 로도 충분히 제어가 가능한부분이고 커널에서 일부수정하여 차단할수도 있습니다..
원천적인거는 방화벽+ iptables 룰셋만으로도 충분히 제어가 가능합니다...
먼저 syn cookie 를
먼저 syn cookie 를 켜시고 backlog 를 적당히 늘려서 잡아보시기 바랍니다.
아래는 제 시스템의 설정입니다.
[root@localhost ~]# sysctl -a | grep syn
fs.quota.syncs = 13
net.ipv4.tcp_syn_retries = 5
net.ipv4.tcp_synack_retries = 5
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_sent = 120
net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv = 60
net.netfilter.nf_conntrack_tcp_timeout_syn_sent = 120
net.netfilter.nf_conntrack_tcp_timeout_syn_recv = 60
[root@localhost ~]# sysctl -w net.ipv4.tcp_syncookies=1
[root@localhost ~]# sysctl -w net.ipv4.tcp_max_syn_backlog=1024
syn_recv 는 net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv 파라미터에서 지정해 줄 수 있습니다.
경험상 시스템을 최대한 튜닝했을때 약 8만에서 9만 pps 가 대부분의 시스템에서 한계치였습니다.
댓글 달기