Linux账号安全治理教程_权限收敛与审计

14次阅读

linux账号权限须遵循最小化原则:普通用户禁用root权限,提权仅限sudo;禁用非必要系统账号并锁定shell与密码;强化密码策略与多因素认证;启用操作审计与日志集中留存。

Linux账号安全治理教程_权限收敛与审计

账号权限最小化原则

linux系统中每个账号的权限必须严格遵循“最小必要”原则。普通用户不应拥有root权限,临时提权应通过sudo而非直接切换root。检查账号权限的第一步是运行:
sudo -l -U username —— 查看该用户被允许执行的sudo命令
groups username —— 查看所属用户组,特别注意是否在red”>wheelsudodocker等高危组中

禁用无用账号与默认账户

系统安装后常残留ftpsyncgames等非必要系统账号,它们shell通常设为/bin/false/usr/sbin/nologin,但仍有潜在风险。建议统一锁定:

  • sudo usermod -s /usr/sbin/nologin username —— 禁止登录shell
  • sudo usermod -L username —— 锁定密码(在/etc/shadow中加!前缀)
  • 对确认废弃的账号,直接删除:sudo userdel -r username

特别注意:不要删除rootdaemonsys等核心系统账号,仅调整其shell和密码状态。

密码策略与多因素加固

仅靠密码已不足以保障安全。需组合使用以下措施:

  • 启用PAM密码复杂度校验:编辑/etc/pam.d/common-password,添加行:
    password requisite pam_pwquality.so retry=3 minlen=12 difok=3 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
  • 设置密码有效期:sudo chage -M 90 -m 7 -W 7 username(90天过期,7天前警告)
  • 对关键运维账号,部署ssh密钥+YubiKey或TOTP(如libpam-google-authenticator),禁用密码登录:
    /etc/ssh/sshd_config中设PasswordAuthentication no,重启sshd

操作行为审计与日志留存

权限治理必须配套可追溯的审计能力。重点配置以下日志源:

  • /var/log/auth.logdebian/ubuntu)或/var/log/secure(RHEL/centos):记录所有sudo、su、SSH登录事件
  • 启用命令执行记录:在/etc/bash.bashrc或用户~/.bashrc中添加:
    export PROMPT_COMMAND=’RETRN_VAL=$?;logger -p local6.info “$(whoami) [$$] $(history 1 | sed “s/^[ ]*[0-9]+[ ]*//”) [$RETRN_VAL]”‘
  • 集中收集日志:用rsyslog或journalctl将auth日志转发至SIEM系统,保留至少180天

定期用sudo ausearch -m USER_CMD -ts today(需启用auditd)或grep “sudo:” /var/log/auth.log抽查高危操作。

text=ZqhQzanResources