2017-07-02 65 views
0

我想知道,如果它有助于防止用户通过发射套接字来泛滥服务器。NodeJS socket.io泛滥

如果是这样,如何阻止这些攻击。 我问这个问题,因为没有很多最近的帖子。

回答

1

防止用户通过发送套接字来淹没服务器很有用。

这完全取决于您的应用程序,以及流氓客户端发送大量emits()的后果是什么。如果您的服务器在发生故障或服务受到严重破坏时发生故障,那么是的,它会很有用。

如何阻止攻击的论文

我会说,这通常限速伞下适合,同样与HTTP请求。如果你想防范过度活跃的客户端,那么你通常会在你的服务器上设置一些速率限制(这就是Google为它的API所做的),当客户端超过速率限制时,你可以放弃他们的socket.io连接并拒绝来自该用户的一段时间的新连接。经过多次犯罪,你可能会禁止他们的帐户。

您还可以限制同一客户端同时连接到一些小数字(取决于您的应用程序应该是什么数量)的次数,以防止它们在同一个客户端上多次重复敲击。

提高复杂程度,您可以使您的费率限制基于账户,因此如果一个账户有多个开放连接,您可以统计所有账户连接的汇率限制,而不是单独的每个连接。

+0

谢谢,现在我明白了 你认为这个包: https://www.npmjs.com/package/socket-anti-spam 可以免受攻击“保卫”我的服务器? –

+0

@ Dr.Blamo - 对不起,但我不知道具体的包。 – jfriend00

+0

一个包临时ip禁令,包含垃圾邮件的用户。 (可定制) –