使用 IP 地址防止 DDOS websocket

protection agains DOS websocket with ip address

我想知道将用户的 IP 地址存储到 websocket 的握手中是否是保护我的 java ee 服务器免受 DDOS 攻击的好方法:

当服务器收到异常数量的连接时,他切换到'secure'模式,其中,如果给定的连接请求提供了服务器不知道的ip地址(存储在数据库中,第一次连接),那么我可以简单地拒绝该连接。

有帮助吗? (我主要关心的是尽可能保护我的 websocket 服务器。我已经调查了起源,但到目前为止没有成功。)

感谢您的帮助!

针对 DDoS 的保护必须在网络级别(路由、平衡、交换等...)。如果收到大量请求,服务器将无能为力。即使服务器快速分派错误,通道也会饱和,合法请求无法到达服务器,或者它们以非常糟糕的吞吐量到达。抛开,即使 ICMP 数据包甚至不在 TCP/UDP 层,而只是 IP 层,也可以完成 DDoS,因此 WebSocket 服务器对此无能为力。

针对 DoS 的保护更多地与逻辑相关,而不是与基础设施相关。本质上,是一种允许挂起您的服务器的攻击媒介。一个实际的例子是,如果发送格式错误的 WebSocket 请求,则在您的服务器中调度套接字的线程死亡或卡住,从而阻止应用程序接受更多连接。为了保护您的服务器免受 DoS 攻击,请检查这些内容。