CentOSインスタンスでRhodeCodeサーバーとCeleryデーモンを実行する非特権ユーザーを作成したい。これの受け入れられた定義は、ホームディレクトリがなく、ログインが無効で、シェルアクセスがないと思いますか?adduserのmanページを見ると、これを行うための直感的な方法がわかりません。任意の提案をいただければ幸いです。ありがとう。
CentOSインスタンスでRhodeCodeサーバーとCeleryデーモンを実行する非特権ユーザーを作成したい。これの受け入れられた定義は、ホームディレクトリがなく、ログインが無効で、シェルアクセスがないと思いますか?adduserのmanページを見ると、これを行うための直感的な方法がわかりません。任意の提案をいただければ幸いです。ありがとう。
回答:
serverfaultからの2つの回答をここにリンクする必要があると思います。
基本的に-r
は「アカウントをシステムとして設定する」、「有効期限なし」などを意味し、完全なスペルは次のようになります。
useradd -s /bin/false -r <username>
または
useradd -s /usr/sbin/nologin -r -M -d /dev/null <username>
または類似 )
NB。sambaなどの場合、このユーザーにパスワードを提供することもでき/usr/sbin/nologin
、/etc/shells
次のように追加することもできます。
# `which nologin` >> /etc/shells
NB(2):OrangeDogのコメントに従って:-r
実際にはを意味する-M
ため、-M
厳密に必要というわけではありません。
PS。そして、はい、で同じものを探してserverfaultの、askubuntu -ここに-私には少し奇妙に思えます。たとえば、すべての stackoverflowサイトでメタ検索を実行する方法はありますか?
/sbin/nologin
で使用したことがあり/etc/passwd
ます。では、どのようにしてサービスを開始するのでしょうか?
-d
無視されていません。実際にテストに煩わされたレビュアーがいないことは奇妙です)
あなたは-r
オプションを探しています。
adduser -s /sbin/nologin -M rhodecode
が、-rオプションが探しているようです。-rと私がしたことの違いは何ですか?申し訳ありませんが、私はシェルスクリプトの初心者です。
useradd(8)
作成されたユーザーへの影響を確認するには、manページを参照することをお勧めします。
/etc/passwd
には(/home/username
デフォルトで)ホームディレクトリエントリがあります。もちろん、ディレクトリは存在しませんが、それはちょっと変です)