Linux chmod与chown

网站目录权限配置不当,轻则导致网站无法访问,重则引发数据泄露。
本文针对零基础用户,从实际场景出发,讲清 chmod 和 chown 的区别、用法,以及如何为网站目录设置安全合理的权限。

理解权限与归属:chmod 和 chown 到底改什么

chmod 修改文件或目录的读写执行权限,决定谁可以读、写、执行。chown 修改文件或目录的所有者和所属组,决定文件归谁所有。
两者配合,才能让网站程序在安全的前提下正常运行。

例如,Web 服务器进程(如 Nginx 的 www-data 用户)需要对上传目录有写权限,但不应有执行权限;
而网站根目录通常只允许读取和执行,禁止写入。

关键结论:权限数字表示法中,755 表示所有者可读写执行,组和其他人可读可执行;644 表示所有者可读写,组和其他人只读。

操作前的准备工作

开始前,请确认:

  • 你已通过 SSH 登录服务器,并拥有 sudo 权限。
  • 知道网站根目录的绝对路径,例如 /www/wwwroot/yourdomain.com。
  • 了解 Web 服务器运行用户,常见的有 www、www-data、nginx。可通过 ps aux | grep nginx 或 ps aux | grep apache 查看。

如果使用宝塔面板,可在“网站”设置中查看“网站目录”和“运行用户”。

分步设置网站目录权限

以下命令请将 /www/wwwroot/yourdomain.com 替换为你的实际路径。

1. 修改所有者与所属组

假设 Web 服务器运行用户为 www,执行:

sudo chown -R www:www /www/wwwroot/yourdomain.com

-R 表示递归处理所有子目录和文件。

2. 设置目录权限为 755

目录需要执行权限才能进入,因此通常设为 755:

sudo find /www/wwwroot/yourdomain.com -type d -exec chmod 755 {} \;

3. 设置文件权限为 644

普通文件不需要执行权限,设为 644 更安全:

sudo find /www/wwwroot/yourdomain.com -type f -exec chmod 644 {} \;

4. 单独处理上传目录

如果网站有上传功能,上传目录需要写权限,可设为 775 或 777(不推荐 777)。
更安全的做法是将上传目录所有者设为 Web 用户,并设置 755,但确保 Web 用户有写权限。
例如:

sudo chown -R www:www /www/wwwroot/yourdomain.com/uploads
sudo chmod -R 755 /www/wwwroot/yourdomain.com/uploads

5. 宝塔面板操作路径

若使用宝塔面板,可进入“文件”管理,右键网站目录 -> “权限”,设置所有者为 www,权限为 755,并勾选“应用到子目录”。
对于上传目录,可单独设置权限为 775。

避坑指南:常见错误与安全建议

  • 不要随意使用 chmod -R 777:这会让所有用户都可写,极易被植入恶意脚本。
  • 避免所有者混乱:如果部分文件属于 root,Web 进程可能无法读取或写入。统一用 chown 修正。
  • 谨慎递归修改:chmod -R 和 chown -R 会作用于所有子文件,操作前最好备份或确认路径。
  • 注意 umask 影响:新创建的文件权限受 umask 控制,必要时调整 umask 值。

验证权限是否生效

执行 ls -l 查看目录和文件权限:

ls -l /www/wwwroot/yourdomain.com

输出中应显示类似 drwxr-xr-x(目录)和 -rw-r--r--(文件),所有者和组为 www。

然后访问网站,测试页面打开、文件上传、后台更新等功能是否正常。
如果出现“403 Forbidden”或“无法写入”错误,检查对应目录的权限和所有者。

可独立摘录的结论:

  • 网站目录权限推荐设置为目录 755、文件 644,所有者与 Web 服务器运行用户一致。
  • 上传目录需确保 Web 用户有写权限,但不应赋予执行权限。
  • 修改权限后,务必用 ls -l 验证,并实际测试网站功能。

常见疑问

问:chmod 和 chown 可以只用一个吗?

通常需要配合使用。
只改权限不改所有者,可能导致 Web 进程无权访问;
只改所有者不改权限,可能权限过宽或过窄。

问:为什么设置了 755 还是无法上传?

检查上传目录的所有者是否为 Web 用户,以及 PHP 等运行方式是否限制了写入。
有时需要临时开启 SELinux 或 AppArmor 的相应规则。

问:如何恢复默认权限?

如果没有备份,可重新安装或从版本控制中恢复。
建议操作前用 tar 备份目录。

如果你正在处理 Linux chmod 与 chown 的网站目录权限问题,建议先按本文步骤完整执行,再根据自己的环境微调;
遇到异常时优先回看避坑和高频问题部分。

分享到:
上一篇
Linux netstat查看网络连接
下一篇
Ubuntu安装PHP扩展,gd、curl
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意