GNU/Linux >> Tutoriels Linux >  >> Linux

La différence entre compte utilisateur et compte de service ?

J'aimerais connaître la différence entre l'utilisateur et le compte de service.

Je sais que par ex. Jenkins installé sur Ubuntu n'est pas un utilisateur, mais un compte de service.

  1. À quoi sert le compte de service ?
  2. Quand en avons-nous besoin ?
  3. Comment puis-je créer un compte de service ?

Réponse acceptée :

Les comptes d'utilisateurs sont utilisés par des utilisateurs réels, les comptes de service sont utilisés par des services système tels que des serveurs Web, des agents de transport de courrier, des bases de données, etc. Par convention, et uniquement par convention, les comptes de service ont des ID utilisateur dans la plage inférieure, par ex. <1000 ou plus. À l'exception de l'UID 0, les comptes de service ne disposent d'aucun privilège spécial. Les comptes de service peuvent - et le font généralement - posséder des ressources spécifiques, même des fichiers spéciaux d'appareil, mais ils n'ont pas de privilèges de type superutilisateur.

Les comptes de service peuvent être créés comme des comptes d'utilisateurs ordinaires (par exemple, en utilisant useradd ). Cependant, les comptes de service sont généralement créés et configurés par le gestionnaire de packages lors de l'installation du logiciel de service. Ainsi, même en tant qu'administrateur, vous devriez rarement être directement concerné par la création de comptes de service.

Pour une bonne raison :contrairement aux comptes d'utilisateurs, les comptes de service n'ont souvent pas de shell de connexion "approprié", c'est-à-dire qu'ils ont /usr/sbin/nologin comme shell de connexion (ou, à l'époque, /bin/false ). De plus, les comptes de service sont généralement verrouillés, c'est-à-dire qu'il n'est pas possible de se connecter (pour /etc/passwd et /etc/shadow cela peut être réalisé en définissant le hachage du mot de passe sur des valeurs arbitraires telles que * ou x ). Il s'agit de durcir les comptes de service contre les abus (défense en profondeur ).

Avoir des comptes de service individuels pour chaque service a deux objectifs principaux :C'est une mesure de sécurité pour réduire l'impact en cas d'incident avec un service (compartimentation ), et cela simplifie l'administration car il devient plus facile de retrouver quelles ressources appartiennent à quel service. Voir ceci ou ceci répond aux questions connexes pour plus de détails.


Linux
  1. La Différence Entre [[ $a ==Z* ]] Et [ $a ==Z* ] ?

  2. La différence entre Getty et Agetty ?

  3. La différence entre .exrc et .vimrc ?

  4. Quelle est la différence entre un utilisateur normal et un utilisateur système ?

  5. La différence entre '$ . Foo' Et '$ ./foo' ? ?

La différence entre sudo et su expliquée

Comprendre la différence entre les commandes sudo et su sous Linux

Quelle est la différence entre Linux et Unix ?

Quelle est la différence entre un appel système et un appel de bibliothèque ?

Quelle est la différence entre ls et l ?

Quelle est la différence entre unlink et rm ?