java - socket類服務(wù)端如何防止被ddos攻擊?
問題描述
比如說我用socket,或者swoole的websocket服務(wù)器編寫一個(gè)游戲服務(wù)端,但是客戶端可以通過無限發(fā)包的方式來攻擊我的游戲服務(wù)端,導(dǎo)致服務(wù)端崩潰,請問目前有什么比較好的方案可以防止這類ddos,cc攻擊?(像網(wǎng)上各種cdn都只能防HTTP類型的請求攻擊)
聽別人說有硬件防火墻,但是如果我用阿里云騰訊云之類的服務(wù)器搭建服務(wù)端的話就沒辦法安硬件防火墻啊,有軟件可以做類似的防御嗎?
(不知道這里的朋友是否玩過英雄聯(lián)盟或者穿越火線,這些游戲曾經(jīng)都有各種炸房外掛,原理其實(shí)也是向他們的服務(wù)端發(fā)送大量垃圾數(shù)據(jù)包,或者超出正常頻率發(fā)送含有奇怪邏輯的數(shù)據(jù)包,導(dǎo)致同一個(gè)房間內(nèi)的其他訂閱了該游戲服務(wù)端某種消息的玩家也會(huì)短時(shí)間大量收到這些數(shù)據(jù)包從而讓客戶端崩潰掉線,可見連騰訊游戲之前都對這類攻擊沒什么防范措施)
問題解答
回答1:iptables對ip封鎖,限制每秒接受的請求次數(shù)等。。?;蚣影酌麊魏诿麊?/p>回答2:
是的。常見的云防火墻和軟件防火墻、流量清洗之類,都是針對的HTTP協(xié)議。針對TCP連接或數(shù)據(jù)過濾的防火墻在WEB開發(fā)中很少。但也不是沒有,例如這篇文章里面提到的DDOS就和題主的問題類似,所以題主的問題應(yīng)該改為“如何防御TCP拒絕服務(wù)攻擊”
回答3:建議控制頻率,和寶合法性驗(yàn)證。發(fā)現(xiàn)異常的IP,直接封掉。
相關(guān)文章:
1. 如何設(shè)置一個(gè)無限循環(huán)并打破它。(Java線程)2. 網(wǎng)頁爬蟲 - 如何使用使用java抓取信息并制作一個(gè)排名系統(tǒng)?3. mysql - 在log日志中已知用戶的某一步操作,如何獲取其上一步操作?4. php對mysql提取數(shù)據(jù)那種速度更快5. shell - mysql更新錯(cuò)誤6. javascript - sublime快鍵鍵問題7. javascript - immutable配合react提升性能?8. python小白 自學(xué)看書遇到看不懂的地方9. macos - 如何徹底刪除mac自帶的apache和php10. DADB.class.php文件的代碼怎么寫

網(wǎng)公網(wǎng)安備