
行為:
# newusers
username::1002:1002::/home/username:/bin/bash
^D
No password supplied
No password supplied
No password supplied
newusers: (user username) pam_chauthtok() failed, error:
Authentication token manipulation error
newusers: (line 1, user username) password not changed
パスワードなしでユーザーを追加します(のハッシュ「!」を使用/etc/shadow
)。
行為:
# newusers
username:*:1002:1002::/home/username:/bin/bash
^D
パスワードが「*」のユーザーを追加します(一部のハッシュを含む/etc/shadow
)。
ただし、必要なのは、.txtファイルにハッシュ "*"を持つ "username"ユーザーを追加することです/etc/shadow
。
どうすればいいですか?
答え1
パスワードフィールドを空白にしてください。 newusers
「提供されたパスワードなし」について繰り返し文句を言い、パスワードを変更することはできませんが、!
ユーザーはシャドウパスワードフィールドに無効なパスワードで生成されます。
username::1002:1002::/home/username:/bin/bash
変える:
username:*:1002:1002::/home/username:/bin/bash
たとえば、
# echo "username::10000:10000::/home/username:/bin/bash" | newusers
No password supplied
No password supplied
No password supplied
newusers: (user username) pam_chauthtok() failed, error:
Authentication token manipulation error
newusers: (line 1, user username) password not changed
# tail -1 /etc/passwd
username:x:10000:10000::/home/username:/bin/bash
# tail -1 /etc/shadow
username:!:16713:0:99999:7:::
答え2
ユーザー配置を追加したら、次のコマンドを使用して各ユーザーのロックを解除できます。
usermod -p <username> '*'
答え3
「*」または「!」をパスワードで送信すると、すべてのユーザーがその特定のパスワードを設定できるようになります。 @casが言及したことは、/etc/shadow
パスワード自体の内容ではなくパスワードの内容を考慮するときに有効です。パスワードはデフォルトでnewusers
暗号化されているため、この方法は機能しません。
パスワードを強制的に無効にする方法は、暗号化を強制しないことです。
echo 'username:*:16713:0:99999:7:::' > users
その後、暗号化を無効にします。
newusers -c NONE users
これを確認する最善の方法は、生成された項目を調べることです/etc/shadow
。
tail /etc/shadow