パスワード複雑性チェック(PAM)を無効にする

パスワード複雑性チェック(PAM)を無効にする

空のパスワードを使用してLinuxベースのシステムをインストールしました。パスワードを単純なものに変更したいのですが、passwdパスワードを単一の記号または同様のものとして使用して設定すると、「パスワードは回文です」エラーが発生します。

パスワードの複雑性チェックを無効にするには?

答え1

PAM私のシステム(ほとんどの最新のLinuxのように)が(プラグイン認証モジュール)とモジュールを使用していることを発見しましたpam_cracklibpam_cracklibパラメータに関係なく、最低6つのシンボル長が適用されるため、オフにすることが回避策です。

私が読んだ1つのリンクでは、編集とファイルについて議論しましたが、両方のpassword-acファイルが同じ内容を持っていて、それぞれの操作についての説明はありませんでした。system-ac/etc/pam.d

PAM文書を研究した後(Linux-PAMシステム管理者ガイドlinux-pam.org |PAM)、LINUXサービスの設定が/etc/pam.dそのディレクトリの別々のファイルにあることがわかりました。passwdファイルが表示され、system-ac記載されているファイル(substackキーワードとして追加)のみが見つかるため、私のシステムではsystem-ac

違いはありません(入力と拒否されたパスワードがスタックの次のモジュールに渡されないpam_cracklib optionalためです)。その行をコメントアウトすると、実行時にエラーが発生します。私は一般的な次の行にオプションがあることを確認しました(文書:モジュールが以前にスタックされたモジュールによって提供されたパスワードで新しいパスワードを設定するように強制します)。オプションを削除してその行をコメントアウトしたら、を使用して短いパスワードを設定できるようになりました。pam_cracklibpam_unixpam_cracklibpasswdpam_unixuse_authtokpam_cracklibpasswd

答え2

パスワード強度チェックを実行できる複数のPAMモジュールがあります。少なくともpam_cracklib多くのディストリビューションが付属しています。pam_passwdqc開いた壁から(たとえば、Debian にパッケージされています。)。また、一部のバージョンの一般的なファイルベースの認証モジュールには、最小パスワード長などのパスワード強度にpam_unix関連するオプションがあります。これは、新しいパスワードと古いパスワードを比較するためのいくつかのテストを実行します。 (名前は元々シャドウパッケージの「ファジー」チェックに由来していました。)minlenobscure

そのモジュールのPAM構成を確認し、そのモジュールを無効または削除する必要があります。パスワードの変更に関連するモジュールのキーワードでpassword始まる行を見つけます。構成の正確な構造はディストリビューションによって異なります。

さらに、ユーザーをLDAPまたは他のネットワークベースのシステムに保存する場合は、サーバー自体でもユーザーパスワードを要求できます。この場合、クライアントのPAM設定は関係ありません。たとえば、OpenLDAPではパスワードポリシーオーバーライドモジュール

答え3

次の行を変更してください/etc/pam.d/common-password

password requisite pam_pwquality.so retry=3

到着

password requisite pam_pwquality.so dictcheck=0 retry=3 

dictcheck=0 に設定すると、事前チェックは無視されます。

答え4

sudo apt autoremove libpam-sss

問題が解決しました。

関連情報