网络安全之Linux下SYN攻击的抵御


在Linux下怀疑有Dos攻击的时候,可以输入
netstat -an | grep -i “服务器ip地址:80″ | awk ”{print }” | sort | uniq -c | sort -n

这个命令会自动统计Tcp连接各个状态的数量,如果SYN_RECV很高的话,就不能排除有基于tcp协议的ddos攻击的可能,这个时候可以打开tcp_syncookies,输入如下命令

echo 1 > /proc/sys/net/ipv4/tcp_syncookies

如果没有 /proc/sys/net/ipv4/tcp_syncookies说明你的内核不支持,需要重新编译内核
同时 降低syn重试次数
echo 1 > /proc/sys/net/ipv4/tcp_syn_retries
echo 1 > /proc/sys/net/ipv4/tcp_synack_retries

加大syn_backlog,以保证用户的访问(消耗内存为代价,设的太高。。)

echo "2048" > /proc/sys/net/ipv4/tcp_max_syn_backlog

如果还是不行,那么只能交给相应的硬件防火墙了。

相关内容