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が作成したばかりのユーザーのパスワードを追加する正しい方法ではないと思います。