2014-06-15 28 views
0

我必須創建一個perl腳本,允許我從Debian添加/刪除/修改用戶。我讀過這個不推薦,但我已經被要求做,而不使用系統調用,所以不允許使用adduser/useradd。這個腳本應該檢查用戶是否已經從mysql數據庫中添加/刪除,然後將用戶添加到系統中。也許通過直接修改etc/passwd?有沒有perl模塊可以做到這一點?如何在不使用adduser/useradd的情況下在linux中管理用戶

在此先感謝

回答

0

在快速CPAN搜索後得到Unix::Passw::File。該模塊可用於讀取和操作密碼文件條目。

+0

這正是我所需要的,我已經測試過它,它完美地工作。謝謝! – Kvothe

1

在現今大多數發行版,還有一個文件/ etc/shadow文件是在/ etc/passwd文件一起使用,所以你很可能將不得不添加一行到/ etc /影子也是如此。另外,您很可能必須爲新用戶創建主目錄和組,以及其他幾個步驟。請參閱http://www.tldp.org/LDP/sag/html/adduser.html手動創建新用戶的步驟。

說完所有上述內容,我很想知道什麼是反對意見是簡單地使用從Perl腳本調用useradd。如果安全地完成(即輸入已經過消毒以防止命令行注入攻擊),這種方法似乎比嘗試通過執行上述所有步驟來添加用戶腳本perl更簡單,更不容易出錯。

+0

你好mti2935,謝謝你的回答!我也不知道爲什麼我的老師希望我這樣做,可能是安全原因,但如果你說沒有問題,那麼我也不知道。 – Kvothe

相關問題