ユーザーアカウントとサービスアカウントの違いを知りたいです。
Jenkins
たとえば、Ubuntuにインストールされているユーザーはユーザーではないことがわかります。しかし、サービスアカウント。
- サービスアカウントは何に使用されますか?
- いつ必要ですか?
- サービスアカウントの作成方法は?
ベストアンサー1
ユーザーアカウントは実際のユーザーによって使用され、サービスアカウントはシステムサービス(Webサーバー、メール転送エージェント、データベースなど)で使用されます。通常、サービスアカウントには<1000程度のより小さい範囲のユーザーIDがあります。 UID 0を除き、サービスアカウントには特別な権限がありません。サービスアカウントは特定のリソースとデバイスの特殊ファイルまで所有でき、しばしば所有しますが、スーパーユーザーなどの権限はありません。
サービスアカウントは通常のユーザーアカウントのように作成できます(たとえばuseradd
、サービスアカウントは通常、サービスソフトウェアをインストールするときにパッケージマネージャによって作成および構成されているため、管理者でもサービスアカウントの作成に直接関与することはほとんどありません。
妥当な理由があります。ユーザーアカウントとは異なり、サービスアカウントには通常「適切な」ログインシェルはありません。つまり、/usr/sbin/nologin
ログインシェル(または過去には/bin/false
)があります。また、サービスアカウントがロックされることがよくあります。つまり/etc/passwd
、ログインできません(既存のアカウントの場合、/etc/shadow
パスワードハッシュを任意の値(たとえば、または)に設定すると*
可能ですx
)。これは、悪用に備えてサービスアカウントを強化するためのものです(深い防御)。
サービスごとに別々のサービスアカウントを設定することは、主に2つの目的に使用されます。 1つのサービスで事故が発生した場合の影響を軽減するためのセキュリティ対策。区画化)、どのリソースがどのサービスに属しているかを追跡する方が簡単なため、管理が簡素化されます。バラよりこれまたはこれ詳細は関連質問への回答です。