passwd -Sは「使用中の代替認証方式」を提供します。 /etc/shadow のパスワードは暗号化されません。

passwd -Sは「使用中の代替認証方式」を提供します。 /etc/shadow のパスワードは暗号化されません。

useraddユーティリティを使用して新しいユーザーを作成し、ユーザーを変更してパスワードを追加しました。 「代替認証方式を使用している」という意味がわかりません。意味は。また、Password set, SHA512 crypt.ステータスが更新されるようにユーザーを更新する方法もあります。

そして、この過程でパスワードが/etc/shadow暗号化されていないことがわかりました。パスワードを追加するときに何かを見逃しましたか?これはシステムの暗黙の行動でなければなりませんか?

useradd user

passwd -S user

user LK 2016-12-24 0 99999 7 -1 (Password locked.)

usermod -p "Password"

user PS 2016-12-24 0 99999 7 -1 (Alternate authentication scheme in use.)

答え1

使用するには、usermod -p暗号化されたパスワードを渡す必要があります。からman pages

-p, --password パスワード

The encrypted password, as returned by crypt(3).

暗号化されたパスワードを取得する方法はいくつかあります。たとえば、次のようにしますopenssl

openssl passwd -1 -salt xyz  yourpass

SHA512ただし、のみ使用するようにユーザーのパスワードを更新するには、まずシステムが暗号化方式を使用していることを確認passwdしてください。SHA512

2つの場所を確認する必要があります。

/etc/login.defs

ENCRYPT_METHOD SHA512

/etc/pam.d/common-password

password [success=2 default=ignore] pam_unix.so obscure sha512



 

答え2

passwdを使用してパスワードを更新すると、問題全体が解決されるようです。私はusermodが作成したばかりのユーザーのパスワードを追加する正しい方法ではないと思います。

関連情報