- 使用 chmod 修改访问权限和使用 chown 更改资源所有权之间存在技术区别。
- 基于八进制和符号表示法的用户、组和其他权限表示系统。
- 实施基于最小权限原则的安全策略,以防止服务器漏洞。
如果你已经尝试过管理自己的VPS服务器或独立服务器,你就会意识到Linux系统从一开始就是为网络而设计的。正因如此,安全性至关重要,因为控制谁可以读取、编辑或执行文件,才能防止你的信息落入不法分子之手,或防止恶意进程导致整个系统崩溃。
要轻松驾驭这种环境,仅仅知道如何运行命令是不够的;您还需要理解文件所有权背后的逻辑。在 Linux 中,每个资源都属于一个用户和一个组,而调整这些权限的工具正是在此发挥作用,使我们能够在不影响应用程序运行的情况下保护系统安全。
了解许可证的构成
当你启动一个命令时 ls -l 在终端中,你会看到一串看起来像秘密代码的字符,类似这样: -rwxr-xr--别担心,这比看起来要简单。第一个字告诉我们 我们面前的是什么类型的元素?连字符表示普通文件,“d”表示文件夹(目录),“l”表示符号链接。此外还有一些不太常用的字符,例如“s”表示套接字,“p”表示管道。
以下九个字符分为三组,每组三个。第一组用于所有者(文件创建者),第二组用于所有者组,第三组用于系统上的所有其他用户。每组三个字符可以包含字母“r”(读取)、“w”(写入)和“x”(执行),如果未授予相应权限,则可以使用连字符。
每张许可证的真正含义是什么?
- 阅读(r): 在文件方面,它允许你打开并查看其中的内容。如果是文件夹,则意味着你可以…… 列出文件和子目录 包含。
- 写作(w): 它赋予你修改文件内容甚至删除文件的权限。对于目录,它允许你…… 创建、删除或重命名 其中包含的元素。
- 执行(x): 对于文件而言,权限允许脚本或程序运行。在文件夹中,此权限至关重要,因为它允许您…… 访问目录 使用命令
cd.
chmod 命令:调整访问权限
命令 chmod (更改模式)是我们用于修改这些权限的工具。它有两种使用方式:符号模式(更直观)和八进制模式(管理员更倾向于使用八进制模式,因为它速度更快)。
在 符号模式我们使用字母来表示更改影响的对象(u 代表用户,g 代表组,o 代表其他人,a 代表所有人),并使用符号“+”来添加权限,或使用“-”来移除权限。例如,如果您希望组能够写入文件,则可以使用 chmod g+w archivo.txt这是一种非常灵活的方式 根据需要调整权限 不改变其他配置。
El 八进制模式 它使用基于二进制系统的数字。每个权限都有一个值:读取为 4,写入为 2,执行为 1。将这些值相加得到一个 0 到 7 之间的数字。例如,值 7 (4+2+1) 表示完全访问权限,而值 5 (4+0+1) 表示读取和执行权限。因此,类似这样的命令 chmod 755 carpeta 赠款 所有者拥有完全控制权。 仅授予该组和其他用户的读取/执行权限。
使用 chown 和 chgrp 管理房产
有时,即使权限设置正确,文件也无法打开,因为所有者不是正确的人。这时就需要用到[相应的工具/应用]了。 chown (更改所有者)。此命令允许 更改用户和组 谁拥有该文件。最常见的语法是 chown usuario:grupo archivo.
在网络服务器上,文件属于服务器用户(例如)的情况非常普遍。 www-data 在 Apache 或 Nginx 中)以便网站可以写入特定文件夹。如果您需要将此更改应用于文件夹及其中的所有内容,则必须使用 递归选项 -R例如,运行 chown -R www-data:www-data /var/www/html.
系统中的用户和组管理
为了使以上所有内容都有意义,我们首先需要管理这些用户。在 Linux 系统中,可以使用类似这样的命令: useradd o adduser 创建账户,以及 passwd 为它们分配密钥。所有这些信息都存储在关键文件中,例如 / etc / passwd文件 (账户详情)和 / etc /阴影 (加密密码)。
使用群组可以避免逐个分配权限。 groupadd 我们创建了这个小组,并且 usermod -aG 我们向其中添加用户。通过这种方式,我们可以给予 工作团队的集体许可证 在不影响系统其他部分安全性的前提下,对特定文件夹进行操作。
汗水和特权
不建议始终以 root 用户身份操作,因为操作失误可能会导致整个系统被清除。为此,我们使用 sudo这使我们能够以超级用户权限执行命令。谁可以执行什么操作的配置信息位于该文件中。 / etc / sudoers必须始终使用命令进行编辑 visudo 为 Linux 系统中 sudo 错误排查 并避免语法错误,以免被系统拒之门外。
服务器安全和最佳实践
许多初学者常犯的一个错误是,当某个文件夹出现故障时,就将其权限设置为 777。这无疑会给攻击者敞开大门。理想情况下,你应该遵循最小权限原则:只授予完成任务所需的最低权限。
一般而言,文件的权限应设置为 644(所有者可以写入,其他人只能读取),文件夹的权限应设置为 755。对于极其敏感的文件,例如 SSH 密钥或受密码保护的配置文件 (.env),权限 600 是正确的设置,以确保除了所有者之外的任何人都无法读取其内容。
如果您在网站上遇到令人头疼的 403 Forbidden 错误,很可能是由于所有权或权限问题导致的。在进行任何重大更改之前,请确认 Web 服务器拥有这些文件的所有权,并且目录已设置执行位以允许访问。
使用 chmod 和 chown 等工具对用户、组和权限进行妥善管理,是任何 Linux 服务器的第一道防线。从使用 umask 掩码定义默认权限,到递归目录管理和严格控制 sudoers,每一项调整都有助于创建一个稳定且具有弹性的环境,抵御潜在的入侵,确保系统进程和用户能够共存,而不会损害数据完整性。
对字节世界和一般技术充满热情的作家。我喜欢通过写作分享我的知识,这就是我在这个博客中要做的,向您展示有关小工具、软件、硬件、技术趋势等的所有最有趣的事情。我的目标是帮助您以简单而有趣的方式畅游数字世界。




