Product SiteDocumentation Site

8.4. Bruker og gruppers databaser

Listen av brukere er vanligvis lagret i /etc/passwd-filen, mens /etc/shadow-filen lagrer passordnøkler. Begge er tekstfiler, i et relativt enkelt format, som kan leses og modifiseres med en tekstredigerer. Hver bruker er oppført der på en linje med flere felt atskilt med et kolon («:»).

8.4.1. Brukerliste: /etc/passwd

Her er listen med feltene i /etc/passwd-filen:
  • login, for eksempel rhertzog;
  • password: this is a password encrypted by a one-way function (crypt), relying on DES, MD5, SHA-256 or SHA-512. The special value “x” indicates that the encrypted password is stored in /etc/shadow;
  • uid: unikt nummer som identifiserer hver bruker;
  • gid: unikt nummer for brukerens hovedgruppe (Debian lager en bestemt gruppe for hver bruker som standard);
  • GECOS: datafelt som vanligvis inneholder brukerens fulle navn;
  • innloggingsmappe, tildelt til brukeren for oppbevaring av sine personlige filer (miljøvariabelen $HOME peker generelt hit);
  • program som skal kjøres ved pålogging. Dette er vanligvis en kommandofortolker (skall), som gir brukeren frie hender. Hvis du angir /bin/false (som ikke gjør noe, og returnerer kontrollen umiddelbart), kan ikke brukeren logge inn.
Som nevnt kan denne filen redigeres direkte. Det finnes dog mer elegante måter å utføre endringer, beskrevet i Seksjon 8.4.3, «Å modifisere en eksisterende konto eller passord».

8.4.2. Den skjulte og krypterte passordfilen: /etc/shadow

/etc/shadow-filen inneholder de følgende feltene:
  • login;
  • krypterte passord;
  • flere felt håndterer passordopphør.
Man kan sørge for at passord utløper ved bruk av denne filen, eller sette et tidsutløp der kontoen blir avskrudd etter at passordet har utløpt.

8.4.3. Å modifisere en eksisterende konto eller passord

The following commands allow modification of the information stored in specific fields of the user databases: passwd permits a regular user to change their password, which in turn, updates the /etc/shadow file (chpasswd allows administrators to update passwords for a list of users in batch mode); chfn (CHange Full Name), reserved for the super-user (root), modifies the GECOS field. chsh (CHange SHell) allows the user to change their login shell; however, available choices will be limited to those listed in /etc/shells; the administrator, on the other hand, is not bound by this restriction and can set the shell to any program of their choosing.
Til slutt, chage (CHange AGE)-kommandoen tillater administratoren å endre passordets utløpsinnstillinger (-l bruker-valget vil liste de gjeldende innstillingene). Du kan også tvinge utløpet for et passord ved å bruke passwd -e bruker-kommandoen, som vil kreve at brukerne endrer sitt passord neste gang de logger inn.
I tillegg til disse verktøyene kan man bruke usermod-kommandoen for å tillate endring av alle detaljer nevnt ovenfor.

8.4.4. Deaktivere en konto

You may find yourself needing to “disable an account” (lock out a user), as a disciplinary measure, for the purposes of an investigation, or simply in the event of a prolonged or definitive absence of a user. A disabled account means the user cannot login or gain access to the machine. The account remains intact on the machine and no files or data are deleted; it is simply inaccessible. This is accomplished by using the command passwd -l user (lock). Re-enabling the account is done in similar fashion, with the -u option (unlock). This, however, only prevents password-based logins by the user. The user might still be able to access the system using an SSH key (if configured). To prevent even this possibility you have to expire the account as well using either chage -E 1user or usermod -e 1 user (giving a value of -1 in either of these commands will reset the expiration date to never). To (temporarily) disable all user accounts just create the file /etc/nologin.
You can disable a user account not only by locking it as described above, but also by changing its default login shell (chsh -s shell user). With the latter changed to /usr/sbin/nologin, a user gets a polite message informing that a login is not possible, while /bin/false just exits while returning false. There is no switch to restore the previous shell. You have to get and keep that information before you change the setting. These shells are often used for system users which do not require any login availability.

8.4.5. Gruppeliste: /etc/group

Grupper er listet i /etc/group-filen, en enkel tekstdatabase i et format som ligner det til /etc/passwd-filen, med de følgende feltene:
  • gruppenavn;
  • passord (valgfritt): Denne brukes bare til å bli med i en gruppe når man ikke er et vanlig medlem (med newgrp, eller sg-kommandoer, se sidestolpe DET GRUNNLEGGENDE Å arbeide med flere grupper);
  • gid: unikt gruppeidentifikasjonsnummer;
  • medlemsliste: liste over navn på brukere som er medlemmer av gruppen, atskilt med komma.
Henholdsvis addgroup og delgroup-kommandoene legger til eller sletter en gruppe. groupmod-kommandoen modifiserer en gruppes informasjon (its gid, eller identifikator). Kommandoen gpasswd group endrer passordet for gruppen, mens passwd -r group-kommandoen sletter den.