UID1096831性别保密经验 EP铁粒 粒回帖0主题精华在线时间 小时注册时间2023-6-12最后登录1970-1-1
|
本教程仅适合TCP(Java版服务器)
用处:如果你的母鸡没有任何防御,并且正在遭受L4攻击 本教程将帮到你很多
如果你的服务器本身没有任何保护,并且可能被攻击关机,此教程会帮助你很多
适合Bungeecord 任何子版本/Velocity
节点仅适用Linux,跑Minecraft的服务器可以为Windows/Linux
1. 节点设置
2. Bungeecord/Velocity设置
3. 防火墙保护(仅节点IP可访问端口)
节点设置
1. SSH登陆进入服务器并且执行安装HAProxy
Centos
- sudo yum -y install haproxy
复制代码 Ubuntu/Debian等等
2. 修改HAProxy配置并开启Proxy-Protocol(用于Bungeecord/Velocity获取玩家IP)
- vim /etc/haproxy/haproxy.cfg
复制代码 翻到最下面并注释下面一切(或者删掉)
- #---------------------------------------------------------------------
- # main frontend which proxys to the backends
- #---------------------------------------------------------------------
- #frontend main *:5000
- # acl url_static path_beg -i /static /images /javascript /stylesheets
- # acl url_static path_end -i .jpg .gif .png .css .js
- #
- # use_backend static if url_static
- # default_backend app
- #---------------------------------------------------------------------
- # static backend for serving up images, stylesheets and such
- #---------------------------------------------------------------------
- #backend static
- # balance roundrobin
- # server static 127.0.0.1:4331 check
- #---------------------------------------------------------------------
- # round robin balancing between the various backends
- #---------------------------------------------------------------------
- #backend app
- # balance roundrobin
- # server app1 127.0.0.1:5001 check
- # server app2 127.0.0.1:5002 check
- # server app3 127.0.0.1:5003 check
- # server app4 127.0.0.1:5004 check
复制代码 注释完成后在最后一行加上
- listen minecraft
- bind *:25565
- mode tcp
- timeout connect 10s
- timeout client 1m
- timeout server 1m
- balance leastconn
- option tcp-check
- server minecraft {服务器IP地址:端口号(不包含{})} check-send-proxy check send-proxy-v2
复制代码 范例:
- listen minecraft
- bind *:25565
- mode tcp
- timeout connect 10s
- timeout client 1m
- timeout server 1m
- balance leastconn
- option tcp-check
- server minecraft 223.233.233.322:25565 check-send-proxy check send-proxy-v2
复制代码 修改完成配置文件保存并重启HAProxy
- :wq
- service haproxy restart
复制代码 检查HAProxy是否开起来
3. 修改节点防火墙开启监听端口 注意:这里范例是25565端口,请按照你设置的HAProxy监听端口设置,具体在配置文件里是bind *:25565这一行
这里用firewalld做例子 在最下面</zone>之前加一行
- <port protocol="tcp" port="25565"/>
复制代码 退出文件并重启firewalld后查看firewalld是否正常运行
- :wq
- service firewalld restart
- service firewalld status
复制代码
Bungeecord/Velocity设置 注意:修改为true后Bungeecord只接受来自HAProxy的请求,通过IP直接访问服务器会出现错误
修改配置:
BC
进入Bungeecord运行文件夹并打开Config.yml
找到proxy_protocol并修改为true
Velocity
进入Velocity运行文件夹并打开velocity.toml 找到haproxy-protocol并修改为true
保护IP:
这里以Linux为例
- #打开firewalld配置文件
- vim /etc/firewalld/zones/trusted.xml
复制代码 在</zone>前面添加
- <source address="你的节点IP"/>
复制代码 可以添加多行如果你有多个节点
添加完毕重启防火墙即可
- service firewalld restart
复制代码
这样就完事儿了! 你的节点就创建成功了,所有攻击流量都会打到节点机器,如果节点出问题母鸡不会断网/关机等等。
如果节点有问题直接DNS把问题节点去掉即可 并且除了节点机器,其他机器都无法访问到母鸡服务器,最大程度上的保证了母鸡的安全
|
|