Ubuntu SQL Server安全防护怎么做
导读:Ubuntu 上 SQL Server 的安全防护清单 一 身份与访问控制 使用强口令并保护 SA:设置复杂密码,避免在生产环境直接使用 SA 进行日常连接,遵循最小权限原则创建专用登录名与数据库用户。 最小权限与职责分离:为用户仅授予完...
Ubuntu 上 SQL Server 的安全防护清单
一 身份与访问控制
- 使用强口令并保护 SA:设置复杂密码,避免在生产环境直接使用 SA 进行日常连接,遵循最小权限原则创建专用登录名与数据库用户。
- 最小权限与职责分离:为用户仅授予完成任务所需的最小权限,避免使用高权限角色(如 sysadmin)进行常规业务操作。
- 审计关键操作:启用登录审计,记录成功与失败的登录尝试,便于入侵检测与合规审计。
- 主机层账户治理:仅授予必要 sudo 权限,定期清理不再使用的系统账户与密钥。
二 网络与加密
- 防火墙精细化:仅开放必要来源 IP 的 TCP 1433(或自定义端口),避免使用 0.0.0.0/0 放行;示例:
sudo ufw allow from 192.168.1.0/24 to any port 1433 proto tcp。 - 更改默认端口:在
/etc/sqlserver/mssql.conf的 [network] 段设置tcp-port=1433(示例改为 27777),重启服务后生效,降低自动化扫描命中率。 - 强制加密通道:启用 TLS/SSL 加密传输,确保客户端与服务器之间的数据机密性与完整性。
- 主机与传输加固:保持系统与 SQL Server 补丁为最新,减少已知漏洞利用面。
三 数据与应用安全
- 透明数据加密 TDE:对数据库文件进行实时加密,保护静态数据,防止因存储介质丢失导致的数据泄露。
- 列级加密:对高敏字段(如证件号、银行卡号)使用对称/非对称密钥或证书进行加密,结合应用层密钥管理。
- 备份安全:对备份文件进行加密与完整性校验,实施离线/异地保存与定期恢复演练,确保可用性与合规性。
四 运维与监控
- 持续更新与补丁:定期更新 Ubuntu 与 SQL Server,及时修复安全漏洞。
- 代理与作业安全:按需启用 SQL Server Agent,将作业执行账户降权,避免使用高权限凭据运行例行任务。
- 日志与告警:启用登录审计与错误日志集中收集,结合监控平台对异常登录、失败登录激增、权限变更等进行告警。
五 快速加固命令示例
- 防火墙仅放通内网网段到 1433
sudo ufw allow from 192.168.1.0/24 to any port 1433 proto tcp
- 修改默认端口为 27777 并重启
echo -e "[network]\ntcp-port=27777" | sudo tee /etc/sqlserver/mssql.confsudo systemctl restart mssql-server
- 创建低权限登录与用户并授予只读
sqlcmd -S localhost -U SA -P '< YourStrong!Pwd> ' -Q "CREATE LOGIN app_user WITH PASSWORD='< StrongPwd> '; "sqlcmd -S localhost -U SA -P '< YourStrong!Pwd> ' -Q "USE YourDB; CREATE USER app_user FOR LOGIN app_user; EXEC sp_addrolemember 'db_datareader', 'app_user'; "
- 启用登录审计(成功与失败)
sqlcmd -S localhost -U SA -P '< YourStrong!Pwd> ' -Q "EXEC sp_configure 'show advanced options', 1; RECONFIGURE; EXEC sp_configure 'audit level', 3; RECONFIGURE; "
安全提示:上述命令涉及生产环境变更,请在测试环境验证并安排维护窗口;对现有业务连接串、防火墙与应用配置进行相应调整,避免中断。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu SQL Server安全防护怎么做
本文地址: https://pptw.com/jishu/786502.html
