news 2026/4/23 16:53:18

Linux到底为什么要设置用户:用户组?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux到底为什么要设置用户:用户组?

Linux 为什么要设置“用户:用户组”?
这不是历史遗留,而是操作系统安全模型的基石。其核心目标是:在多用户共享系统资源的前提下,实现最小权限原则(Principle of Least Privilege)和职责隔离


一、设计哲学:为什么需要身份?

▶ 1.多用户系统的本质需求
  • Unix 起源
    • 1970 年代大型机 → 多人共享一台计算机
    • 必须防止:
      • 用户 A 删除用户 B 的文件
      • 普通用户修改系统配置
  • 现代映射
    • 即使单用户桌面,进程也需隔离(浏览器 ≠ 数据库 ≠ Web 服务)
▶ 2.最小权限原则(PoLP)

“任何实体(用户/进程)只应拥有完成其任务所必需的最小权限。”

  • 用户:普通用户不能删除/bin
  • 进程:Nginx 以www-data运行,无法读取/root/.ssh

💡核心认知
用户 = 身份,用户组 = 角色,权限 = 能力边界


二、安全机制:用户与用户组如何工作?

▶ 1.文件权限三元组

每个文件有三组权限:

$ls-l /etc/passwd -rw-r--r--1root root2345Jan110:00 /etc/passwd ↑↑↑ ↑↑↑ ↑↑↑ u g o
  • u (user):文件所有者(root)→ 可读写
  • g (group):所属组(root)→ 可读
  • o (other):其他用户 → 可读
▶ 2.用户组的协作价值
  • 场景:开发团队共享代码目录
    # 创建 dev 组sudogroupadddev# 将用户加入组sudousermod-aG dev alicesudousermod-aG dev bob# 设置目录属组sudochown-R :dev /projectsudochmod-R775/project# 组内可读写执行
  • 结果
    • Alice 和 Bob 可互相修改文件
    • 其他用户无权访问
▶ 3.进程身份继承
  • 启动时绑定身份
    # PHP-FPM 配置 [www] user = deploy group = deploy
  • 运行时权限
    • 该进程只能访问deploy用户有权操作的文件
    • 即使代码被注入,攻击者也无法读取/etc/shadow

三、工程实践:为什么程序员必须理解?

▶ 1.Web 服务部署
组件用户原因
Nginxwww-data静态文件只读,无法写入 PHP 代码
PHP-FPMdeploy可写入日志/缓存,但无法修改 Nginx 配置
MySQLmysql数据目录隔离,防提权
▶ 2.Docker 容器安全
  • 最佳实践
    RUN addgroup -g 1001 app && adduser -u 1001 -G app app USER app # 避免以 root 运行
  • 价值
    • 容器逃逸后,攻击者仅获得低权限用户
▶ 3.CI/CD 权限控制
  • GitHub Actions Runner
    • 以专用用户actions运行
    • 无法访问宿主机其他用户数据

四、避坑指南

陷阱破局方案
所有文件设为 root:rootWeb 服务无法写入日志 → 500 错误
忽略用户组协作团队成员需sudo才能修改文件 → 效率低下
以 root 运行应用一旦漏洞利用 → 整台服务器沦陷

五、终极心法

**“用户不是账户,
而是信任的边界——

  • 当你创建用户
    你在划定身份;
  • 当你分配组
    你在定义协作;
  • 当你设置权限
    你在铸造安全。

真正的系统安全,
始于对身份的敬畏,
成于对细节的精控。”


结语

从今天起:

  1. Web 服务绝不以 root 运行
  2. 团队项目用用户组管理权限
  3. 容器内使用非 root 用户

因为最好的系统安全,
不是防火墙,
而是每一字节的归属自觉。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 14:35:04

YOLOE官版镜像训练成本低3倍,性价比太高了

YOLOE官版镜像训练成本低3倍,性价比太高了 在目标检测模型快速迭代的今天,开发者常面临一个两难选择:用封闭词汇的YOLOv8系列,部署快但泛化弱;用开放词汇的YOLO-Worldv2,能认新物体却要付出高昂训练代价—…

作者头像 李华
网站建设 2026/4/23 13:20:11

SGLang轻量部署方案,个人开发者福音

SGLang轻量部署方案,个人开发者福音 1. 为什么SGLang是个人开发者的理想选择 你有没有过这样的经历:想在自己的笔记本上跑一个大模型,结果发现显存不够、部署复杂、API调用绕来绕去,最后干脆放弃?或者好不容易搭好vL…

作者头像 李华
网站建设 2026/4/23 13:00:23

优化开题报告撰写流程:介绍9款AI写作辅助工具及模板修改详细指南

工具对比速览 工具名称 核心功能 适用场景 效率评分 特色优势 AIBiYe 开题报告生成/降重 中文论文全流程 ★★★★★ 国内院校适配度高 AICheck 初稿生成/格式检查 快速产出框架 ★★★★☆ 结构化输出优秀 AskPaper 文献综述辅助 外文文献处理 ★★★★ 跨…

作者头像 李华
网站建设 2026/4/23 11:32:29

告别繁琐配置!用FSMN VAD镜像快速实现电话录音分析

告别繁琐配置!用FSMN VAD镜像快速实现电话录音分析 你是否经历过这样的场景:刚拿到一通30分钟的客服电话录音,却要花整整一小时手动听、记、剪——只为了找出客户投诉的关键30秒?或者在整理销售回访音频时,面对几十个…

作者头像 李华
网站建设 2026/4/22 15:43:12

Qwen3-Embedding-0.6B使用心得:轻量级模型的大用途

Qwen3-Embedding-0.6B使用心得:轻量级模型的大用途 你有没有遇到过这样的问题:想给自己的搜索系统加个语义理解能力,但发现主流大嵌入模型动辄要 24G 显存、推理慢、部署成本高;或者想在边缘设备上跑个轻量检索服务,却…

作者头像 李华
网站建设 2026/4/23 9:59:16

基于AI预测模型与数据洞察:3月按兵不动?美联储或将延至6月开启降息

摘要:本文通过整合AI经济预测模型、市场情绪分析算法以及多源宏观经济数据,结合美联储政策动态与市场反应,深入剖析美联储降息时间表推迟至6月的原因及影响。美联储降息预期推迟,AI模型揭示背后逻辑根据外媒借助AI大数据分析技术开展的最新月…

作者头像 李华