在 CentOS 上保障 SQL Server 数据安全
一 身份与访问控制
- 使用混合身份验证或对接 Active Directory,为所有账户设置强密码并定期更换;遵循最小权限原则,仅授予完成工作所需的最低权限,避免滥用高权限角色(如 sysadmin)。
- 通过 CREATE LOGIN / CREATE USER 精细化创建登录与数据库用户,按职责分组并绑定到最小权限角色;定期审计并清理过期/默认/共享账户。
- 限制数据库主机的管理面访问(仅限跳板机或管理网段),并启用多因素认证用于远程运维与敏感操作。
二 加密与传输安全
- 启用透明数据加密 TDE,对数据库静态数据进行实时加密,防止存储介质泄露导致的数据外泄。
- 对敏感列使用 Always Encrypted,实现客户端侧加密,密钥不由数据库引擎持有。
- 强制TLS 加密保护传输通道:在客户端驱动与服务器之间启用 TLS,确保 TDS 流量加密,防止窃听与中间人攻击。
- 对操作系统层的重要数据与备份目录,建议启用 LUKS/dm-crypt 进行磁盘/分区加密,实现“静态数据”的多层防护。
三 网络安全与端口治理
- 使用 firewalld 仅开放必要端口(默认 1433/TCP),对管理口与业务口实施分区分域与源地址白名单策略;必要时修改默认端口以降低暴露面。
- 关闭或卸载未使用的服务与端口,减少攻击面;对数据库主机与业务网段之间实施网络隔离/VPC 划分,仅允许受控通道访问。
- 对外部访问启用连接加密与主机名/证书校验,避免明文或弱加密连接。
四 补丁更新与备份恢复
- 定期执行 yum update 更新 CentOS 与 SQL Server 组件,及时应用官方安全补丁与累积更新,修复已知漏洞。
- 建立周期性备份(全量/差异/日志),将备份文件存放在安全、隔离的存储位置,并定期验证可恢复性与恢复时间目标(RTO)/恢复点目标(RPO)。
- 对备份链路与存储实施访问控制与加密,避免备份成为新的泄露源。
五 审计监控与主机加固
- 启用并定期审查 SQL Server 错误日志/系统日志,对登录失败、权限变更、异常查询等进行告警;必要时引入 IDS/IPS 与安全信息与事件管理(SIEM)进行集中监测。
- 在 CentOS 上启用 rsyslog/systemd-journald 日志收集与日志轮转,对关键目录设置最小权限与完整性校验。
- 强化 SSH 安全:禁用 root 直登、使用密钥认证、可变更默认端口并限制来源 IP;对登录失败实施锁定策略(如连续失败 3 次锁定 40 秒)。
- 配置 PAM 密码复杂度(如长度≥8、包含大小写字母/数字/特殊字符)与有效期(如 90 天),提升账户安全基线。