我在網上查找,似乎無法找到太多類似的故事,這是令人驚訝的。如何停止或處理垃圾郵件服務器連接
我從提供商租用服務器,然後在那裏運行我的服務器軟件。我的iOS應用連接到它。它已經過去了一個月沒有問題,並且每天獲得幾十個連接。
從大約30小時前開始,有人開始每2秒連接一次。始終相同的IP。我懷疑他把手機放了30個小時?而我的應用程序每天只有100個用戶,因此我沒有任何競爭對手可以從中獲益。
我終於使用iptable阻止了他從我的服務器。從軟件工程方面來看,防止這些事情的常見做法是什麼?我應該跟蹤服務器端並拒絕重複連接嗎?我是否使用某種登錄/握手,或者我該怎麼做?
爲了澄清,我沒有使用http或apache。我使用基於TCP的自定義協議編寫了基於BSD套接字的服務器。我也有一個加密哈希,如果消息沒有正確散列,會終止連接。
編輯:我在我的連接日誌中計數。在過去的30個小時內,共有3個IP連接了10,000次。其中2個已經停止。所有這些都來自亞洲一個我不會指名的小國。
對於這樣的事情不要修改或限制系統相關的東西,如iptable。作爲服務器邏輯的一部分實施阻止可疑請求。您可以使用'Memcache'來記錄來自特定IP的請求數量,並根據傳入請求的閾值限制在一段時間內(例如1小時)作出決定。在Memcache密鑰上也使用TTL。 – sameerkn