我想知道,如果通过发出套接字防止用户充斥服务器是否有用。
如果是,如何阻止这些攻击。 我问这个问题,因为最近有很多关于它的帖子。
答案 0 :(得分:1)
通过发出套接字来防止用户充斥服务器是很有用的。
这完全取决于您的应用程序以及发送大量emits()
的流氓客户端的后果。如果您的服务器在发生这种情况时发生故障或者服务严重受损,那么它是有用的。
如何阻止这些攻击
我说这通常适用于限速伞,与http请求相同。如果您想要防止过度活跃的客户端,那么您通常会在服务器上设置一些速率限制(这是Google为其API所做的事情),当客户端超过速率限制时,您可以放弃他们的套接字。 io连接并拒绝该用户的新连接一段时间。在多次违规后,您可能会禁止他们的帐户。
您还可以将同一个客户端的同时连接数限制为一些较小的数字(取决于您的应用程序应该是多少),以防止它们多次从同一客户端敲击您。
提高复杂程度,您可以将速率限制设置为基于帐户,因此,如果帐户有多个开放连接,则计算所有帐户连接的速率限制,而不是单独连接每个连接。