Skip to Content
Building OsImage-lokale gebruikers

Image-lokale gebruikers

Gebruikersrecords staan in os.users. Ze maken accounts aan in de image; ze houden geen verband met OpenFactory-websiteaccounts of organisatierollen.

Canonieke vorm

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

Ondersteunde velden zijn username, optioneel password, full_name, groups, shell, en een doelspecifiek level voor Elster/Vyatta-images. Oudere voorbeelden met home of comment passen niet bij het canonieke model en kunnen worden genegeerd.

Gebruikers- en groepsnamen zijn beperkt tot veilige Linux-accounttekens en lengte. De shell moet een absoluut pad zijn zonder witruimte of shell-metatekens.

Gedrag van wachtwoorden

Als password niet is ingesteld, ontstaat een met wachtwoord vergrendeld account. Dat is de gewenste receptstatus voor SSH alleen met sleutels, first-boot enrollment of identiteitsintegratie op het moment van deployment.

Als een platte-tekstwachtwoord is opgenomen, wordt het gevoelige buildinput en kan het zichtbaar worden via opgeslagen recepten, logs of exports. Gebruik geen echte productiecredential in een recept. Phone-recepten moeten credentials op het apparaat verzamelen in plaats van ze in de image te bakken.

Voordat u SSH-wachtwoordauthenticatie uitschakelt, controleer of een goedgekeurde public key of een andere toegangsmethode aanwezig en getest is. Anders kan een correct gehard image onbereikbaar zijn.

Groepen en privileges

  • sudo en wheel kunnen afhankelijk van de distributie administratieve rechten verlenen.
  • docker verleent vaak root-equivalente controle via de daemon-socket.
  • kvm verleent toegang tot virtualisatieapparaten waar die aanwezig zijn.
  • adm kan gevoelige logs blootleggen.

Behandel deze als geprivilegieerde groepen en verleen alleen wat het account nodig heeft. Distributiespecifieke groepsnamen zijn niet overdraagbaar.

Serviceaccounts

Voor een niet-interactief serviceaccount kiest u een no-login shell die op het doel beschikbaar is en laat u administratieve groepen weg. Controleer of generator en service unit de bedoelde identiteit behouden; een receptdefault kan sudo toevoegen als groups ontbreekt, dus geef waar nodig een expliciete lege groepslijst op.

Verificatie

Test de exacte eigenschappen die ertoe doen:

  • account bestaat met het verwachte UID-bereik;
  • primaire en bijkomende groepen kloppen;
  • login shell en wachtwoordvergrendelingsstatus kloppen;
  • home en bestandseigendom, indien elders gegenereerd, kloppen;
  • ongeautoriseerde sudo- en servicetoegang worden geweigerd; en
  • het goedgekeurde login- of enrollmentpad slaagt.

Leid least privilege niet alleen af uit het aanmaken van het account.