好了,今天又复习了一遍什么是SYN洪水攻击。
第一个是,什么是SYN攻击呢?其实就是利用TCP协议的规则来实行的。TCP是面向连接的协议,要 通过三次握手的过程,也就是A主机要向服务器发送一个SYN包请求连接,SYN是同步的意思。然后服务器发过来一个请求确认包,这时候已经建立了半连接,这是A主机受到确认之后,又要给服务器发送一个确认受到确认包的包。这个过程就叫三次握手协议。
而SYN攻击就是主机给服务器发送大量的SYN请求包,而服务器给主机回应后,主机不再发第三个确认包,这时候的服务器一直处于半连接状态,资源被消耗,影响正常用户的使用。
那要怎么防范呢?
第一,设置半连接接受确认包的等待时间,设置短一点,一旦这样超过这个时间,就放弃这个连接,回收资源。
第二,设置SYNcookies,j记录发送SYN的主机ip,如果一个主机ip大量发送SYN请求,则屏蔽这个主机ip.
第三,使用SYN代理。
其实这里面还有一些知识点。比如使用假ip地址你怎么屏蔽呢?第一个方法的时间应该如何设置呢?使用SYN代理,那么代理那边是怎么抵挡SYN攻击的呢?
这些知识点等我整理好了再发上来吧。