SSHを介してのみ使用できる新しいユーザーを追加する必要があります。ユーザーが追加されると、アスタリスク(!
)ではなく感嘆符()としてシャドウファイルに追加されるため、*
「無効」になり、sshdでの使用を許可しません。
デフォルトでは、有効なパスワードなしでユーザーを追加する方法はありますか?
私はbusyboxのadduserコマンドを試してみました!
。同様に、Gentooのデフォルトのuseraddコマンドは!
。
答え1
ユーザーを追加するために暗号化されたパスワードを指定できるようです
useradd -p '*' testuser
一重引用符を失ったときにシェルがアスタリスクを拡張しようとしたことを忘れていたため、以前は機能しませんでした。
使ってもいいようです
usermod -p '*' testuser
また、既存のユーザーのパスワードをアスタリスクに設定してください。
答え2
Alpineや他のビジボックスベースのディストリビューションでも同様のadduser
動作があります。保持されていない任意のパスワードでアカウントを作成できます。
これを行うには、/dev/urandom
パスワードを生成してtextに変換し、base64
2回エコーして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