我在 VPS 上运行了一个小型网站。我将其用作Nginx
Web 服务器(LEMP
配置简单)。但现在我遇到了一个问题:我有一个小型 php 脚本,需要能够不时地写入日志...并且为了使它正常工作,我www-data
在/var/www/html/
ren chmod -R 755 /var/www/html
as之后授予了所有者权限root
。但是,一旦我将所有者权限授予 www-data 用户 over /var/www/html/
,并且我显然能够运行必须写入一些日志的 php 脚本,我开始问自己:这难道不会是一个巨大的安全问题吗?
那么,让www-data
所有者拥有/var/www/html/
安全问题吗?
如果是,你能告诉我原因以及该怎么办吗?
谢谢你!
答案1
那么,让 www-data 成为所有者是否存在
/var/www/html/
安全问题?
不,您也可以使用“group” www-data
。
但这是……
chmod -R 755 /var/www/html
通常你需要 2 个命令:1 个用于目录,1 个用于文件。将每个文件都设置为可执行文件是不好的。你应该使用这个:
find /var/www/html -type d -print0 | xargs -0 chmod 750
find /var/www/html -type f -print0 | xargs -0 chmod 640
- 目录的执行权限。
- 文件的读取权限。
- 禁止向其他人授予任何权限(如果网站的设计存在缺陷,就会出现错误并向您发出警报
access.log
)。
如果您确实需要执行您的脚本,您可以设置该脚本本身而不是整个网站。
您还可以使用php-cli
(或者php-cgi
如果是 cgi)从命令行执行 php 脚本,而无需将脚本本身设置为可执行文件。