Base de Coñecemento Instrucións sinxelas para traballar co servizo Profitserver
Páxina Base de Coñecemento Usuarios de Linux: xestión e permisos

Usuarios de Linux: xestión e permisos


Neste artigo, exploraremos a importancia dos usuarios de Linux ben organizados. Describiremos os dereitos de acceso, comezando por como crear e configurar usuarios e rematando por como conceder acceso a ficheiros e cartafoles específicos. Tamén comentaremos algunhas ferramentas de seguridade importantes, como sudo e SELinux, que axudan a protexer o sistema de actividades non desexadas.

A importancia da xestión de usuarios e dereitos de acceso en Linux

No mundo Linux, a xestión de usuarios e os dereitos de acceso xogan un papel fundamental. Imaxina Linux como un gran apartamento onde cada usuario é un inquilino e cada ficheiro é unha habitación. A xestión de usuarios é como asignarlle a cada inquilino a súa chave única, mentres que os dereitos de acceso son o que poden facer na súa habitación.

Cando se crea un usuario, asígnaselle un nome e un identificador único ( UID ), como unha chave persoal para o apartamento. O usuario tamén ten un grupo , que o une con outros inquilinos. O grupo é como un club onde os membros comparten privilexios comúns.

Os dereitos de acceso aos ficheiros divídense en tres categorías: propietario ( usuario ), grupo e outros . Cada clave (usuario) pode ter os seus propios dereitos de ler, escribir e executar para cada categoría. Por exemplo, o propietario do ficheiro pode ter dereitos de lectura e escritura, o grupo só de lectura e os outros nada.

Merecen especial atención a políticas de seguridade como sudo e SELinux , empregadas en sistemas Linux. Sudo é un comando especial que permite aos usuarios normais usar temporalmente dereitos de superusuario (root) para realizar tarefas específicas que normalmente só están dispoñibles para os administradores. Isto axuda a evitar erros accidentais ou mal uso dos dereitos de superusuario. Ao usar sudo , o usuario normalmente ten que introducir o seu contrasinal para confirmar a súa identidade. Despois disto, poden executar comandos con dereitos de superusuario (root) de acordo coas regras establecidas no ficheiro sudoers.

SELinux é unha capa adicional de seguridade para o sistema operativo Linux. Supervisa que programas e ficheiros se poden usar no sistema e limita o acceso a eles para evitar intrusións e ataques. Isto fai que o servidor sexa máis seguro ao evitar intentos de piratería informática ou accións maliciosas.

Creación e xestión de usuarios

Como crear un usuario en Linux

Os usuarios de Linux adoitan crearse co comando useradd . Por exemplo, para crear un usuario chamado "nomedeusuario", terías que introducir:

useradd username

Como configurar un contrasinal de usuario de Linux

Despois de crear un usuario, a súa conta non está protexida por un contrasinal. Para definir un contrasinal para un novo usuario, use o comando passwd :

passwd username

Onde nome de usuario é o nome do usuario para o que se está configurando o contrasinal.

Como ver unha lista de usuarios en Linux

Para ver unha lista de usuarios en Linux cun único comando no terminal, podes usar o comando cut :

cut -d: -f1 /etc/passwd

Este comando le o contido do ficheiro /etc/passwd , que contén información sobre todos os usuarios.

Para obter información sobre un usuario específico, pode usar o comando:

id username

Isto mostrará o UID , o GID e os grupos do usuario.

Eliminar un usuario de Linux

Para eliminar un usuario, use o comando userdel :

userdel username

Non obstante, este comando non elimina os ficheiros do directorio persoal do usuario. Para eliminalos, podes usar a opción -r :

userdel -r username

Isto eliminará o nome de usuario xunto co seu directorio de inicio e todos os ficheiros que hai.

Modificando un usuario de Linux

Para modificar a información sobre un usuario, use o comando usermod . A ferramenta usa a sintaxe:

usermod argument user

Na axuda da utilidade móstrase unha lista completa de posibles argumentos:

Axuda da utilidade de xestión de usuarios de Linux

Por exemplo, para cambiar o directorio de inicio dun usuario, usarías o comando:

usermod -d /new/path/to/directory username

Creación e xestión de grupos de usuarios en Linux

Os grupos de usuarios en Linux permiten aos administradores agrupar usuarios con dereitos de acceso similares. Isto facilita a xestión dos dereitos de acceso e mellora a seguridade do sistema ao permitir que os dereitos se establezan a nivel de grupo, en lugar de facelo para cada usuario individualmente. Como exemplo, consideraremos o grupo de desenvolvedores co administrador de usuarios.

Como crear un grupo de usuarios en Linux

Para crear un novo grupo, use o comando groupadd co nome do novo grupo:

sudo groupadd group_name

No noso exemplo, o comando sería así:

sudo groupadd developers

Como eliminar un grupo de usuarios en Linux

Para eliminar un grupo, use o comando groupdel :

sudo groupdel group_name

Así, o comando:

sudo groupdel developers

Eliminará o grupo chamado desenvolvedores.

Engadir usuarios a un grupo

Para engadir un usuario a un grupo específico, use o comando usermod :

sudo usermod -aG group_name user_name

Por exemplo:

sudo usermod -aG developers admin

Este comando engadirá o usuario chamado admin ao grupo de desenvolvedores.

Eliminar usuarios dun grupo

Para eliminar un usuario dun grupo, use o comando deluser :

sudo deluser user_name group_name

O comando para eliminar o usuario administrador do grupo de desenvolvedores :

sudo deluser admin developers

Visualización de listas de grupos en Linux

Para ver unha lista de todos os grupos do sistema, use o comando cat co ficheiro /etc/group :

cat /etc/group

Este comando mostrará unha lista de todos os grupos do sistema.

Comprobando a pertenza ao grupo de usuarios

Despois de realizar accións, pode comprobar a que grupos pertence un usuario mediante o comando groups:

groups user_name

Así, exploramos os conceptos básicos da xestión de grupos de usuarios en Linux. Agora, imos pasar á seguinte etapa: examinar a asignación de dereitos de acceso a ficheiros e directorios. Este proceso permite determinar que accións poden realizar os usuarios ou grupos con respecto a ficheiros e directorios específicos, garantindo unha xestión eficaz da seguridade e o acceso aos recursos do sistema.

Asignación de dereitos de acceso a ficheiros e directorios

Representación simbólica dos dereitos de acceso

Como xa vimos, hai 3 categorías de usuarios en Linux: propietario ( usuario ), grupo e outros . Cada un deles pode posuír certos grupos de acceso a ficheiros ou directorios:

  1. Read (Read - r): Permite ver o contido dun ficheiro ou directorio.
  2. Write (Write - w): Ofrece a posibilidade de modificar un ficheiro ou crear un novo ficheiro dentro do directorio. Para un directorio, isto tamén permite eliminar ficheiros del.
  3. Executar (Executar - x): Permite executar o ficheiro (se é un ficheiro executable) ou entrar no directorio (se é un directorio).

Nos sistemas da familia Linux, os dereitos de acceso están representados por unha cadea de 10 caracteres. O primeiro carácter indica o tipo de ficheiro (ficheiro normal, directorio, etc.), e os nove restantes son tres grupos de tres caracteres para cada un dos grupos de usuarios. Para entender, consideremos un exemplo.

Os dereitos de acceso -rwxr-xr-- significan:

  1. O primeiro carácter (-) indica o tipo de ficheiro (neste caso, un ficheiro normal).
  2. Tres caracteres para o propietario (rwx) indican que o propietario ten dereitos de lectura, escritura e execución.
  3. Tres caracteres para o grupo (rx) indican que os membros do grupo só teñen dereitos de lectura e execución.
  4. Tres caracteres para os demais (r--) significan que outros usuarios só poden ler o ficheiro.

Os dereitos de acceso establécense mediante o comando chmod e a sintaxe é a seguinte:

chmod [options] mode file(s)

Onde:

  1. [opcións] - parámetros adicionais, como -R para cambiar recursivamente os dereitos de acceso a un directorio e os seus subdirectorios.
  2. mode - unha cadea especial que especifica que dereitos de acceso se modifican e para quen. O modo pódese especificar mediante símbolos (r, w, x) e bits (0 ou 1). Tamén se poden usar valores numéricos de modo (deles falaremos máis adiante)
  3. ficheiro(s) - ficheiros ou directorios aos que se aplican os cambios.

Esta utilidade é unha ferramenta bastante poderosa, polo que só veremos algúns comandos básicos como exemplo.

Cambia os dereitos de acceso a un ficheiro para que o propietario teña dereitos de lectura e escritura, o grupo só teña dereitos de lectura e outros usuarios non teñan dereitos:

chmod u=rw,g=r,o= filename

Establece os dereitos de acceso para que todos os usuarios poidan ler e escribir nun ficheiro:

chmod a+rw filename

Cambia recursivamente os dereitos de acceso para todos os ficheiros e subdirectorios dun directorio:

chmod -R u+rwx directory

Representación numérica dos dereitos de acceso

Na representación numérica, cada categoría de usuario (propietario, grupo, outros) ten o seu número, e a combinación destes números establece os dereitos de acceso finais. Semellante ao simbólico, cada un dos tres dereitos ten o seu valor, pero en forma numérico:

  1. Ler (ler) - valor 4
  2. Escribir (escribir) - valor 2
  3. Executar (executar) - valor 1

Os valores numéricos tamén se utilizan para determinar o tipo de usuario:

  1. Propietario do ficheiro (usuario): o primeiro díxito
  2. Grupo do propietario (grupo) - o segundo díxito
  3. Outros usuarios (outros) - o terceiro díxitos

Así, a representación numérica completa dos dereitos de acceso ao ficheiro consta de tres díxitos, representando cada un a suma dos valores dos dereitos para unha determinada categoría de usuario. Isto é algo máis conveniente que usar 10 caracteres na representación simbólica. Neste caso, a xestión sería a seguinte:

chmod XYZ file

onde X , Y e Z son números que representan os dereitos de acceso para o propietario, o grupo e outros usuarios, respectivamente.

Por exemplo, para concederlle ao propietario dereitos de acceso completos (ler, escribir e executar) e que o grupo e outros usuarios só len e executen, pode usar o comando:

chmod 755 file

Consideremos outros exemplos:

chmod 700 file

Só o propietario ten dereitos para ler, escribir e executar, mentres que o grupo e outros usuarios non teñen dereitos de acceso.

chmod 644 file

O propietario ten dereitos de lectura e escritura, mentres que o grupo e outros usuarios só teñen dereitos de lectura.

chmod 751 file

O propietario ten todos os dereitos, o grupo ten dereitos de lectura e execución e outros usuarios só teñen dereitos de execución.

Como mencionamos anteriormente, a ferramenta ten unha funcionalidade moi extensa. Nalgúns casos, as opcións dispoñibles na sección "axuda" non son suficientes:

Ferramenta para xestionar dereitos de acceso en Linux

Presta atención á última liña. Ao usar este comando, ábrese documentación máis detallada sobre a ferramenta. Tamén podes visitar a páxina oficial da Wikipedia da utilidade , onde podes atopar información detallada sobre Chmod.

Conclusión

Os usuarios de Linux e a súa xestión son de vital importancia para a seguridade e o funcionamento estable do sistema operativo. Neste artigo, destacamos a importancia dunha xestión eficaz dos dereitos de acceso e usuarios en Linux, que abarca a creación e xestión de usuarios, o traballo con grupos de usuarios e a asignación de dereitos de acceso a ficheiros e directorios.

❮ Artigo anterior Configuración do firewall en Linux
Próximo artigo ❯ Editores de texto Linux

Pregúntanos por VPS

Sempre estamos preparados para responder ás súas preguntas a calquera hora do día ou da noite.