nginx防止大量請(qǐng)求 nginx怎么防止ddos攻擊cc攻擊等流量攻擊?
nginx怎么防止ddos攻擊cc攻擊等流量攻擊?網(wǎng)上也搜過好多方法大概是以下幾種方法1.添加防火墻;(由于價(jià)格太貴放棄了)2.更換域名,發(fā)現(xiàn)被攻擊后,立刻解析到其他域名上,把被攻擊的域名停止解析(由
nginx怎么防止ddos攻擊cc攻擊等流量攻擊?
網(wǎng)上也搜過好多方法大概是以下幾種方法
1.添加防火墻;(由于價(jià)格太貴放棄了)
2.更換域名,發(fā)現(xiàn)被攻擊后,立刻解析到其他域名上,把被攻擊的域名停止解析(由于需要人工操作,且dns解析與停止不是實(shí)時(shí)的需要時(shí)間)
3.在nginx中攔截cc攻擊
最終討論方法是在nginx中攔截
下面說一下原理
由ios,android端 寫一個(gè)對(duì)稱加密算法且吧時(shí)間戳也加密進(jìn)去;作為 user-agent 來訪問 服務(wù)器的接口,然后在nginx中 去解密這個(gè)user-agent來檢驗(yàn)這個(gè)加密字符串是否合法或者是否過期;如果是合法的則去調(diào)用php-fpm運(yùn)行程序,如果不合法則直接返回403;
那么問題了來了 如何在nginx攔截cc攻擊了,也就說如何在nginx中編程了,我一個(gè)php程序員肯定不會(huì);這個(gè)時(shí)候需要引入一個(gè)lua控件;
單獨(dú)安裝lua插件太麻煩了,后來直接安裝了 openresty 直接在openresty中 編寫lua腳本,成功防御了cc攻擊
服務(wù)器經(jīng)常被ddos攻擊怎么辦?
1.如果是云服務(wù)器,可買ddos防御服務(wù),價(jià)錢很貴。
2.如果是idc機(jī)房,一般機(jī)房都提供硬防。
3.購(gòu)買CDN服務(wù)放在前面。
4.在自己的服務(wù)器端也可以做一些配置,比如在nginx服務(wù)器上做基于ip的頻次限限制,也能起到一些作用。