パスワードはありませんが無効になっていない新しいユーザーを追加する

パスワードはありませんが無効になっていない新しいユーザーを追加する

SSHを介してのみ使用できる新しいユーザーを追加する必要があります。ユーザーが追加されると、アスタリスク(!)ではなく感嘆符()としてシャドウファイルに追加されるため、*「無効」になり、sshdでの使用を許可しません。

デフォルトでは、有効なパスワードなしでユーザーを追加する方法はありますか?

私はbusyboxのadduserコマンドを試してみました!。同様に、Gentooのデフォルトのuseraddコマンドは!

答え1

ユーザーを追加するために暗号化されたパスワードを指定できるようです

useradd -p '*' testuser

一重引用符を失ったときにシェルがアスタリスクを拡張しようとしたことを忘れていたため、以前は機能しませんでした。

使ってもいいようです

usermod -p '*' testuser

また、既存のユーザーのパスワードをアスタリスクに設定してください。

答え2

Alpineや他のビジボックスベースのディストリビューションでも同様のadduser動作があります。保持されていない任意のパスワードでアカウントを作成できます。

これを行うには、/dev/urandomパスワードを生成してtextに変換し、base642回エコーしてadduserコマンドにパイプして(flagsなしで-D)、ユーザーの作成中にパスワードを入力して確認できるようにします。

pw="$(head -c 20 /dev/urandom | base64 | head -c 10)"
( echo "$pw"; echo "$pw" ) | adduser foo

別のオプションは、ユーザーを作成した後にファイルからを置き換えることです!*/etc/shadow

adduser -D foo
sed -i -e "s/^foo:!:/foo:*:/" /etc/shadow

関連情報