config.php 文件的最佳八进制权限是啥?
Posted
技术标签:
【中文标题】config.php 文件的最佳八进制权限是啥?【英文标题】:What is the best octal permission for a config.php file?config.php 文件的最佳八进制权限是什么? 【发布时间】:2021-12-16 06:03:00 【问题描述】:假设我有一个 LAMP 堆栈项目,托管在 Linux 服务器上,上面只有一个用户的 cPanel。我应该为设置了密码和 API 密钥的文件设置什么权限?
【问题讨论】:
【参考方案1】:对你来说最好的权限是644。这意味着所有者(将部署代码的用户)具有读写权限,组和其他用户只有读取权限。如果您的用户与 web-server 用户(www-data、apache2 等)在同一个组中并且文件归该组所有,您可以将权限降低到 640,使用此配置所有其他用户都没有权限读取/写入/执行文件。
【讨论】:
谢谢,听起来不错。我的网页有一个单独的问题。基本上,因为 Javscript 正在调用 config.php 文件,但它找不到它。Uncaught (in promise) SyntaxError: Unexpected end of JSON input Promise.then (async) (anonymous) @ script.js:73
这是调用服务器上 PHP 文件的行:fetch("config.php") ...
别管这个问题与权限无关,它缺少一个 PHP 代码来回显公钥
我不同意。敏感信息不应该是世界和组可读的。 644 肯定不是“最好的”
这通常不是真的。您错过了 TS 可以通过 CPanel 访问,并且您的建议是基于 TS 可以访问 ssh 并且 acl 安装在服务器上的假设。因此,您至少有一个用户(代表网络服务器运行的用户,而您不是该用户)并且该用户应该有权访问配置。 640(如果用户不在 www-data 组中,则为 644)就足够了。如果我们谈论安全方面:是的,使用 acl 会更安全,但也不是最佳选择。【参考方案2】:
应该是0600,意思是只有拥有者可以读写。如果所有者以外的其他帐户需要阅读它,请使用 setfacl。
setfacl -m u:other:rwx
或者
setfacl -m u:other:r
一般来说,您不希望敏感信息被他人阅读。
【讨论】:
这通常不是真的。您错过了 TS 可以通过 CPanel 访问,并且您的建议是基于 TS 可以访问 ssh 并且 acl 安装在服务器上的假设。因此,您至少有一个用户(代表网络服务器运行的用户,而您不是该用户)并且该用户应该有权访问配置。 640(如果用户不在 www-data 组中,则为 644)就足够了。如果我们谈论安全方面:是的,使用 acl 会更安全,但也不是最佳选择。以上是关于config.php 文件的最佳八进制权限是啥?的主要内容,如果未能解决你的问题,请参考以下文章