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安装并配置FTP服务器?

    在Linux系统中搭建FTP服务器是许多企业和个人用户的需求,FTP(文件传输协议)用于在客户端和服务器之间进行文件传输,尤其适合需要频繁上传下载文件的场景,本文将以常用的vsftpd(Very Secure FTP Daemon)为例,详细介绍在Linux系统上安装、配置FTP服务器的完整步骤,包括安装软件包……

    2025年9月16日
    11500
  • 如何修改Linux内核设备驱动文件权限?

    在Linux系统中,设备驱动文件通常位于/dev目录下,这些文件是内核与用户空间程序交互的接口,其权限直接影响用户或程序对设备的访问能力,修改Linux内核设备驱动文件权限需结合文件系统权限管理、设备管理机制(如udev)及内核模块参数,以下是详细操作步骤和注意事项,设备驱动文件权限基础设备驱动文件分为字符设备……

    2025年9月8日
    9700
  • Linux如何启动数据库服务器?

    在Linux环境下启动数据库服务器是系统管理和应用部署中的常见操作,不同数据库(如MySQL、PostgreSQL、MongoDB等)的启动方式和命令略有差异,但整体流程遵循“检查环境→配置服务→启动管理→验证状态”的逻辑,以下是详细操作步骤和注意事项,启动前的通用准备工作在启动数据库服务器前,需确保基础环境就……

    2025年9月21日
    10900
  • 如何让您的代码被全球开发者使用?

    将程序打包成符合规范的软件包,提交至软件仓库审核,通过后即可被用户搜索安装,并享受自动更新服务。

    2025年7月17日
    13500
  • Linux中安装软件下载的步骤有哪些?

    Linux作为开源操作系统,其软件安装方式与Windows有显著差异,核心在于通过包管理器、源码编译、容器化工具等多种方式实现高效管理,不同Linux发行版因包管理器不同,安装步骤略有差异,但整体逻辑相似,以下将详细介绍Linux中软件下载与安装的各类方法及注意事项,包管理器安装:主流发行版的首选包管理器是Li……

    2025年9月22日
    9700

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信