服务器的安全从收敛暴露面开始:不需要的端口全部关闭、默认的账号全部改名、空密码的账号全部禁用——安全基线把服务器的初始状态从「能用」提升到「难攻」。基线的执行是一次性的加固加持续的巡检。
---端口基线:白名单外的端口全部关闭
local PORT_WHITELIST = {
[22] = 'SSH(仅跳板机来源)',
[80] = 'HTTP',
[443] = 'HTTPS',
[7000] = '游戏网关',
}
setontimerex(147, 300)
function Baseline.portCheck()
local open = Baseline.listeningPorts()
for _, port in ipairs(open) do
if not PORT_WHITELIST[port] then
Ops.alert('基线违规:未登记端口 ' .. port ..
' 在监听')
end
end
end
端口的基线是白名单制:名单外的监听端口全部视为违规——游戏网关、Web 的 80 与 443、跳板机来源的 SSH 是仅有的合法暴露,其余一律关闭。SSH 的加固三件套:禁用密码登录只留密钥、禁用 root 直接登录、来源限制到跳板机的 IP——远程管理的入口收紧到一条受控的通道。基线的巡检自动化:每 5 分钟扫描监听的端口与白名单比对,违规即告警——基线的执行靠巡检持续盯住而不是一次性的加固。
---账号的基线:命名与权限的规范
function Baseline.accountCheck()
local issues = {}
-- 空密码的账号检查
for _, acc in ipairs(Baseline.accounts()) do
if acc.noPassword then
issues[#issues + 1] = '空密码账号: ' .. acc.name
end
-- 业务账号禁止登录 shell
if acc.isService and acc.hasShell then
issues[#issues + 1] = '服务账号可登录: ' .. acc.name
end
end
return issues
end
账号的基线两条:空密码的账号禁用、服务的运行账号禁止交互登录——业务跑在无 shell 的账号下,即使业务被攻破也拿不到登录的入口。账号的命名带用途的前缀:svc_ 前缀的服务账号、adm_ 前缀的管理账号,账号的用途从名字可读。基线的执行有例外申请的流程:确需开端口或开登录的,例外登记有效期与责任人,临时的例外到期自动回收。
基线的巡检项清单与等保的要求对照,缺项的补齐进整改的清单;基线的违规告警响应时效:P2 级的响应在 4 小时内处理。
端口的白名单曾经漏了新组件的端口,组件上线即告警,组件上线与基线登记的流程绑定。账号的禁用曾经影响业务的运行账号,禁用的名单与业务的依赖核对后执行。巡检的告警曾经被静默,违规的处理进值班的整改流程,告警的响应有时效的要求。
基线的清单对照等保与行业的要求年度更新,基线的标准随威胁的演进提升。加固的操作脚本化:一次编写、多台服务器批量执行,手工的加固必然有遗漏。基线的违规与事故的定级联动:基线的违规视同隐患事故,响应的流程同样严格。
全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →
实战应用:用在哪里 战士的烈火剑法一击熄火后要等八秒冷却,连招断档感强烈。疾风烈火斩在烈火剑法命中后给一次连击窗口:三秒内再…
实战应用:用在哪里 阵营对抗打到中期容易疲软:打赢没有额外好处,输掉也没有代价。阵营声望体系给阵营战装上荣誉刻度:个人与阵营…
实战应用:用在哪里 拿下沙巴克之后呢?城主除了名字挂在城墙上,对城市毫无影响。城主施政玩法让占领变成治理:城主每周获得市政令…
实战应用:用在哪里 主线路光缆被挖断的深夜,全服掉线 20 分钟,玩家以为游戏倒闭。备用线路方案给接入层配第二条出口:主线路…
实战应用:用在哪里 行会官员由帮主任命的老模式弊端明显:任人唯亲、能上不能下。行会选举接口把官员换届做成投票制:每两个月一次…
实战应用:用在哪里 烈火剑法的伤害加成、冷却时间、下一级提升,全靠玩家记忆或去官网查。技能说明悬浮卡片在鼠标悬停技能图标零点…