|
藍森林 http://www.lslnet.com 2006年8月18日 15:18
在開發類webmin的遠程控制程序所遇到的困難……
類UNIX系統在遠程控制方面有先天的優勢,只要擁有相當的權限我們就可以使用telnet、ssh遠程登錄到服務器完成任意動作……
但對於不熟悉UNIX系統的人,遠程登錄似乎沒有什麼意義?鑒於此就出現了類似webmin的基於web的圖形化的遠程管理程序……
現在我們公司也需要開發一套這樣的程序,我在UNIX服務器採用的架構是apache+perl,但開發過程中我遇到了無法迴避的問題:很多UNIX程序都具有交互式的特性,比如密碼修改,磁盤空間限額等等,那麼如何使用CGIl調用UNIX交互式程序並和客戶端的web頁交互?說簡單點就是如何實現在web上對Unix密碼進行修改?如何對用戶磁盤空間限額進行管理?
望指教…… |
在開發類webmin的遠程控制程序所遇到的困難……
你問的這個問題其實你自己可以找到答案了。
答案就在webmin的源碼中。 |
在開發類webmin的遠程控制程序所遇到的困難……
沒錯,我可以去研究webmin的源代碼找到問題的解決辦法,但是這並不是最有效率的方法……
所以想問問諸位有經驗的大蝦,哪怕是探討一下也好啊…… |
在開發類webmin的遠程控制程序所遇到的困難……
好吧,我告訴你我不知道如何用perl來使用這個。可是你如果系統中安裝一個額外的工具叫expect可以解決shell命令的交互式的煩勞。
我沒有仔細看webmin的perl的源代碼,所以我不能告訴你如何做。
我作個類似的東西。我是使用php來做的:
先用php產生加密串後修改/etc/shadow中的相應行來替換原來的密碼。
我是這樣做的。但是我還是推薦你使用expect工具用perl執行shell命令來做,這樣比較好。
一般的redhat系統都安裝了expect這個工具命令。 |
在開發類webmin的遠程控制程序所遇到的困難……
我覺得這類程序用處不大。
我們一般都是用SSH連接,遠程控制。 |
在開發類webmin的遠程控制程序所遇到的困難……
expect,比較好用。
其他的就沒什麼比較好的方法了吧
不過只是修改密碼的話可以用chpasswd
不用交互,還可以批量改變
在做安裝程序的時候,我們的安裝環境沒有expect,只能用這個。 |
在開發類webmin的遠程控制程序所遇到的困難……
謝謝各位大蝦……
如果僅僅是修改系統用戶密碼,那麼調用CGI中的函數crypt,然後用生成的密碼替換/etc/shadow文件的相應位置即可……
但是當我修改samba密碼時,我就無能為力了,因為我不知道samba所採用的密碼機制……
為了解決這類交互式問題,所以我需要從本質上來找到問題的解決方案……
expect我沒有用過,我會試試,多謝各位…… |
| |