普通用户不应被剥夺 chmod/chown 使用权,因其本身无执行权限,禁用会破坏系统功能;真正安全靠 sudo 精准授权、最小权限及正确权限设置。

普通用户不能也不该被授予随意修改文件权限或所有者的权力——这不是加固,而是制造风险。Linux 权限模型本身已足够安全,关键在于正确使用,而非“彻底剥离”这类破坏性操作。
为什么不能、也不该剥夺普通用户使用 chmod/chown 的能力
chmod 和 chown 本身不带执行权限;它们是命令,是否能运行取决于用户是否有权执行这些二进制文件(通常位于 /bin/chmod、/usr/bin/chown),而这些文件默认权限是 755(所有者可读写执行,组和其他人可读可执行)。强行改为 700 或移除组/其他用户的 x 权限,会导致:
- 系统服务脚本、包管理器(如 apt/dnf)、甚至 shell 自动补全都可能失败
- sudoers 配置若依赖这些命令,将直接中断运维流程
- 普通用户无法设置自己的脚本可执行(chmod +x)、无法整理个人项目归属,反而催生绕过行为(如用 cp + cat 重建文件)
真正有效的高安防实践
安全不是靠封禁工具,而是靠精准授权与最小权限原则:
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
-
禁用 root 直接登录,统一通过普通用户 + sudo 管理,且 sudoers 中严格限制可执行的命令和参数(例如只允许
sudo chown www-data:www-data /var/www/html/*,禁止通配符或递归) -
不用 chmod 777,也不用 chmod -R 乱设:目录用 755(必须含 x 才能进入),文件用 644(配置文件绝不可执行);脚本单独加 x,用
find -type f -name "*.sh" -exec chmod 755 {} \; -
归属权比权限更重要:Web 目录应属
www-data:www-data或nginx:nginx,上传目录额外加 SGID(chmod g+s uploads/),确保新文件自动继承组 -
敏感路径设为不可继承:对
/etc/shadow、/root等,确保属主为 root、权限为 600/700,且所在分区启用 noexec/nodev/nosuid 挂载选项
若真需限制特定用户调用权限命令
应通过 sudo 精确控制,而非删改系统二进制权限:
- 编辑
/etc/sudoers(用visudo): # 禁止用户 alice 运行任何 chmod/chownalice ALL=!/bin/chmod, !/usr/bin/chown, !/bin/chown, !/usr/bin/chmod - 但更推荐反向授权:
%webadmin ALL=(root) /bin/chown www-data:www-data /var/www/html/*, /usr/bin/find /var/www/html -type d -exec /bin/chmod 755 {} \;
把 chmod 和 chown 当成扳手,不是谁都能拿去拆发动机,但修自行车时 mechanic 必须能用它。防线不在锁住工具箱,而在明确谁在什么场景下拧哪颗螺丝。

















