![從 shell 腳本驗證使用者帳戶的密碼](https://rvso.com/image/23926/%E5%BE%9E%20shell%20%E8%85%B3%E6%9C%AC%E9%A9%97%E8%AD%89%E4%BD%BF%E7%94%A8%E8%80%85%E5%B8%B3%E6%88%B6%E7%9A%84%E5%AF%86%E7%A2%BC.png)
應用程式用於多伺服器標準化腳本
在 shell 腳本中尋找一種方法來檢查作業系統帳戶 (AIX) 的密碼是否與標準化純文字密碼相符。
問題是沒有root
訪問權限,沒有c
編譯器或python
,而且我無法安裝任何其他軟體,包括expect
.
到目前為止我還沒有找到解決方案...有什麼想法嗎?
答案1
我將冒險將我之前的評論提升為答案。如果沒有 root 存取權限,並且在不破壞 AIX 系統預設安全性的情況下(透過向非 root 使用者開放密碼文件),非 root 使用者無法讀取加密的密碼文件,因此非 root 使用者將無法進行比較現有密碼的任何密碼。
我能想到的最佳選擇是嘗試使用該帳戶和假定的密碼登錄,然後檢查結果。如果您在系統本機執行,您可以透過 telnet 或 ssh 存取本機;如果您是遠端的,您將只能使用正在執行的任何外部登入方法(例如 ssh)。用 perl 或 Expect 包裝登入流程,看看它是否有效。 (如果您無法在 AIX 系統本身上安裝此類工具,請使用或從遠端系統安裝它們)。這種方法的一個小缺點是,如果您的密碼不正確,則會將該使用者的登入嘗試失敗次數增加一次。這樣做大概不會導致帳戶被鎖定,但需要注意。