miércoles, 6 de septiembre de 2023

Control de usuarios, grupos y permisos desde la terminal en GNU/Linux

La administración de usuarios en GNU/Linux es un proceso importante para gestionar las cuentas de usuario y sus respectivos permisos en un sistema operativo. Aunque en algunas distribuciones tenemos una herramienta gráfica para este fin, la mayoría de las veces necesitaremos hacerlo por terminal. Que no cunda el pánico es mas fácil de lo que parece..

Empecemos!!

 


 

 

Gestión de Usuarios

 

Lo primero es crear algún usuario con el comando useradd:


_$ sudo useradd usuario


Una vez que se ha creado un usuario, puedes establecer una contraseña para ese usuario utilizando el comando passwd:

_$ sudo passwd usuario


En algún momento quizá necesitemos modificar algún usuario, podemos hacerlo con el comando usermod, Puedes usar este comando para cambiar el nombre de usuario, el directorio de inicio, el shell predeterminado y otros atributos de usuario.
Por ejemplo para cambiar el nombre del usuario:



_$ sudo usermod -l victorbit usuario



En algún momento quizá necesitemos eliminar algun usuario, podemos hacerlo con el comando userdel:


_$ sudo userdel victorbit



Para otorgar privilegios de administrador a un usuario en Linux, puedes agregarlo al grupo sudo, esto permitirá que el usuario ejecute comandos como administrador utilizando el comando `sudo`. 



_$ sudo useradd victorbit


_$ sudo usermod -aG sudo victorbit

 

Ejecuta el siguiente comando para asignar un directorio de inicio a un usuario específico:



_$ sudo usermod -d /ruta/del/directorio usuario



Si queremos listar todos los usuarios en Linux, podemos hacerlo con el siguiente comando:


_$ awk -F':' '{ print $1}' /etc/passwd


Este comando imprimirá una lista de todos los nombres de usuario en el sistema. 


Gestión de grupos



Aquí hay algunos comandos para administrar grupos en Linux:

Para saber a que grupos pertenece un usuario:



_$ id victorbit 


(no hace falta sudo)


 

Si queremos saber que grupos hay disponibles en el sistema:



_$ cat /etc/group



o también con:



_$ getent group



Para crear un nuevo grupo puedes utilizar el comando groupadd seguido del nombre del grupo para crear un nuevo grupo en Linux. 



_$  sudo groupadd grupo-test
 

Para agregar usuarios a un grupo puedes utilizar el comando usermod que vimos anteriormente. Por ejemplo, para agregar el usuario "victorbit" al grupo "grupo-test", puedes ejecutar el siguiente comando:



_$ sudo usermod aG grupo-test victorbit




Para eliminar un grupo: 


 
_$  sudo groupdel nuevogrupo



Para ver los grupos a los que pertenece un usuario: 



_$  sudo groups victorbit
   

Para administrar permisos en Linux, hay que comprender la estructura de permisos de Linux: En Linux, los permisos se dividen en tres categorías: propietario (u), grupob (g) y otros (o). Cada categoría tiene permisos de lectura (r), escritura (w) y ejecución (x) que se pueden aplicar a archivos y directorios. Os dejo un esquema justo debajo:




Puedes utilizar el comando `ls -l` para ver los permisos de un archivo o directorio. La salida mostrará una cadena de caracteres que representa los permisos para el propietario, el grupo y otros.

 

 

Los permisos de cada archivo vienen descritos en el siguiente formato:




 



Cambiar los permisos: Para cambiar los permisos, puedes utilizar el comando chmod.

Para agregar permisos de escritura al propietario:



-$ chmod +w archivo



Para quitar permisos de ejecución al grupo:



_$ chmod g-x archivo



Por ejemplo para asignar permisos de lectura/escritura al propietario, de lectura al grupo y a otros:



_$chmod u=rw,g=r,o=r archivo



Se puede usar también una notación numérica para asignar permisos, que es mucho mas sencilla que el método anterior, os dejo un esquema justo debajo:





Para establecer permisos de lectura, escritura y ejecución para el propietario, y permisos de lectura y ejecución para el grupo y otros utilizando la notación numérica: 



-$ chmod 755 archivo 



Mucho mas fácil donde va a parar.

 

 

Otra operación muy importante es cambiar el propietario y el grupo de un archivo puedes utilizar el comando chown para cambiar el propietario de un archivo o directorio, y el comando chgrp para cambiar el grupo. Aquí tienes algunos ejemplos:

   - Para cambiar el propietario:

 

_$ chown nuevo_propietario archivo


   - Para cambiar el grupo: 

 

_$ chgrp nuevo_grupo archivo

 


No hay comentarios:

Publicar un comentario