服务器全局访问控制加固核心是“收口子、划边界、控动作”,即关闭默认共享与高危服务、统一强身份认证、最小化权限分配、网络层与会话层双重收敛,从源头切断非法权限申请路径。

服务器全局访问控制加固,核心是“收口子、划边界、控动作”——不靠堆功能,而靠系统性地切断非法权限申请的路径。重点不在事后拦截,而在事前不让申请能发起、不让请求能抵达、不让响应能生效。
关闭默认共享与自动服务暴露
Windows 默认开启 ADMIN$、C$、IPC$ 等管理共享,Linux 默认启用 Avahi、CUPS、rsync daemon 等监听服务,这些都构成隐式全局入口。必须主动关闭:
- Windows:注册表中
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters新建AutoShareServer和AutoShareWks,值设为0 - Linux:用
systemctl list-units --type=service --state=running检查,对非必要服务执行systemctl disable --now cups avahi-daemon rsyncd - 数据库、中间件、管理后台等一律禁用
0.0.0.0监听,改用127.0.0.1或内网固定 IP
限制身份认证入口与凭证强度
所有允许登录的通道(SSH、RDP、Web 控制台)必须统一纳入强管控,杜绝弱口令、空口令、默认账号、密码复用等基础风险:
- 禁用 root / Administrator 直接登录;Linux 的
sshd_config中设PermitRootLogin no,Windows 本地策略中重命名 Administrator 并禁用 Guest - 强制密码复杂度:Linux 修改
/etc/login.defs,设PASS_MIN_LEN 8、PASS_MAX_DAYS 80;Windows 本地安全策略中启用“密码必须符合复杂性要求”,最短长度设为 8 - 启用账户锁定:Linux 通过
pam_tally2.so设置 5 次失败后锁定 10 分钟;Windows 对应设“账户锁定阈值=5”、“账户锁定时间=10 分钟”
最小化权限分配与提权路径
全局访问控制不是“谁不能进”,而是“进来后能干什么”。权限必须按角色切片、按动作授权,拒绝宽泛赋权:
- 普通用户禁止 sudo 全权限,用
visudo限定可执行命令,例如%webadmin ALL=(root) /usr/bin/systemctl restart nginx - 服务运行账号(如 www-data、mysql)禁止交互式 shell 登录,设其 shell 为
/usr/sbin/nologin - 删除或禁用所有临时账号、测试账号、离职人员账号;定期检查
/etc/passwd和 Windows “本地用户和组”,清理无主账户及 SSH 公钥 - Windows 中,“允许通过远程桌面服务登录”仅保留 Administrators;“关闭系统”权限也只赋予该组
网络层与会话层双重收敛
即使身份合法,也要限制其能从哪来、能待多久、能连几次:
- 防火墙只放行必需端口(如 22、443),其余全部 DROP;Linux 用
ufw或iptables,Windows 启用高级安全防火墙并配置入站规则 - SSH 配置
AllowUsers或AllowGroups明确白名单;RDP 启用网络级身份验证(NLA) - 设置会话超时:Linux 的
ClientAliveInterval 300+ClientAliveCountMax 2;Windows 组策略中配置“会话时间限制”为 15 分钟空闲断连 - 接入 fail2ban 或 sshguard,对暴力尝试自动封禁 IP;日志需留存至少 90 天,且写入独立 syslog 服务器











