LFCA: Apreneu a gestionar els comptes d'usuari: part 5


Com a administrador del sistema Linux, se us encarregarà de garantir el bon flux de totes les operacions de TI a la vostra organització. Atès que algunes operacions de TI estan entrellaçades, un administrador de sistemes sol portar molts barrets, inclòs ser un administrador de bases de dades o de xarxa.

Aquest article és la part 5 de la sèrie LFCA, aquí en aquesta part us familiaritzareu amb les ordres generals d'administració del sistema per crear i gestionar usuaris en un sistema Linux.

Gestió de comptes d'usuari a Linux

Una de les principals responsabilitats d'un administrador de sistemes Linux és crear i gestionar usuaris en un sistema Linux. Cada compte d'usuari té 2 identificadors únics: el nom d'usuari i l'ID d'usuari (UID).

Essencialment, hi ha 3 categories principals d'usuaris a Linux:

L'usuari root és l'usuari més potent en un sistema Linux i normalment es crea durant el procés d'instal·lació. L'usuari root té un poder absolut al sistema Linux o qualsevol altre sistema operatiu similar a UNIX. L'usuari pot accedir a totes les ordres, fitxers i directoris i modificar el sistema segons les seves preferències.

L'usuari root pot actualitzar el sistema, instal·lar i desinstal·lar paquets, afegir o eliminar altres usuaris, concedir o revocar permisos i realitzar qualsevol altra tasca d'administració del sistema sense cap restricció.

L'usuari root pot fer gairebé qualsevol cosa al sistema. La hipòtesi dels sistemes Linux i UNIX és que sabeu molt bé què feu amb el sistema. Dit això, l'usuari root pot trencar fàcilment el sistema. Tot el que cal és que executeu una ordre fatal i el sistema estarà en fum.

Per aquest motiu, no es recomana executar ordres com a usuari root. En canvi, les bones pràctiques exigeixen que configureu un usuari sudo. És a dir, concedir privilegis sudo a un usuari normal per realitzar determinades tasques administratives i restringir algunes tasques només a l'usuari root.

Un usuari normal és un usuari d'inici de sessió normal que pot ser creat per un administrador de sistemes. Normalment, hi ha una disposició per crear-ne un durant el procés d'instal·lació. Tanmateix, encara podeu crear tants usuaris habituals com sigui necessari després de la instal·lació.

Un usuari habitual només pot realitzar tasques i accedir als fitxers i directoris per als quals està autoritzat. Si cal, es pot concedir a un usuari habitual privilegis elevats per realitzar tasques de nivell administratiu. Els usuaris habituals també es poden suprimir o desactivar quan calgui.

Aquest és un compte que no és d'inici de sessió que es crea quan s'instal·la un paquet de programari. Aquests comptes són utilitzats pels serveis per executar processos al sistema. No estan dissenyats ni destinats a realitzar tasques rutinàries o administratives del sistema.

Fitxers de gestió d'usuaris

La informació sobre els usuaris d'un sistema Linux s'emmagatzema als fitxers següents:

  • El fitxer /etc/passwd
  • El fitxer /etc/group
  • El fitxer /etc/gshadow
  • El fitxer /etc/shadow

Entendrem cada fitxer i què fa:

El fitxer /etc/passwd conté força informació sobre els usuaris que es troba en diversos camps. Per veure el contingut del fitxer, només cal que utilitzeu l'ordre cat tal com es mostra.

$ cat /etc/passwd

Aquí teniu un fragment de la sortida.

tecmint:x:1002:1002:tecmint,,,:/home/tecmint:/bin/bash

Centrem-nos en la primera línia i ampliem els diferents camps. Començant per l'extrem esquerre, tenim el següent:

  • El nom d'usuari: aquest és el nom de l'usuari, en aquest cas, tecmint.
  • La contrasenya: la segona columna representa la contrasenya xifrada de l'usuari. La contrasenya no s'imprimeix en text sense format, sinó que s'utilitza un marcador de posició amb un signe x.
  • L'UID: aquest és l'ID d'usuari. És un identificador únic per a cada usuari.
  • El GID: aquest és l'identificador del grup.
  • Una breu descripció o resum de l'usuari.
  • Aquest és el camí al directori inicial de l'usuari. Per als usuaris de tecmint, tenim /home/tecmint.
  • Aquest és l'intèrpret d'ordres d'inici de sessió. Per als usuaris d'inici de sessió habituals, normalment es representa com a /bin/bash. Per als comptes de servei com SSH o MySQL, normalment es representa com a /bin/false.

Aquest fitxer conté informació sobre els grups d'usuaris. Quan es crea un usuari, l'intèrpret d'ordres crea automàticament un grup que correspon al nom d'usuari de l'usuari. Això es coneix com el grup primari. L'usuari s'afegeix al grup principal quan es crea.

Per exemple, si creeu un usuari anomenat bob, el sistema crea automàticament un grup anomenat bob i afegeix l'usuari bob al grup.

$ cat /etc/group

tecmint:x:1002:

El fitxer /etc/group té 3 columnes. Des de l'extrem esquerre, tenim:

  • Nom del grup. El nom de cada grup ha de ser únic.
  • Contrasenya del grup. Normalment es representa amb un marcador de posició x.
  • Identificador de grup (GID)
  • Membres del grup. Són membres que pertanyen al grup. Aquest camp es deixa en blanc si l'usuari és l'únic membre del grup.

NOTA: Un usuari pot ser membre de diversos grups. De la mateixa manera, un grup pot tenir diversos membres.

Per confirmar els grups als quals pertany un usuari, executeu l'ordre:

$ groups username

Per exemple, per comprovar els grups als quals pertany l'usuari tecmint, executeu l'ordre:

$ groups tecmint

La sortida confirma que l'usuari pertany a dos grups: tecmint i sudo.

tecmint : tecmint sudo

Aquest fitxer conté contrasenyes xifrades o ombrejades per als comptes de grup i, per motius de seguretat, els usuaris habituals no poden accedir-hi. Només és llegible per l'usuari root i els usuaris amb privilegis sudo.

$ sudo cat /etc/gshadow

tecmint:!::

Des de l'extrem esquerre, el fitxer conté els camps següents:

  • Nom del grup
  • Contrasenya de grup xifrada
  • Administrador del grup
  • Membres del grup

El fitxer /etc/shadow emmagatzema les contrasenyes reals dels usuaris en un format hash o xifrat. De nou, els camps estan separats per dos punts i prenen el format que es mostra.

$ sudo cat /etc/shadow

tecmint:$6$iavr8PAxxnWmfh6J$iJeiuHeo5drKWcXQ.BFGUrukn4JWW7j4cwjX7uhH1:18557:0:99999:7:::

El fitxer té 9 camps. Començant per l'extrem esquerre tenim:

  • El nom d'usuari: aquest és el vostre nom d'inici de sessió.
  • La contrasenya de l'usuari. Es presenta en format hash o xifrat.
  • L'últim canvi de contrasenya. Aquesta és la data des que es va canviar la contrasenya i es calcula des de la data de l'època. L'època és l'1 de gener de 1970.
  • L'edat mínima de la contrasenya. Aquest és el nombre mínim de dies que han de passar abans que es pugui establir una contrasenya.
  • L'edat màxima de la contrasenya. Aquest és el nombre màxim de dies després dels quals s'ha de canviar una contrasenya.
  • El període d'avís. Com el seu nom indica, aquest és el nombre de dies poc abans que caduqui una contrasenya que un usuari rep una notificació de la caducitat imminent de la contrasenya.
  • El període d'inactivitat. El nombre de dies després de caducar una contrasenya que un compte d'usuari es desactiva sense que l'usuari la canviï.
  • La data de caducitat. La data en què va caducar el compte d'usuari.
  • Camp reservat. – Això es deixa en blanc.

Com afegir usuaris en un sistema Linux

Per a les distribucions Debian i Ubuntu, la utilitat adduser s'utilitza per afegir usuaris.

La sintaxi és bastant senzilla i directa.

# adduser username

Per exemple, per afegir un usuari anomenat bob, executeu l'ordre

# adduser bob

A partir de la sortida, es crea un usuari anomenat bob i s'afegeix a un grup recentment creat anomenat bob. A més, el sistema també crea un directori d'inici i hi copia els fitxers de configuració.

A continuació, se us demanarà la contrasenya del nou usuari i, a continuació, la confirmeu. L'intèrpret d'ordres també us demanarà el nom complet de l'usuari i altra informació opcional, com ara el número d'habitació i el telèfon de treball. Aquesta informació no és realment necessària, així que és segur ometre-la. Finalment, premeu ‘Y’ per confirmar que la informació proporcionada és correcta.

Per als sistemes RHEL i basats en CentOS , utilitzeu l'ordre useradd.

# useradd bob

A continuació, configureu la contrasenya per a l'usuari mitjançant l'ordre passwd de la manera següent.

# passwd bob

Com esborrar usuaris en un sistema Linux

Per suprimir un usuari del sistema, és recomanable primer bloquejar l'usuari perquè iniciï sessió al sistema tal com es mostra.

# passwd -l bob

Si ho desitja, podeu fer una còpia de seguretat dels fitxers de l'usuari mitjançant l'ordre tar.

# tar -cvf /backups/bob-home-directory.tar.bz2  /home/bob

Finalment, per eliminar l'usuari juntament amb el directori d'inici, utilitzeu l'ordre deluser de la següent manera:

# deluser --remove-home bob

A més, podeu utilitzar l'ordre userdel tal com es mostra.

# userdel -r bob

Les dues ordres eliminen completament l'usuari juntament amb els seus directoris d'inici.

Aquesta va ser una visió general de les ordres de gestió d'usuaris que resultaran útils, especialment quan gestioneu comptes d'usuari al vostre entorn d'oficina. Proveu-los de tant en tant per millorar les vostres habilitats d'administració del sistema.