Update 如何抵御网络攻击.md

This commit is contained in:
Radiation-pi 2024-05-14 22:23:37 +08:00 committed by GitHub
parent 6f2f2c5753
commit 3bc825773e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1 +1,64 @@
---
sidebar_position: 3
---
# 如何抵御网络攻击
:::warning
本页面尚在完善中,且考虑到文档面向人群,此内容较为通俗,不完全准确。
:::
随着你的 Minecraft 服务器人数和宣传越来越多,你的服务器越有可能收到其他“友商”或者某些不怀好意的玩家攻击。
别害怕大多数网络攻击没有那么致命可能只是会引起玩家高ping掉线、后台操作卡顿等。
## 分类
我们在这里提到几种常见的 Minecraft 服务器容易遭受的攻击类型,并分别提出相应的解决方法
### 应用层
应用层的攻击往往意味着,这些流量看起来是合法的,而且往往是因为应用的 BUG 或者未设置限制,导致可以通过伪造普通客户端的包发送,而服务器将其视为了一次正常的客户端行为,一般来说需要靠插件、反代软件等识别。
#### 假人攻击
简单来说假人攻击一般是通过模拟客户端协议进入服务器发送进入服务器的数据包,伪造有玩家接入服务器造成的攻击。
这些假人大多数是不动的、名字高度相似或者非常随机的,随着假人的快速加入、退出游戏,
这会导致服务器需要加载、保存玩家数据插件数据区块数据等导致服务器卡顿。
#### MOTD 攻击
简单来说就是 Ping 服务器,每次 Ping 服务器时,服务器将发送一个 MOTD ,由于 MOTD 中包含图片和文字信息,
且 MC 后端服务器一般是不会对 Ping 进行过滤和记录的,这会导致 Ping 的过程后台不会记录 log ,难以察觉。
对于 Velocity / Bungeecord ,默认 Ping 服务器的行为是会被记录的,类似于:
```
[/127.0.0.1:61647] <-> InitialHandler has pinged
```
对于这种简单的攻击 Velocity / Bungeecord 肯定能想到,默认配置中关于单个 IP 多次重新连接的配置是:
```
connection_throttle 4000
connection_throttle_limit 3
```
这意味着,在 4000ms 内最多能连接 3 次服务器,如果超过则服务器将不再重新 MOTD 一段时间
#### 其他插件
如果你使用了 Plan、Dynmap 等插件,这些插件会在某个端口开启网站。请注意这些端口如果被不怀好意的人知道,
否则这些 HTTP 端口很有可能被。
### 网络层
网络层攻击是 DDoS 攻击的一种形式它针对于网络基础架构进行攻击。最常见的网络层攻击是IP地址欺骗攻击者可以伪造IP地址并向目标服务器发送大量数据包以消耗目标服务器的网络带宽和系统资源。
一般网络层的攻击通常通过机房 DDOS 过滤和 IPtable或者其他防火墙等方式防御。