何人かのシステムユーザがシェルとして/ usr / bin / falseを持っているのはなぜですか?
Linuxシステムを調べ始めると、たとえば/ usr / bin / falseのように、混乱したり予期しないことが起こる可能性があります。それはなぜそこにあり、その目的は何ですか?本日のSuperUser Q&Aの投稿には、興味をそそられる読者の質問に対する答えがあります。.
本日の質疑応答セッションは、コミュニティ主導のQ&A Webサイトのグループである、Stack Exchangeの下位区分であるSuperUserの好意により提供されます。.
質問
SuperUser読者user7326333は何人かのシステムユーザが彼らのシェルとして/ usr / bin / falseを持っている理由を知りたがっています:
何人かのシステムユーザはなぜ彼らのシェルとして/ usr / bin / falseを持っているのですか?どういう意味ですか?
何人かのシステムユーザはなぜシェルとして/ usr / bin / falseを持っているのですか?
答え
SuperUserの貢献者duDE、Toby Speight、そしてbbaassssiieeが私たちに答えを持っています。まず、duDE:
これは、ユーザーがシステムにログオンするのを防ぐのに役立ちます。特定のタスクにはユーザーアカウントが必要な場合があります。それにもかかわらず、だれもコンピュータ上のこのアカウントと対話できないはずです。これらは、一方ではシステムユーザーアカウントです。一方、これはFTPまたはPOP3アクセスが可能なアカウントですが、直接のシェルログインではありません。.
/ etc / passwdファイルをよく見ると、/ bin / falseコマンドが多くのシステムアカウントのログインシェルとして見つかります。実際、falseはシェルではありませんが、何もしないでエラーを知らせるステータスコードで終了するコマンドです。結果は簡単です。ユーザーがログインするとすぐにログインプロンプトが再び表示されます.
Toby Speightからの回答が続きます。
これらのユーザーは特定のファイルまたはプロセスの所有者になるために存在し、ログインアカウントになることを目的としていません。 「shell」フィールドの値が/ etc / shellsにリストされていない場合、FTPデーモンなどのプログラムはアクセスを許可しません。さらに、/ etc / shellsをチェックしないプログラムでは、/ bin / falseが即座に対話型シェルを返して拒否するという事実を利用します。.
そしてbbaassssiieeからの私達の最終的な答え:
/ usr / bin / falseを持つユーザー、/ sbin / nologinを持つユーザー、または/ usr / bin / passwdを持つユーザーもいます。プログラムのアクセス許可を分離するために必要なシステムユーザー、または認証にパスワードファイルを使用するプログラムの人間ユーザーのいずれかです。.
説明に追加するものがありますか?コメントで音を消す。他の技術に精通したStack Exchangeユーザーからの回答をもっと読みたいですか?こちらのディスカッションスレッドをチェックしてください。.
イメージクレジット:OpenStack Docs(OpenStack Project)