Linuxroot权限管理规范_root安全实践

1次阅读

linux系统root权限管理核心是可控、可审计、可追溯,须禁用直接root登录,实施最小权限、职责分离与操作留痕,通过sudo精细授权、日志归集与定期审计保障安全。

Linuxroot权限管理规范_root安全实践

Linux系统中root权限不是“越少用越好”,而是“必须可控、可审计、可追溯”。直接以root身份登录、长期保持root shell、或随意授予sudo权限,都是高危操作。核心原则是:最小权限、职责分离、操作留痕。

禁止直接root登录,强制使用普通用户+sudo

直接通过ssh或控制台以root身份登录,会绕过所有用户行为审计。应禁用root远程登录,并限制本地控制台登录(如需保留,仅限物理终端)。

  • 编辑/etc/ssh/sshd_config,设置PermitRootLogin no,重启sshd服务
  • 确保/etc/passwd中root用户的shell为/sbin/nologin(非/bin/bash
  • 为运维人员创建独立账号,加入wheel组(RHEL/centos)或sudo组(ubuntu/debian
  • 通过/etc/sudoers精细授权,避免使用%sudo ALL=(ALL:ALL) ALL这类宽泛规则

sudo权限按需分配,禁用NOPASSWD滥用

给用户无密码执行任意命令(NOPASSWD)等于变相赋予root权限,极易被提权利用。应明确限定可执行命令、目标用户、运行环境。

  • visudo编辑sudoers,优先使用Defaults env_resetDefaults requiretty增强隔离
  • 按角色定义别名,例如:Cmnd_Alias RESTART_nginx = /bin/systemctl restart nginx
  • 授权示例:%webadmin ALL=(root) RESTART_NGINX,不允许多条命令合并或通配符
  • 敏感命令(如useraddmountiptables)必须单独审批,记录在变更工单中

关键操作强制二次确认与日志归集

即使拥有sudo权限,涉及系统配置变更、服务重启、用户管理等操作,也应触发人工确认或自动审计留痕。

  • /etc/sudoers中启用Defaults log_output,结合Defaults iolog_dir=”/var/log/sudo-io”记录命令输入输出
  • 对高危命令(如rm -rfddmkfs)设别名并包装为带提示的脚本,例如alias rm=’rm -i’(仅限交互式shell)
  • /var/log/auth.log(Debian系)或/var/log/secure(RHEL系)实时转发至集中日志平台(如elkgraylog),保留至少180天
  • 定期检查lastloglastbjournalctl _UID=0,识别异常root级活动

定期清理与权限复核机制

权限不会自动过期。未及时回收的sudo权限、残留的root SSH密钥、废弃的wheel组成员,是内部威胁的主要入口。

  • 每季度执行一次权限审计:比对getent group wheel sudo成员与HR在职名单,清理离职人员账号
  • 检查~/.ssh/authorized_keys中是否含root用户的公钥,禁止除跳板机外的任何root密钥登录
  • sudo -l -U username验证每位授权用户的实际能力,发现隐式继承或配置错误
  • 对临时提权需求(如紧急故障处理),采用时效性sudo Token(如sudo -v后限时15分钟),不延长默认超时
text=ZqhQzanResources