Linux账号权限如何设置最安全?,最小权限原则怎样守护Linux?,你的Linux账号权限真的安全吗?

用户与组管理

  1. 创建用户

    sudo useradd -m -s /bin/bash username  # -m创建家目录,-s指定shell
    sudo passwd username                  # 设置密码
  2. 创建用户组

    sudo groupadd groupname
  3. 将用户加入组

    sudo usermod -aG groupname username   # -aG追加组(不覆盖原有组)
  4. 查看用户所属组

    groups username

文件/目录权限控制

Linux权限分为三类:

  • 所有者(u)所属组(g)其他用户(o)
  • 权限类型:读(r=4)、写(w=2)、执行(x=1)
  1. 修改文件所有权

    sudo chown username:groupname filename  # 同时修改所有者和组
    sudo chown username filename           # 仅修改所有者
    sudo chgrp groupname filename          # 仅修改所属组
  2. 设置权限值

    sudo chmod 750 directory/              # 示例:所有者rwx,组r-x,其他无权限
    • 权限值计算
      • 所有者:7 = 4(r)+2(w)+1(x)
      • 所属组:5 = 4(r)+0(w)+1(x)
      • 其他用户:0
  3. 递归修改目录权限

    sudo chmod -R 755 /path/to/dir/        # -R递归子目录

高级权限设置

  1. SUID(Set User ID)

    • 文件执行时临时获取所有者权限
      chmod u+s /usr/bin/script.sh  # 设置SUID(权限显示为rws)
  2. SGID(Set Group ID)

    • 目录中新文件继承父目录组
      chmod g+s /shared_dir/        # 设置SGID(权限显示为rws)
  3. 粘滞位(Sticky Bit)

    • 仅文件所有者可删除自己的文件(适用于公共目录)
      chmod +t /tmp/                # 设置粘滞位(权限显示为rwt)

权限管理最佳实践

  1. 最小权限原则

    • 普通用户禁止sudo权限,需操作时通过visudo单独授权:
      username ALL=(ALL) /usr/bin/apt   # 仅允许该用户使用apt命令
  2. 关键目录权限建议
    | 目录 | 推荐权限 | 说明 |
    |—|—|—|
    | /etc | 755 | 系统配置目录 |
    | /var/log | 700 | 日志目录(仅root可读) |
    | 用户家目录 | 700 | 禁止其他用户访问 |

  3. 定期审查权限

    # 查找所有SUID/SGID文件(潜在风险点)
    find / -perm /6000 -type f -exec ls -ld {} \;
    # 检查全局可写文件
    find / -perm -o+w -type f ! -path "/proc/*" -exec ls -l {} \;

安全加固措施

  1. 禁用root远程登录
    编辑/etc/ssh/sshd_config

    PermitRootLogin no
  2. 使用SSH密钥认证

    ssh-keygen -t ed25519              # 生成密钥对
    ssh-copy-id user@remote-server     # 部署公钥
  3. 配置密码策略

    • 修改/etc/login.defs
      PASS_MAX_DAYS 90    # 密码有效期
      PASS_MIN_DAYS 7     # 修改间隔
    • 安装libpam-pwquality强化密码复杂度。

故障排查

  • 权限拒绝(Permission Denied)
    1. 检查用户所属组:groups username
    2. 查看文件权限:ls -l /path/to/file
    3. 审查SELinux状态:sestatus(若启用需调整策略)

引用说明

  • 权限模型依据Linux Filesystem Hierarchy Standard
  • 安全建议参考CIS Linux Benchmarks
  • 命令文档来源Linux man pages

通过精细化权限控制,可显著降低未授权访问风险,建议结合审计工具(如auditd)定期扫描系统,确保权限策略持续有效。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9478.html

(0)
酷番叔酷番叔
上一篇 2025年7月31日 19:16
下一篇 2025年7月31日 19:45

相关推荐

  • Linux系统下运行Python文件的具体命令和方法是什么?

    在Linux系统中运行Python文件是开发者和运维人员的基本技能之一,Python作为一种解释型语言,其执行依赖于Python解释器,而Linux作为主流服务器和开发环境,提供了多种灵活的方式来运行Python脚本,本文将详细介绍Linux环境下运行Python文件的多种方法、注意事项及进阶技巧,帮助读者全面……

    2025年8月24日
    7500
  • 远程如何进入Linux系统?连接方法与操作步骤详解

    远程访问Linux系统是运维、开发和日常管理中的核心需求,无论是管理云服务器、远程开发还是维护本地设备,掌握多种远程进入Linux的方法至关重要,本文将详细介绍主流远程访问技术的原理、配置步骤及适用场景,帮助用户根据实际需求选择合适的方式,基于SSH的安全远程访问SSH(Secure Shell)是目前最主流的……

    2025年10月8日
    7000
  • Linux如何拆分文件?常用命令与操作步骤详解指南?

    在Linux系统中,拆分文件是常见的操作需求,无论是为了便于传输大文件、处理日志数据,还是将大型数据集拆分为小文件进行分析,掌握文件拆分技巧都能提升工作效率,Linux提供了多种命令行工具支持文件拆分,每种工具适用于不同场景,本文将详细介绍这些工具的使用方法及注意事项,按文件大小拆分:split 命令split……

    2025年9月16日
    7500
  • linux如何收发数据

    Linux中,可使用网络命令如ping测试连接,`s

    2025年8月18日
    8100
  • 搭建环境必备哪些工具?3步搞定!

    在Linux环境下编写C语言程序是开发系统软件、嵌入式应用和高性能工具的核心技能,以下是从环境配置到编译调试的完整指南,所有步骤均基于主流Linux发行版(如Ubuntu、Fedora、CentOS),确保内容的可复现性和安全性:安装GCC编译器终端执行:sudo apt update && s……

    2025年8月8日
    8500

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信