导读:本期聚焦于小伙伴创作的《如何设置CentOS系统以限制用户对关键系统文件的访问权限》,敬请观看详情,探索知识的价值。以下视频、文章将为您系统阐述其核心内容与价值。如果您觉得《如何设置CentOS系统以限制用户对关键系统文件的访问权限》有用,将其分享出去将是对创作者最好的鼓励。

在CentOS系统的日常管理和运维中,关键系统文件如/etc/passwd、/etc/shadow、/bin/bash等如果被普通用户随意修改或访问,很容易引发系统崩溃、数据泄露等安全问题,因此合理限制用户对这类文件的访问权限是系统管理员的基础工作。

如何设置CentOS系统以限制用户对关键系统文件的访问权限

一、基础文件权限设置

CentOS系统默认采用传统的Unix文件权限模型,通过读、写、执行三个权限位控制用户、用户组、其他用户对文件的访问,对应的命令是chmod

1. 权限位说明

文件权限分为三组,每组三个权限位:

  • 所有者权限:文件所属用户对文件的访问权限
  • 所属组权限:文件所属用户组的成员对文件的访问权限
  • 其他用户权限:既不是所有者也不属于所属组的用户对文件的访问权限

权限对应的数值为:读(r)=4,写(w)=2,执行(x)=1,三个权限位相加即可得到对应的数值权限。

2. chmod命令使用示例

假设我们要限制/etc/shadow文件,只允许root用户读写,其他用户无任何权限,操作如下:

# 查看当前/etc/shadow的权限
ls -l /etc/shadow
# 设置权限为600,即所有者读写,组和其他用户无权限
chmod 600 /etc/shadow
# 再次查看权限确认修改结果
ls -l /etc/shadow

二、修改文件所有者和所属组

如果关键系统文件的所有者或所属组配置错误,也会导致权限控制失效,此时需要使用chown命令修改文件的所有者和所属组。

1. chown命令基本语法

chown的基本用法为:chown [所有者]:[所属组] 文件路径,其中所有者和所属组可以根据需要单独修改或同时修改。

2. 操作示例

假设我们需要将/var/log/secure文件的所有者改为root,所属组改为adm,操作如下:

# 修改所有者和所属组
chown root:adm /var/log/secure
# 查看修改结果
ls -l /var/log/secure

三、使用ACL扩展权限控制

传统的Unix权限模型只能针对所有者、所属组、其他用户三类主体设置权限,无法满足更细粒度的权限控制需求,此时可以使用ACL(访问控制列表)实现更灵活的权限配置。

1. 安装ACL工具

CentOS系统默认可能没有安装ACL工具,需要先安装acl包:

yum install -y acl

2. 设置ACL权限

使用setfacl命令为用户或用户组设置针对特定文件的权限,使用getfacl命令查看文件的ACL配置。

示例:允许user1用户只读访问/etc/passwd文件,其他权限保持默认:

# 为用户user1设置/etc/passwd的读权限
setfacl -m u:user1:r /etc/passwd
# 查看ACL配置
getfacl /etc/passwd

如果需要移除user1的ACL权限,可以使用以下命令:

setfacl -x u:user1 /etc/passwd

四、注意事项

  • 修改系统关键文件权限前,建议先备份原文件,避免误操作导致系统无法正常运行
  • 不要随意给普通用户关键系统文件的写权限和执行权限,除非有明确的业务需求
  • 使用ACL配置权限后,文件权限位会显示+号,此时传统的ls -l显示的权限位可能不完整,需要结合getfacl查看完整权限
  • 修改/etc/shadow、/etc/passwd等认证相关文件的权限时,要严格按照系统默认的安全配置调整,避免引发用户认证失败问题

合理的文件权限配置是CentOS系统安全的基础防线,管理员需要根据业务需求和安全规范,定期排查关键文件的权限配置,及时修正不合理的权限设置。

CentOS文件权限管理chmodchownACL修改时间:2026-06-09 22:15:21

免责声明:​ 已尽一切努力确保本网站所含信息的准确性。网站内容多为原创整理与精心编撰,观点力求客观中立。本站旨在免费分享,内容仅供个人学习、研究或参考使用。若引用了第三方作品,版权归原作者所有。如内容涉及您的权益,请联系我们处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。AI、前端、编程、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握开发与运维所需的核心技术。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端编程,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。