我想建立一个基于网络的前端来管理/管理我的Linux盒。例如,我希望能够添加用户,管理文件系统等诸如此类的事情。把它看作是一个cPanel克隆,但更多的是用于系统管理,而不是web管理。
我正在考虑创建一个运行在我的机器上并执行所有系统级别任务的服务。这样,我就可以清晰地将基于web的前端和实际逻辑分离开来。服务器页可以通过这种方式调用我的专用服务器或队列任务。不过,我不确定这是否是最好的办法。
我想另一个重要的问题是,在构建这样的东西时,我将如何处理安全性?
PS:这只是一个宠物项目和学习经验,所以我不感兴趣的现有解决方案,做类似的事情。
发布于 2008-11-29 03:56:42
让专门的服务守护进程作为一个独立的用户运行--让我们称之为“managerd”。设置您的/etc/sudoers文件,以便“managerd”可以执行您希望它能够在没有密码的情况下作为root运行的各种命令。
让web服务器删除包含要在模式为'770‘的目录中运行的命令的“触发器”文件,其中只有web服务器用户和'managerd’是该目录的成员。在执行命令之前,确保“managerd”验证文件是否具有正确的所有权。
确保web接口侧被锁定--只在HTTPS上运行它,需要身份验证,如果可能的话,输入特定于IP的ACL,这样您就只能预先从已知的位置访问它。
发布于 2008-11-29 00:39:48
对于“根源”问题,您的解决方案似乎是一个非常明智的解决方案。
有几项建议:
将“专门化服务”绑定到本地主机的externally.
https://stackoverflow.com/questions/326954
复制相似问题