首页主机资讯Ubuntu系统sqladmin安全设置指南

Ubuntu系统sqladmin安全设置指南

时间2025-12-04 08:41:03发布访客分类主机资讯浏览538
导读:Ubuntu 上 sqladmin 安全设置指南 一 适用对象与总体思路 本指南面向在 Ubuntu 上部署或使用名为 sqladmin 的数据库管理工具或数据库管理员账户的场景,覆盖系统账户与登录安全、数据库最小权限、服务与网络加固、备...

Ubuntu 上 sqladmin 安全设置指南

一 适用对象与总体思路

  • 本指南面向在 Ubuntu 上部署或使用名为 sqladmin 的数据库管理工具或数据库管理员账户的场景,覆盖系统账户与登录安全、数据库最小权限、服务与网络加固、备份与审计等关键面。
  • 若你指的是 Web 管理工具(如 phpMyAdmin、Adminer 或名为 SQLAdmin 的第三方工具),同样适用“最小暴露面 + 强认证 + 加密传输”的原则。

二 系统账户与登录安全

  • 创建专用管理用户并限制权限
    • 创建系统管理用户:sudo adduser sqladmin,按需加入 sudo 组:sudo usermod -aG sudo sqladmin
    • 目录最小化权限:sudo chmod 700 /home/sqladmin,必要时用 setfacl 做细粒度授权。
  • 强化 SSH 访问
    • 禁用 root 登录:编辑 /etc/ssh/sshd_config,设置 PermitRootLogin no
    • 启用公钥登录:设置 PubkeyAuthentication yes,禁用密码登录 PasswordAuthentication no(确保已有可用密钥再切换)。
    • 可选:更改默认端口、限制可登录用户、会话保活(如 ClientAliveInterval/ClientAliveCountMax)。
  • 账户与密码策略
    • /etc/login.defs 设置 PASS_MIN_DAYS 7PASS_WARN_AGE 7,强制周期更换与告警。
    • 限制 su 使用:在 /etc/login.defs 启用 SU_WHEEL_ONLY,并在 /etc/pam.d/su 中限制仅 wheel 组可 su 到 root。
  • 防护与自动更新
    • 部署 Fail2Ban 防暴力破解,配合 UFW 仅放行必要端口(如 22/80/443 或工具端口)。
    • 启用无人值守安全更新:sudo apt install unattended-upgrades & & sudo dpkg-reconfigure unattended-upgrades,保持系统与组件补丁及时。

三 数据库 sqladmin 账户与最小权限

  • 原则:遵循最小权限,避免使用 rootSUPERUSER 远程连接;为应用与运维分别创建账户;必要时采用主机白名单与专用连接账号。
  • MySQL 示例(按需收紧到指定库/主机)
    • 创建本地管理账户:
      • CREATE USER ‘sqladmin’@‘localhost’ IDENTIFIED BY ‘StrongPassword!’;
      • GRANT ALL PRIVILEGES ON . TO ‘sqladmin’@‘localhost’ WITH GRANT OPTION;
      • FLUSH PRIVILEGES;
    • 创建远程受限账户(示例仅允许内网网段 192.168.1.0/24):
      • CREATE USER ‘sqladmin’@‘192.168.1.%’ IDENTIFIED BY ‘StrongPassword!’;
      • GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON your_db.* TO ‘sqladmin’@‘192.168.1.%’;
      • FLUSH PRIVILEGES;
  • PostgreSQL 示例(优先使用角色分离与最小权限)
    • 创建可登录管理角色(避免使用 SUPERUSER,除非确有需要):
      • CREATE ROLE sqladmin WITH LOGIN PASSWORD ‘StrongPassword!’ CREATEDB CREATEROLE INHERIT;
    • 对指定库授予全权(示例库为 your_db):
      • GRANT ALL PRIVILEGES ON DATABASE your_db TO sqladmin;
      • \c your_db
      • GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO sqladmin;
      • GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO sqladmin;
      • GRANT ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA public TO sqladmin;
    • 如需面向特定应用账号,仅授予其所需对象与操作权限,避免使用 SUPERUSER。

四 服务与网络加固

  • 防火墙与端口
    • 仅放行必要端口:sudo ufw allow OpenSSHsudo ufw allow 80,443/tcp;若工具监听 8080,仅在内网或受控网段开放,并尽快迁移至 443/TLS
  • Web 管理工具安全(如 phpMyAdmin、Adminer 或名为 SQLAdmin 的工具)
    • 更改默认端口与路径,启用 HTTPS/TLS,设置强管理员口令与登录失败锁定。
    • 通过反向代理(如 Nginx/Apache)加一层认证与速率限制;限制来源 IP;禁用目录浏览与版本信息暴露。
  • 系统加固
    • 禁用不必要的服务与端口,减少攻击面;必要时启用 AppArmor/SELinux 对服务进行强制访问控制。

五 备份与审计监控

  • 备份策略
    • 定期逻辑/物理备份;示例:使用 tar 归档关键目录(排除 /dev、/proc、/sys、/tmp、/run、/mnt、/media、/lost+found 等),并妥善异地/离线保存与校验。
  • 审计与监控
    • 部署 Logwatch 进行日志汇总与异常巡检;使用 Nagios/Zabbix 等做可用性监控与阈值告警。
    • 持续关注系统与安全公告,及时修补数据库与组件漏洞。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu系统sqladmin安全设置指南
本文地址: https://pptw.com/jishu/763193.html
Ubuntu系统sqladmin资源占用多少 Ubuntu系统sqladmin配置文件在哪

游客 回复需填写必要信息