Chtěl bych znát rozdíl mezi uživatelským a servisním účtem.
Vím, že např. Jenkins
nainstalovaný na ubuntu není uživatelský, ale servisní účet.
- Jaké je použití servisního účtu?
- Když je potřebujeme?
- Jak mohu vytvořit servisní účet?
Přijatá odpověď:
Uživatelské účty jsou používány skutečnými uživateli, servisní účty jsou používány systémovými službami, jako jsou webové servery, agenti pro přenos pošty, databáze atd. Podle konvence a pouze konvence mají servisní účty ID uživatele v nízkém rozsahu, např. <1000 nebo tak. S výjimkou UID 0 nemají servisní účty žádná zvláštní oprávnění. Servisní účty mohou – a obvykle to tak mají – vlastnit specifické zdroje, dokonce i speciální soubory zařízení, ale nemají oprávnění jako superuživatel.
Servisní účty lze vytvořit jako běžné uživatelské účty (např. pomocí useradd
). Servisní účty však obvykle vytváří a konfiguruje správce balíčků při instalaci servisního softwaru. Takže i jako správce byste se jen zřídka měli přímo zabývat vytvářením servisních účtů.
Z dobrého důvodu:Na rozdíl od uživatelských účtů servisní účty často nemají „správný“ přihlašovací shell, tj. mají /usr/sbin/nologin
jako přihlašovací shell (nebo, za starých časů, /bin/false
). Navíc jsou servisní účty obvykle uzamčeny, tj. není možné se přihlásit (pro tradiční /etc/passwd
a /etc/shadow
toho lze dosáhnout nastavením hash hesla na libovolné hodnoty, jako je *
nebo x
). Účelem je posílit servisní účty proti zneužití (ochrana do hloubky ).
Vlastní účty služeb pro každou službu slouží dvěma hlavním účelům:Jde o bezpečnostní opatření ke snížení dopadu v případě incidentu s jednou službou (oddělení ) a zjednodušuje správu, protože je snazší sledovat, jaké zdroje patří ke které službě. Další podrobnosti naleznete v této nebo této odpovědi na související otázky.