如何通过 web/php 界面更改受保护的配置文件?

如何通过 web/php 界面更改受保护的配置文件?

我正在寻找通过 Web(特别是 PHP)界面修改位于/etc目录下的配置文件的方法。虽然读取文件没有问题(如果您正确设置了文件权限),但修改/写入非所有者和非 root 用户无法写入的文件时就会出现问题(www-data user)。

具体来说,我在寻找 dovecot 密码文件 ( /etc/dovecot/passwd),我想写入 ,以便我可以更改 dovecot 虚拟用户的密码。我有 PHP 逻辑可以读取、重新排列和准备字符串以保存到/etc/dovecot/passwd,但它无法再进一步,因为正如我提到的,www-data用户无法写入/etc目录下的任何内容。

有其他解决方法吗?

是否存在某种代理二进制文件或脚本,可以通过 PHP 触发并带有输入参数来完成这项工作?

提前致谢。

答案1

您需要添加一个间接级别:使用 php 应用程序提供数据库(文件或真实数据库),并运行实际运行特权以执行实际操作的机器人。

如果您选择使用文件,您可能会对 incron 感兴趣,它允许您在对文件进行操作时(例如,保存)运行命令。

相关内容