如何更改密碼約束

如何更改密碼約束

今天,我嘗試使用 passwd 更改實驗室伺服器(SUSE)上的密碼,並收到錯誤訊息,指出我的密碼“基於字典單字”,但事實並非如此。我想更改和調整設定密碼的這些約束和限制(我是管理員),並且想知道如何做到這一點?

更新:在我的 /etc/security/pam_pwcheck.conf 中找到這一行:

password:       nullok use_cracklib

有什麼辦法可以使它只是警告這一點而不是阻止我設定密碼?

更新 2:也在 /etc/pam.d/common-password 中發現了這一點:

password required       pam_pwcheck.so  nullok
password required       pam_unix2.so    nullok use_authtok

如果我刪除 use_cracklib 參數,我就會刪除該檢查。我嘗試添加:

password optional       pam_cracklib.so

但這沒有幫助。我已經禁用了 crashlib 功能,但現在我什至沒有收到警告。

更新3:

試過這個(/etc/pam.d/common-password):

password optional pam_pwcheck.so nullok 
password required pam_unix2.so nullok use_authtok 

和(/etc/security/pam_pwcheck.conf):

password: use_cracklib nullok 

然而,這並沒有達到預期的效果,我仍然不能忽略這個警告。

答案1

使用password optional pam_cracklib.so不會對你有幫助。你需要password optional pam_pwcheck.so在那裡放一個,這樣它實際上就會產生一些效果。如果它後面跟著一行pam_unix.so,它應該按照你想要的方式工作。

答案2

嗯,這取決於系統身份驗證配置。您執行的是哪個版本的 SuSE?

在我的 SuSE (10.1) 上,身份驗證是透過 PAM 處理的,就像幾乎所有現代 Linux 發行版一樣。在那裡,身份驗證是透過 /etc/pam.d/ 中的檔案配置的。

每個“服務”有一個文件。您對 /etc/pam.d/passwd 感興趣,它在我的系統上引用(透過包括公共密碼)PAM 模組pam_pwcheck。這是執行密碼法規的模組。請參閱man pam_pwcheck如何配置它。

如果您有不同的 PAM 配置,您可能會使用不同的機制,但基本概念是相同的。

答案3

來自 passwd 手冊頁:

然後,測試密碼的複雜度。作為一般準則,密碼應包含 6 到 8 個字符,其中包括以下每一組中的一個或多個字符:
 · 小寫字母
 · 數字 0 到 9
 · 標點符號

在 Sun Solaris 上,可以透過 /etc/defaults/passwd [1] 控制該行為。

另外,在我的 Debian 系統上有一個 /etc/login.defs 文件,它可以有 PASS_MIN_LEN 選項,儘管 login.defs 文件的手冊說它不再被 passwd 使用並指向 /etc/pam.d/passwd。

我不知道透過 /etc/pam.d/passwd 來配置此行為的方法。

  1. http://www.unix.com/sun-solaris/30617-password-complexity-check.html

答案4

另一個選擇是使用破解庫。這文章應該給你一些指示。

相關內容