第一步:检查数据库用户
1、宝塔面板 → 数据库 → phpMyAdmin,然后点击“通过面板访问”
2.查看用户,如果发现主机项有 % ,说明是不安全的,%代表任何电脑都可以使用这个用户名连接您的数据库(如果您的3306端口对外开放的话);
3.我们可以点击“编辑权限”进行修改,把Host项修改为“本地”,改好后,点击右下角的“执行”按钮进行保存;
4、只有主机名为localhost和127.0.0.1是绝对安全的,其他的都不太安全,建议您直接全部都删掉;
第二步:检查3306和8877端口
1、宝塔面板 → 安全 → 启动防火墙,仅单独放开游戏需要的端口(TCP/UDP),例如下面这几个:
9027 8541 21007 21010 8800 8801
2、如果您非要开放全部端口,也可以另外对3306和8877设置,策略改为“拒绝”,不让任何IP访问这两个端口,如下图:
127.0.0.1代表的是本机,如此一来,其他电脑就没办法访问您服务器的这2个端口了;
端口说明(科普): 3306 是mysql数据库端口; 8877 是PM2管理器调用GM命令的端口,比如邮件发送物品,都是通过这个端口执行; 7377和21008 GM通信端口
3、建议把7377和21008这两个端口也封掉,不让外网访问,这两个是GM通信端口,可能会被利用来刷东西。
第三步:设置wwwroot网站目录权限
为了省事!搭建教程里,大家都是直接给予wwwroot目录777的全部权限,这样其实是不安全的。建议权限只给755,并把所有者修改为www,如下图:
第四步:修改后台访问路径和管理员账号密码
1、管理员后台 → 右上角小人物图标菜单 → 安全设置
2、一定要修改后台管理路径,默认的admin账号和密码
第五步:修改服务端登录密钥
不少玩家反映账号被盗,密码没有被改,但是账号里的金币和点券却没有了。经过我们的分析,发现客户端登录存在漏洞,只需要知道当前游戏版本的登录密钥,就可以登录任意一个账号。因此建议大家修改bin里的登录密钥,不要用版本默认的密钥,需要修改的文件路径如下:
root\platform\bin\AdminServer root\s1\bin\AdminServer
1、使用WinHex.exe工具打开,搜索版本默认的登录密钥,进行对位修改;
2、修改后台【系统设置】 → 【密钥设置】里的“登录密钥”;
3、修改之后重启游戏服务端;
第六步:关闭调试模式
1、打开wwwroot/game/application/config.php配置文件,修改如下配置项:
// 应用调试模式 'app_debug' => false,
第七步:安装Nginx防火墙
宝塔面板 → 软件商店,搜索“Nginx防火墙”,我们安装免费版本的即可;
第八步:修改SSH端口,防爆破
宝塔面板 → 安全 → SSH管理
SSH端口不建议用默认的22端口号,选择端口号范围:1~65535