パスワードなしでユーザーを作成する良い方法は何ですか?パスワードなしとは、アカウントを意味します。これは、su/Sudoコマンドを使用するrootアカウントでのみ使用可能です(ApacheまたはNginxで使用される「nobody」ユーザーなど)。
/ etc/shadowファイルのパスワードフィールドに*を入力すると機能することを読みましたが、useraddコマンドでそれを行う方法があるかどうか知りたいのですが。
私はそうすることを考えました:
useradd my_new_user -s /sbin/nologin -p '*'
しかし、useraddコマンドをこの方法で使用できるかどうかはわかりません。私はそれについての参照を見つけていません。
これは、あなたが説明した方法で機能します(もちろん、/bin/bash
の代わりに任意のシェルを指定できます):
root# useradd temp_test1 -s /bin/bash -p '*'
root# su temp_test1
temp_test1#
上記のuseradd
コマンドを実行した後、次のエントリが/etc/shadow
ファイルにあります。
temp_test1:*:15842:0:99999:7:::
John Smith Optionalの回答を使用する場合、以下が機能します。
root# useradd temp_test2 -s /sbin/nologin
root# su -s /bin/bash temp_test2
temp_test2#
編集:違いは、使用可能なシェルを指定しない限り、シェルが/sbin/nologin
として指定されているアカウントにsu
できないことです。 su
コマンドを発行する:
root# useradd temp_test3 -s /sbin/nologin
root# su temp_test3
This account is currently not available.
root#
(CentOS 6.4でテスト-さまざまなディストリビューションで動作するはずです)。
useradd my_new_user -s /sbin/nologin
パスワードが指定されていない場合、パスワードは作成されず、アカウントは無効になります。