所以我想限制Apache只更改某个文件夹和所有子目录的权限,所以这是我在sudoers文件中
apache ALL= (ALL) NOPASSWD: /bin/chmod -R [g+ws] /var/www/sites/[az]+
但是这似乎并不奏效。 我确定我可以通过删除子文件夹的限制来实现它,但这似乎很危险,因为这会给潜在的黑客无限制访问。
那么有没有办法限制Apache只更改“网站”文件夹内的文件和文件夹,或者我坚持给无限访问chmod / chown?
使用这种方法有没有什么大的安全漏洞?
将chmod命令作为一个只能由root运行的shell脚本,然后允许该命令在sudo中运行可能会更好。
好吧,显然这并没有使用我期待的全部正则expression式,一个普通的明星做了这个诀窍:
apache ALL= (ALL) NOPASSWD: /bin/chmod -R [go]+ws /var/www/sites/*
这是非常危险的 它会在您的服务器上打开漏洞。 如果用户设法运行chmod -R g + w /var/www/sites/../../../../etc/shadow,会发生什么?