在开发类webmin的远程控制程序所遇到的困难……

发布于 2022-10-03 05:33:54 字数 347 浏览 25 评论 0

类UNIX系统在远程控制方面有先天的优势,只要拥有相当的权限我们就可以使用telnet、ssh远程登录到服务器完成任意动作……

但对于不熟悉UNIX系统的人,远程登录似乎没有什么意义?鉴于此就出现了类似webmin的基于web的图形化的远程管理程序……

现在我们公司也需要开发一套这样的程序,我在UNIX服务器采用的架构是apache+perl,但开发过程中我遇到了无法回避的问题:很多UNIX程序都具有交互式的特性,比如密码修改,磁盘空间限额等等,那么如何使用CGIl调用UNIX交互式程序并和客户端的web页交互?说简单点就是如何实现在web上对Unix密码进行修改?如何对用户磁盘空间限额进行管理?

望指教……

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

幸福还没到 2022-10-10 05:33:54

你问的这个问题其实你自己可以找到答案了。
答案就在webmin的源码中。

醉城メ夜风 2022-10-10 05:33:54

没错,我可以去研究webmin的源代码找到问题的解决办法,但是这并不是最有效率的方法……

所以想问问诸位有经验的大虾,哪怕是探讨一下也好啊……

风尘浪孓 2022-10-10 05:33:54

好吧,我告诉你我不知道如何用perl来使用这个。可是你如果系统中安装一个额外的工具叫expect可以解决shell命令的交互式的烦劳。
我没有仔细看webmin的perl的源代码,所以我不能告诉你如何做。
我作个类似的东西。我是使用php来做的:
先用php产生加密串后修改/etc/shadow中的相应行来替换原来的密码。
我是这样做的。但是我还是推荐你使用expect工具用perl执行shell命令来做,这样比较好。
一般的redhat系统都安装了expect这个工具命令。

蓝海 2022-10-10 05:33:54

我觉得这类程序用处不大。

我们一般都是用SSH连接,远程控制。

鸠书 2022-10-10 05:33:54

expect,比较好用。
其他的就没什么比较好的方法了吧
不过只是修改密码的话可以用chpasswd
不用交互,还可以批量改变
在做安装程序的时候,我们的安装环境没有expect,只能用这个。

傲性难收 2022-10-10 05:33:54

谢谢各位大虾……

如果仅仅是修改系统用户密码,那么调用CGI中的函数crypt,然后用生成的密码替换/etc/shadow文件的相应位置即可……

但是当我修改samba密码时,我就无能为力了,因为我不知道samba所采用的密码机制……

为了解决这类交互式问题,所以我需要从本质上来找到问题的解决方案……

expect我没有用过,我会试试,多谢各位……

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文