Cómo administrar usuarios con grupos en Linux

Cómo administrar usuarios con grupos en Linux

cuando administra una máquina Linux que alberga varios usuarios, puede haber ocasiones en las que necesite tomar más control sobre esos usuarios que el que ofrecen las herramientas de usuario básicas. Esta idea sale a la palestra especialmente cuando necesita administrar permisos para ciertos usuarios. Digamos, por ejemplo, que tiene un directorio al que un grupo de usuarios debe acceder con permisos de lectura/escritura y solo Permisos de lectura para otro grupo. Con Linux, esto es completamente posible., Para que esto suceda, sin embargo, primero debe entender cómo trabajar con los usuarios, a través de grupos y listas de control de acceso (ACLs).

comenzaremos desde el principio con los usuarios y trabajaremos nuestro camino hacia las ACLs más complejas. Todo lo que necesita para que esto suceda se incluirá en su distribución de Linux de su elección. No tocaremos los conceptos básicos de los usuarios, ya que el enfoque de este artículo es sobre grupos.,

para el propósito de esta pieza, voy a asumir lo siguiente:

necesitas crear dos usuarios con nombres de usuario:

  • olivia

  • nathan

necesitas crear dos grupos:

Olivia necesita ser miembro de los editores del grupo, mientras que Nathan necesita ser miembro de los lectores del grupo. Los lectores del grupo solo necesitan tener permiso de lectura para el directorio / DATA, mientras que los editores del grupo necesitan tener permiso de lectura y escritura para el directorio / DATA., Esto, por supuesto, es muy mínimo, pero le dará la información básica que necesita para ampliar las tareas para satisfacer sus necesidades mucho más grandes.

haré demostraciones en la plataforma de servidor Ubuntu 16.04. Los comandos serán universales – la única diferencia sería si su distribución de elección no hace uso de sudo. Si este es el caso, tendrá que primero su al usuario root para emitir los comandos que requieren sudo en las demostraciones.

crear los usuarios

Lo primero que tenemos que hacer es crear los dos usuarios para nuestro experimento., La creación de usuarios se gestiona con el comando useradd. En lugar de simplemente crear a los usuarios, necesitamos crearlos a ambos con sus propios directorios personales y luego darles contraseñas.

Lo primero que hacemos es crear los usuarios. Para ello, emitir los comandos:

sudo useradd -m oliviasudo useradd -m nathan

ahora Hemos creado nuestros usuarios. Si busca en el directorio / home, encontrará sus respectivas casas (porque usamos la opción-m, que crea un directorio home).

siguiente cada usuario debe tener una contraseña., Para agregar contraseñas a la mezcla, debe emitir los siguientes comandos:

sudo passwd oliviasudo passwd nathan

Cuando ejecute cada comando, se le pedirá que ingrese (y verifique) una nueva contraseña para cada usuario.

Eso es todo, se crean tus usuarios.

crear grupos y agregar usuarios

Ahora vamos a crear los grupos lectores y editores y luego agregarles usuarios. Los comandos para crear nuestros grupos son:

addgroup readersaddgroup editors

Eso es todo. Si emite el comando less /etc / group, verá nuestros grupos recién creados listados (Figura 1).,

Figura 1: Nuestros nuevos grupos listo para ser utilizado.

con nuestros grupos creados, necesitamos agregar nuestros usuarios. Agregaremos al usuario nathan a los lectores del grupo con el comando:

sudo usermod -a -G readers nathan

agregaremos al usuario olivia a los editores del grupo con el comando:

sudo usermod -a -G editors olivia

Ahora estamos listos para comenzar a administrar los usuarios con grupos.,

dando permisos de grupos a directorios

digamos que tienes el directorio / READERS y necesitas permitir que todos los miembros del grupo de lectores accedan a ese directorio., Primero, cambie el grupo de la carpeta con el comando:

sudo chown -R :readers /READERS 

a continuación, elimine el permiso de escritura del grupo con el comando:

sudo chmod -R g-w /READERS

ahora eliminamos los otros bits x del directorio /READERS (para evitar que cualquier usuario que no esté en el grupo readers acceda a cualquier archivo dentro) con el comando:

sudo chmod -R o-x /READERS

en este punto, solo el propietario del directorio (root) y los miembros del grupo readers pueden acceder a cualquier archivo dentro de /readers.,

digamos que tienes el directorio / EDITORS y necesitas dar a los miembros del grupo editors permiso de lectura y escritura para su contenido. Para hacer eso, sería necesario el siguiente comando:

sudo chown -R :editors /EDITORSsudo chmod -R g+w /EDITORSsudo chmod -R o-x /EDITORS

en este punto, cualquier miembro del grupo de editores puede acceder y modificar archivos dentro. Todos los demás (menos root) no tienen acceso a los archivos y carpetas dentro de /EDITORS.

el problema con el uso de este método es que solo puede agregar un grupo a un directorio a la vez. Aquí es donde las listas de control de acceso son útiles.,

usando listas de control de acceso

Ahora, pongámonos difíciles. Supongamos que tiene una sola carpeta- / DATA-y desea otorgar permisos de lectura a los miembros del grupo de lectores y permisos de lectura/escritura a los miembros del grupo de editores. Para ello, debe aprovechar el comando setfacl. El comando setfacl establece listas de control de acceso de archivos para archivos y carpetas.,

la estructura de este comando se ve así:

setfacl OPTION X:NAME:Y /DIRECTORY

donde OPTION son las opciones disponibles, X es u (Para usuario) o g (para Grupo), NAME es el nombre del usuario o grupo, y DIRECTORY es el directorio que se utilizará. Usaremos la opción-m para modificar. Así que nuestro comando para agregar el lector de grupo para acceso de lectura al directorio/DATA se vería así:

sudo setfacl -m g:readers:rx -R /DATA

ahora cualquier miembro del grupo de lectores puede leer los archivos contenidos dentro de / DATA, pero no pueden modificarlos.,

para dar a los miembros del grupo de editores permisos de lectura/escritura (mientras se conservan los permisos de lectura para el grupo de lectores), emitiríamos el comando;

sudo setfacl -m g:editors:rwx -R /DATA 

el comando anterior daría a cualquier miembro del grupo de editores permisos de lectura y escritura, al tiempo que conservaría los permisos de solo lectura para el grupo de lectores.

todo el control que necesitas

y ahí lo tienes. Ahora puede agregar miembros a grupos y controlar el acceso de esos grupos a varios directorios con toda la potencia y flexibilidad que necesita., Para leer más sobre las herramientas anteriores, ejecute los comandos:

  • man usradd

  • man addgroup

  • man usermod

  • man sefacl

  • man chown

  • man chmod

aprenda más sobre Linux a través del curso gratuito «introducción a Linux» de la Fundación Linux y edX.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *