Linux账号安全管理指南_Linux限制用户访问权限步骤

3次阅读

linux账号安全核心是最小权限原则,需清理非必要账号、限制登录时段与会话数、用ACL精细控制文件权限、以sudo替代su并审计日志。

Linux账号安全管理指南_Linux限制用户访问权限步骤

Linux账号安全和访问权限控制,核心是“最小权限原则”——只给用户完成任务必需的权限,不多也不少。实际操作中,重点不在功能砌,而在策略清晰、配置可靠、日志可查。

清理与锁定非必要账号

系统默认会创建大量服务账户(如daemon、ftp、mail等),它们通常不需要登录能力。放任不管可能成为攻击入口。

  • 把非交互式用户的shell设为/sbin/nologin/usr/sbin/nologinusermod -s /sbin/nologin username
  • 长期不用的账号直接锁定密码:passwd -l username(会在/etc/shadow中密码字段前加!
  • 确认关键账号文件不可被普通用户修改:chattr +i /etc/passwd /etc/shadow(需root执行;解锁用chattr -i

限制用户能做什么:从登录到命令执行

光管“能不能登”,不如管“登上去能干啥”。这需要分层控制:

  • 登录时段控制:编辑/etc/security/time.conf,例如
    sshd;*;devuser;!Al0900-1700 → devuser只能在工作时间通过SSH登录
  • 并发会话数限制:在/etc/security/limits.conf中添加
    devuser hard maxsyslogins 2 → 同一用户最多2个活跃登录会话
  • 命令历史与自动登出
    设置HISTSIZE=50TMOUT=600(写入/etc/profile),让终端闲置10分钟自动退出,且不保留过多命令记录

精细控制目录与文件访问

传统rwx权限太粗,尤其多人协作时。ACL(访问控制列表)是更实用的选择:

Linux账号安全管理指南_Linux限制用户访问权限步骤

万相营造

阿里妈妈推出的ai电商营销工具

Linux账号安全管理指南_Linux限制用户访问权限步骤 168

查看详情 Linux账号安全管理指南_Linux限制用户访问权限步骤

  • 启用ACL支持(多数现代发行版默认开启),检查挂载选项:
    mount | grep “$(df . | tail -1 | awk ‘{print $1}’)” | grep acl
  • 给特定用户授予某目录的读写权限,不影响原属组设置:
    setfacl -m u:reporter:r-x /var/log/app/
  • 设默认ACL,让该目录下新建文件自动继承权限:
    setfacl -d -m u:reporter:r-x /var/log/app/

用sudo替代su,明确授权边界

su容易导致权限泛滥,sudo则可精确到命令级,并全程留痕:

  • 禁止普通用户直接su到root,只允许通过sudo执行指定操作
  • visudo编辑/etc/sudoers,例如:
    %ops ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart nginx, /bin/journalctl -u nginx
  • 所有sudo操作默认记录在/var/log/secure/var/log/auth.log,定期检查异常调用

基本上就这些。不复杂但容易忽略的是:每改一项,都建议先在测试账号上验证,再批量应用;所有关键配置变更,最好配合auditd或至少开启PAM日志,确保行为可追溯。

text=ZqhQzanResources