当你想在你的代码中找到一个错误时,这很难;当你认为你的代码是不会有错误时,这就更难了。

linux-lighttpd与系统访问权限的同步

admin 158℃
我们正在设计一个运行在现有Linux系统上的Web服务器应用程序。我们正在使用lighttpd服务器,现在遇到了一些安全问题。 出于各种原因,我们选择了lua来开发我们的应用程序。 由于我们已有使用SSH登录到机器的现有用户,所以我们希望用户通过Web界面登录使用相同的访问级别、用户名和密码。 优选地,执行操作的用户(他们正在访问系统上的各种配置文件)应该具有对由os而不是web服务器处理的文件的访问权限。 这里有什么建议?

提前谢谢!

您的问题是,当人工用户登录时,您无法更改服务器在其下运行的用户。因此,只要您停留在服务器进程的上下文中,就不能使用操作系统级别的安全性来控制文件访问。

您可以将所有用户和web服务器放在一个组中并使用 umask 002 以确保组中的所有成员都可以访问所有文件。在lua代码中,您需要检查当前用户是否是文件的所有者,否则将拒绝该操作。

如果必须创建新文件,则需要一个suid程序,该程序可以将文件的所有者从'webserver'更改为'user'。

或者,您可以创建一个s uid程序,该程序可以更改uid并接受来自web服务器的命令。当用户登录时,用用户的uid启动程序,然后告诉它要访问哪些文件。

转载请注明:我的代码 » linux-lighttpd与系统访问权限的同步