Skip to Content
Building OsUtilizatori locali în image

Utilizatori locali în image

Înregistrările de utilizatori sunt în os.users. Creează conturi în interiorul image; nu au legătură cu conturile de pe site-ul OpenFactory sau cu rolurile din organizație.

Formă canonică

{ "os": { "users": [ { "username": "deploy", "full_name": "Deployment Operator", "groups": ["sudo"], "shell": "/bin/bash" } ] } }

Câmpurile acceptate includ username, password opțional, full_name, groups, shell și level specific țintei, folosit de image-urile Elster/Vyatta. Exemplele mai vechi cu home sau comment nu se potrivesc modelului canonic și pot fi ignorate.

Numele de utilizator și de grup sunt limitate la caractere sigure pentru cont Linux și la lungime. Shell-ul trebuie să fie o cale absolută, fără spații albe sau metacaractere de shell.

Comportamentul parolei

Dacă lăsați password nesetat, se creează un cont blocat cu parolă. Aceasta este starea preferată a rețetei pentru SSH doar cu cheie, înrolare la primul boot sau integrare de identitate la implementare.

Dacă includeți o parolă în plaintext, devine intrare sensibilă de build și poate apărea prin rețete salvate, jurnale sau exporturi. Nu folosiți credențiale reale de producție într-o rețetă. Rețetele Phone trebuie să colecteze credențialele pe dispozitiv, nu să le încorporeze în image.

Înainte de a dezactiva autentificarea SSH cu parolă, confirmați că o cheie publică aprobată sau altă metodă de acces este prezentă și testată. Altfel, un image corect întărit poate fi inaccesibil.

Grupuri și privilegii

  • sudo și wheel pot acorda drepturi administrative, în funcție de distribuție.
  • docker acordă adesea control echivalent cu root prin socket-ul daemonului.
  • kvm acordă acces la dispozitive de virtualizare, unde există.
  • adm poate expune jurnale sensibile.

Tratați-le ca grupuri privilegiate și acordați contului doar ce are nevoie. Numele de grup specifice distribuției nu sunt portabile.

Conturi de serviciu

Pentru un cont de serviciu neinteractiv, alegeți un shell no-login disponibil pe țintă și omiteți grupurile administrative. Confirmați că generatorul și unitatea de serviciu păstrează identitatea intenționată; valoarea implicită a rețetei poate adăuga sudo dacă groups lipsește, deci unde e cazul furnizați explicit o listă goală de grupuri.

Verificare

Testați exact proprietățile care contează:

  • contul există în intervalul UID așteptat;
  • grupurile primare și suplimentare sunt corecte;
  • shell-ul de login și starea de blocare a parolei sunt corecte;
  • directorul home și proprietatea fișierelor, dacă se generează în altă parte, sunt corecte;
  • sudo neautorizat și accesul la servicii sunt refuzate; și
  • calea aprobată de login sau înrolare reușește.

Nu deduceți privilegiul minim doar din crearea contului.