Bienvenidos a este capítulo de este Curso de Linux para Hackers – Gestión de Grupos desde la Shell. Comparte este articulo y síguenos para recibir más capítulos, guías y cursos gratis.

Esta guía es parte de un curso mucho más grande en donde te enseñamos a convertirte en hacker de 0 a 100. Desde los conocimientos más básicos hasta conseguir empleo.

En esta guía veremos desde cero un tema tan amplio como es Linux y lo haremos desde el punto de vista del hacking y la ciberseguridad.

Para saber más comente a continuación, respondemos todos y cada uno de los comentarios.

¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?

Lo que aprenderás en este artículo:

  1. Concepto de grupos en Linux: Aprenderás qué son los grupos en Linux y cómo se usan para gestionar permisos y organizar usuarios.
  2. Tipos de grupos en Linux: Comprenderás la diferencia entre grupos primarios y secundarios (o suplementarios).
  3. Comandos de gestión de grupos: Verás cómo crear, modificar y eliminar grupos mediante comandos como groupadd, usermod y groupdel.
  4. Administración de grupos: Explorarás cómo editar el archivo /etc/group para verificar y gestionar la pertenencia de usuarios a grupos.

Grupos de Linux

Los usuarios pueden incluirse en diferentes grupos. Los grupos nos permiten establecer permisos a nivel de grupo en lugar de establecerlos a nivel individual.

Cada distribución de Linux tiene una herramienta gráfica para administrar grupos. Los grupos se pueden administrar mediante herramientas gráficas, herramientas de línea de comandos y mediante vi, según la experiencia del usuario. Solo los usuarios experimentados deberían usar vi para administrar grupos, ya que esto hará los bloqueos o cambios adecuados en el archivo.

Los grupos de Linux son comunidades de usuarios que tienen el derecho de administrar y organizar los usuarios y los permisos de archivos en un sistema Linux. El motivo principal para crear un grupo es definir el conjunto de permisos, como permisos de lectura y escritura, o permitir el uso compartido de recursos de los grupos.

Tipos de grupos de Linux

En el sistema basado en Linux, existen dos tipos de grupos, que son:

  • Grupo primario
  • Grupo secundario o suplementario

Grupo principal: cuando creamos un archivo a través de una cuenta de usuario específica, de manera predeterminada, el grupo de archivos se establece en el grupo principal del usuario. Proporcionará el mismo nombre que el grupo de usuarios del archivo como nombre de la cuenta de usuario. El grupo principal almacena la información del usuario en el archivo /etc/passwd.

Grupo secundario o suplementario: El motivo principal para crear un grupo secundario

es permitir el permiso específico a usuarios limitados. Por ejemplo, si queremos agregar cualquier usuario al grupo sudo, el usuario agregado heredará los derechos de sudo y podrá ejecutar los comandos de sudo. Si agregamos un usuario al grupo docker, heredará las propiedades del grupo docker y podrá ejecutar los comandos docker.

Se puede agregar un usuario a un solo grupo principal. No es necesario agregar un usuario a un grupo secundario, por lo que se puede agregar un usuario a cero o más grupos secundarios.


Nota: Solo el usuario root tiene derecho a agregar un usuario a un grupo.

 groups  

El comando de grupo informa sobre el grupo al que pertenece el usuario actual.

Sintaxis:

 groups  

Sinceramente este comando no tiene “muchas opciones”

También  te recomendamos consultar las páginas man para este comando:

 man groups

Agregar un grupo

Para crear un nuevo grupo de usuarios en un sistema Linux, ejecute el comando groupadd, seguido del nombre del grupo. Necesitará el acceso sudo para obtener los permisos elevados. Ejecute el comando de la siguiente manera:

Sintaxis:

grupoadd <nombre del grupo>  

Ejemplo:

groupadd python
groupadd js
groupadd php  
groupadd java  

El comando anterior solicitará la contraseña administrativa del sistema. Escriba la contraseña. Observe el siguiente resultado:

Mire la instantánea de arriba, los grupos python, js, php y java se crean con el comando groupadd.

Archivo de grupo

El archivo /etc/group define la pertenencia al grupo. Un usuario puede ser miembro de más de un grupo.

Sintaxis:

 tail /etc/group

Observa la captura de pantalla anterior: la primera columna indica el nombre del grupo, la segunda es la contraseña cifrada del grupo, que también puede quedar vacía, la tercera es la identificación del grupo (GID) y la cuarta es la lista de miembros. La cuarta lista está vacía porque estos grupos no tienen miembros.

El comando groupadd tiene más opciones que puedes explorar

 groupadd --help

También te recomendamos consultar las páginas man para este comando:

 man groupsadd

Modificador de usuario

Los miembros del grupo se pueden editar con el comando usermod o useradd . Si un grupo no está en la lista, de forma predeterminada, el comando usermod eliminará al usuario de todos los grupos de los que sea miembro. Aquí, se utiliza la opción -a (agregar) para evitar que esto suceda.

Sintaxis:

usermod -a -G <grupo> <nombre de usuario>  

Ejemplo:

usermod -a -G js carlos  
usermod -a -G js alvaro
usermod -a -G js hacker

Observa la captura de pantalla anterior. Hemos mostrado la lista de /etc/group. Los usuarios carlos, alvaro y hacker se han agregado al grupo js.

El comando usermod tiene más opciones que puedes explorar

 usermod –help

También te recomendamos consultar las páginas man para este comando:

 man usermod

groupdel

El comando groupdel eliminará un grupo de forma permanente del sistema.

Sintaxis:

groupdel <grupo>  

Ejemplo:

groupdel js

Mire la instantánea de arriba, el grupo js se elimina del sistema.

El comando groupdel tiene más opciones que puedes explorar

 groupdel –help

También te recomendamos consultar las páginas man para este comando:

 man groupdel


Nota: Solo el usuario root tiene derecho a agregar un usuario a un grupo.

Puntos clave del artículo y resumen:

  1. Grupos en Linux:
    • Los grupos en Linux permiten establecer permisos para un conjunto de usuarios, lo que facilita la administración de acceso a archivos y recursos. Cada usuario puede pertenecer a un grupo principal y a varios grupos secundarios o suplementarios.
  2. Tipos de grupos en Linux:
    • Grupo principal: Es el grupo al que pertenece el usuario de forma predeterminada. Se almacena en el archivo /etc/passwd y se asocia a los archivos creados por el usuario.
    • Grupo secundario o suplementario: Los usuarios pueden pertenecer a uno o varios grupos secundarios, lo que les otorga permisos adicionales, como ejecutar comandos específicos o acceder a recursos compartidos.
  3. Comando groups:
    • El comando groups muestra los grupos a los que pertenece un usuario. Si no se especifica un usuario, muestra los grupos del usuario actual.
    • Sintaxis: groups [usuario]. Ejemplo: groups carlos muestra los grupos del usuario “carlos”.
  4. Crear un grupo con groupadd:
    • El comando groupadd se usa para crear un nuevo grupo en el sistema.
    • Sintaxis: groupadd [nombre_grupo]. Ejemplo: groupadd python crea un grupo llamado “python”.
    • El archivo /etc/group almacena información sobre los grupos, incluyendo el nombre del grupo, su GID (Group ID) y los usuarios pertenecientes al grupo.
  5. Agregar un usuario a un grupo con usermod:
    • Puedes usar usermod para agregar un usuario a un grupo existente. Usa la opción -aG para evitar que el usuario sea eliminado de otros grupos.
    • Sintaxis: usermod -a -G [grupo] [usuario]. Ejemplo: usermod -a -G python carlos añade al usuario “carlos” al grupo “python”.
  6. Eliminar un grupo con groupdel:
    • El comando groupdel elimina un grupo permanentemente del sistema. No elimina los usuarios, pero les quita la pertenencia a ese grupo.
    • Sintaxis: groupdel [nombre_grupo]. Ejemplo: groupdel js elimina el grupo “js” del sistema.
  7. Archivo /etc/group:
    • El archivo /etc/group contiene los grupos del sistema y sus miembros. Cada línea tiene el formato: nombre_grupo:x:GID:miembros.
    • Puedes revisar este archivo con el comando tail /etc/group para ver los grupos y sus usuarios.
  8. Modificación de usuarios en grupos:
    • Comando usermod: Usa este comando para añadir o remover usuarios de grupos. Evita usarlo sin la opción -a para no eliminar al usuario de otros grupos accidentalmente.
  9. Buenas prácticas para la gestión de grupos:
    • Organización: Asigna usuarios a grupos de acuerdo con sus roles y responsabilidades para gestionar mejor los permisos de archivos y recursos.
    • Uso de sudo: Solo el usuario root o los usuarios con privilegios de sudo pueden crear, modificar o eliminar grupos y agregar usuarios a ellos.

Conclusión:

Los grupos en Linux son esenciales para la administración de permisos y el acceso a recursos compartidos. Utilizando comandos como groupadd, usermod y groupdel, puedes crear, modificar y eliminar grupos, facilitando la gestión de usuarios. El correcto manejo de grupos ayuda a mantener un sistema organizado y seguro, asegurando que solo los usuarios autorizados tengan acceso a recursos específicos.

Pon en práctica lo aprendido

Ahora pon a prueba lo aprendido con estas preguntas y ejercicios.

Preguntas sobre la gestión de grupos en Linux:

  1. ¿Cuál es la diferencia entre un grupo principal y un grupo secundario en Linux?
  2. ¿Cómo se puede verificar a qué grupos pertenece un usuario?
  3. ¿Qué archivo contiene la información sobre los grupos en Linux?
  4. ¿Cómo se puede agregar un nuevo grupo al sistema en Linux?
  5. ¿Qué comando se utiliza para agregar un usuario a un grupo existente sin eliminarlo de otros grupos?
  6. ¿Cómo se puede eliminar un grupo de forma permanente en Linux?
  7. ¿Cuál es la función principal del archivo /etc/group en Linux?
  8. ¿Qué sucede si no se utiliza la opción -a al agregar un usuario a un grupo con el comando usermod?
  9. ¿Cómo se puede listar todos los grupos del sistema utilizando la terminal?
  10. ¿Qué comando se utiliza para eliminar un grupo, y qué precaución debe tenerse al hacerlo?

Ejercicios sobre la gestión de grupos en Linux:

  1. Verifica a qué grupos perteneces utilizando el comando adecuado.
  2. Crea un nuevo grupo llamado desarrolladores en el sistema.
  3. Agrega el usuario carlos al grupo desarrolladores sin eliminarlo de otros grupos.
  4. Verifica la pertenencia del usuario alvaro a los grupos actuales.
  5. Elimina el grupo php del sistema.
  6. Consulta el archivo /etc/group para verificar los grupos disponibles y sus miembros.
  7. Cambia el grupo principal del usuario maria al grupo java.
  8. Crea un nuevo grupo llamado docker y agrega a varios usuarios como hacker, romina, y john.
  9. Elimina el grupo java del sistema.
  10. Consulta la lista de grupos a los que pertenece el usuario root.

Respuestas a las preguntas:

  1. Diferencia entre grupo principal y secundario:
    • El grupo principal es el grupo al que pertenece un usuario por defecto y es asignado cuando se crean archivos.
    • El grupo secundario es un grupo adicional al que un usuario puede pertenecer para obtener permisos o privilegios adicionales.
  2. Para verificar a qué grupos pertenece un usuario:
    • groups <nombre_usuario>
  3. El archivo que contiene la información sobre los grupos es /etc/group.
  4. Agregar un nuevo grupo al sistema:
    • sudo groupadd <nombre_del_grupo>
  5. Agregar un usuario a un grupo sin eliminarlo de otros grupos:
    • sudo usermod -a -G <nombre_grupo> <nombre_usuario>
  6. Eliminar un grupo de forma permanente:
    • sudo groupdel <nombre_del_grupo>
  7. La función principal del archivo /etc/group es almacenar información sobre los grupos del sistema, como el nombre del grupo, su GID y los miembros de cada grupo.
  8. Si no se utiliza la opción -a al agregar un usuario a un grupo con usermod, el usuario será eliminado de todos los grupos a los que pertenecía, excepto del nuevo grupo especificado.
  9. Listar todos los grupos del sistema:
    • cat /etc/group
  10. Comando para eliminar un grupo:
    • sudo groupdel <nombre_grupo>
      Precaución: Asegúrese de que el grupo no esté asignado como grupo principal de ningún usuario, ya que esto podría causar errores en la administración de los usuarios.

Respuestas a los ejercicios:

  1. Verificar a qué grupos perteneces:
    • groups
  2. Crear un nuevo grupo llamado desarrolladores:
    • sudo groupadd desarrolladores
  3. Agregar al usuario carlos al grupo desarrolladores:
    • sudo usermod -a -G desarrolladores carlos
  4. Verificar la pertenencia del usuario alvaro:
    • groups alvaro
  5. Eliminar el grupo php:
    • sudo groupdel php
  6. Consultar el archivo /etc/group:
    • cat /etc/group
  7. Cambiar el grupo principal del usuario maria al grupo java:
    • sudo usermod -g java maria
  8. Crear el grupo docker y agregar a varios usuarios:
    • sudo groupadd docker sudo usermod -a -G docker hacker sudo usermod -a -G docker romina sudo usermod -a -G docker john
  9. Eliminar el grupo java:
    • sudo groupdel java
  10. Consultar los grupos a los que pertenece root:
    • groups root

Estos ejercicios y preguntas cubren tanto la creación, modificación y eliminación de grupos en Linux como la administración de usuarios dentro de los grupos.

No te detengas, sigue avanzando

Aquí tienes un propósito que debes considerar seriamente: si has querido mejorar tus habilidades en hacking, Ciberseguridad y programación ahora es definitivamente el momento de dar el siguiente paso. ¡Desarrolla tus habilidades aprovechando nuestros cursos a un precio increíble y avanza en tu carrera! El mundo necesita más hackers…

¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?

Sobre los autores

Álvaro Chirou

Yo soy Álvaro Chirou, tengo más de 20 Años de experiencia trabajando en Tecnología, eh dado disertaciones en eventos internacionales como OWASP, tengo más de 1.800.000 estudiantes en Udemy y 100 formaciones profesionales impartidas en la misma. Puedes seguirme en mis redes:

Laprovittera Carlos

Soy Laprovittera Carlos. Con más de 20 años de experiencia en IT brindo Educación y Consultoría en Seguridad de la Información para profesionales, bancos y empresas. Puedes saber más de mi y de mis servicios en mi sitio web: laprovittera.com y seguirme en mis redes:

Hacker de 0 a 100 desde las bases hasta conseguir empleo

¿Quieres iniciarte en hacking y ciberseguridad pero no sabes por dónde empezar? Inicia leyendo nuestra guia gratuita: https://achirou.com/hacker-de-0-a-100-desde-las-bases-hasta-conseguir-empleo/ que te lleva de 0 a 100. Desde los fundamentos más básicos, pasando por cursos, recursos y certificaciones hasta cómo obtener tu primer empleo.

Hemos creado una ruta de 0 a 100. Un plan de desarrollo que va desde las bases: cómo aprender hacking, qué aprender, en qué orden; pasando por las areas técnicas necesarias como Linux, Redes, Programación y los conocimientos necesarios en ciber seguridad, hacking, pentesting hasta la práctica y el inicio laboral: Crear tu propio laboratorio, certificaciones, adquirir experiencia e iniciarse laboralmente.

Este es un mega post. Una guía con más de 250 artículos que te llevaran por el camino del hacker. Esta guía es gratuita y esta creada gracias al esfuerzo y al trabajo combinado de Alvaro Chirou y mío (Laprovittera Carlos).

Creamos esta guía (futuro curso) para que puedas iniciarte en este mundo. Puedes arrancar ahora, GRATIS, solo necesitas un PC, conexión a internet y paciencia (Ser hacker NO ES un camino de la noche a la mañana).

El Hacking y la ciberseguridad es una carrera divertida, emocionante y gratificante que te recompensará y desafiará por igual. Sin embargo, para quienes buscan adentrarse en este campo en auge y en constante evolución, puede resultar difícil saber por dónde empezar. ¡Ahí es donde entra en juego nuestra guía en ciberseguridad!

Esta es la hoja de ruta hacia el trabajo de ciberseguridad de tus sueños. Te ayudará a entender qué conocimientos, habilidades y certificados son necesarios para alcanzar tus metas profesionales y tener una carrera próspera. Si quieres ser consultor de ciberseguridad, analista de malware, evaluador de penetración, analista de SOC o cualquier otro puesto de ciberseguridad, esta guía es lo que necesitas.

SIGUE APRENDIENDO GRATIS CON NUESTRAS GUIAS

Aprende con nuestros más de 100 cursos que tenemos disponibles para vos

Compartimos estos recursos para ayudar a la comunidad de hacking y ciberseguridad. COMPARTE y Siéntete libre de agregar más sugerencias en los comentarios a continuación, respondemos todos y cada uno de los comentarios.

Saludos amigos y happy hacking!!!