パスワードなしでユーザーを作成する方法は?

パスワードなしでユーザーを作成する方法は?

OS Xでは、パスワードのないユーザーがいる可能性があります。これを確認すると、対応するパスワードがdsclで表示されます*。これは、他のデータベースのユーザーと同じシステムユーザーに使用されますmysqlpgsqlこれの利点は、そのユーザーがログイン画面に表示されず、待機しないとそのユーザーとしてログインできないことですsudo

そのユーザーを削除してからいくつか試してみましたが、もう一度作成したかったのですが、できませんでした。空のパスワードを持つユーザーを確保し、パスワードを*。しかし、ユーザーが自分のログイン画面に表示されるという点で、上記と同じ効果はありません。

そのようなユーザーを作成するには?

答え1

passwd --delete <username>ユーザーを作成したら、それを実行できますadduser。その後、パスワードを入力しなくてもログインできます。

答え2

代わりにを使用してパスワードを無効にするために使用できますusermod!*

usermod -L <username>

usermodのマニュアルページから:

-L, --lock Lock a user's password. This puts a '!' in front of the encrypted password, effectively disabling the password.

答え3

たとえば、ホームディレクトリが/etc/passwdから/dev/nullで、シェルが/sbin/nologinのユーザーは、sudoコマンドで使用できますが、実際にはログインできません。

私の/etc/passwdから

tcpdump:x:104:441:added by portage for tcpdump:/dev/null:/sbin/nologin

これはXDMログイン画面でも消えることを覚えていますが、私はもうXDMを使用しないので推測です。 :-)

答え4

OSXについてはよくわかりませんが、FreeBSDでは次のものを使用できます。

pw add user mymuser -g mygroup -s /nonexistent -h -

-この-hオプションに渡される値は、pwmaster.passwdのパスワードフィールドをに設定して*ログインしないアカウントを作成するように指示します。シェルの設定は必ずしも必要ではありませんが、/etc/pw.confでシェルチェックを防ぎます。

関連情報