空白のパスワードでLinuxベースのシステムをインストールしました。パスワードを単純なものに変更したかったのですが、passwd
を使用してパスワードを単一の記号のようなものに設定すると、「パスワードは回文である」というエラーが発生しました。
パスワードの複雑性チェックを無効にする方法は?
私のシステム(ほとんどの最新のLinuxと同様)がPAM
(プラグ可能な認証モジュール)と_pam_cracklib
_モジュールを使用していることを知りました。 _pam_cracklib
_はパラメーターに関係なく6シンボルの最小長を強制するので、解決策はそれをオフにすることです。
私が読んだ1つのリンクでは、_password-ac
_内の_system-ac
_および_/etc/pam.d
_ファイルの編集について説明しました。両方のファイルの内容は同じで、それぞれの役割についての説明はありませんでした。
PAM
docs( The Linux-PAM System Administrators 'Guide | linux-pam.org )を調べたところ、LINUXサービスのPAM
configsが、別のファイルの_/etc/pam.d
_ディレクトリにあることがわかりました。 passwd
ファイルを確認したところ、_system-ac
_ファイルのみ(substack
キーワードで追加)と記載されていたため、システムでは_system-ac
_のみを編集する必要がありました。
_pam_cracklib
_ optional
を作成しても違いはありませんでした(_pam_cracklib
_が入力および拒否されたパスワードをスタックの次のモジュールに渡さなかったためと思われます-_pam_unix
_)および_pam_cracklib
_のコメント行がpasswd
実行中のエラー。通常の_pam_unix
_を含む次の行にはオプション_use_authtok
_があったことに注意しました(ドキュメント:以前にスタックされたモジュールによって提供されたものに新しいパスワードを設定するようにモジュールを強制します)。そのオプションを削除し、_pam_cracklib
_で行にコメントを付けた後、passwd
で短いパスワードを設定できるようになりました。
パスワード強度チェックを実行できるPAMモジュールがいくつかあります。少なくとも pam_cracklib
は多くのディストリビューションに付属しており、 pam_passwdqc
Openwallから( 例えばDebianにパッケージ化 )。また、通常のファイルベースの認証モジュールの一部のバージョンpam_unix
パスワードの強度に関連するオプションがあります。たとえば、最小パスワード長のminlen
や、新しいパスワードを古いパスワードと比較するためのテストを行うobscure
などです。 (名前は「元のシャドウパッケージの「あいまいな」チェック」に由来します。)
そのようなモジュールがないかPAM設定を確認し、それらを無効にするかアンインストールする必要があります。パスワードの変更に関連するモジュールのキーワードpassword
で始まる行を探します。構成の正確な構造は、ディストリビューションによって異なる場合があります。
また、ユーザーがLDAPなどのネットワークベースのシステムに保存されている場合、サーバー自体がユーザーパスワードの要件を持つことは不可能ではありません。この場合、クライアントのPAM構成は関係ありません。例えば。 OpenLDAPには パスワードポリシーオーバーレイモジュール があります。