Bienvenidos a este capítulo de este Curso Gratis de Linux para Hackers – El Comando SUDO. 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. Uso de sudo en Linux: Entenderás cómo el comando sudo permite ejecutar comandos con privilegios elevados sin cambiar completamente de usuario.
  2. Sintaxis y opciones del comando sudo: Aprenderás las diferentes opciones disponibles para personalizar el uso del comando sudo.
  3. Configuración del archivo sudoers: Cómo editar y administrar el archivo sudoers para controlar qué usuarios pueden ejecutar qué comandos.
  4. Ventajas de sudo frente a su: Comprenderás las ventajas de seguridad y control que ofrece sudo frente a su.
  5. Buenas prácticas de seguridad con sudo: Conocerás las mejores prácticas para administrar el acceso a sudo en entornos de Linux, como limitar el acceso y auditar comandos.

El comando Sudo

El comando sudo (superuser do) permite a un usuario ejecutar comandos con privilegios elevados, pero solo aquellos para los que ha sido autorizado. A diferencia de su, que otorga acceso completo al entorno de otro usuario (usualmente «root»), sudo permite ejecutar un solo comando con privilegios de superusuario sin necesidad de cambiar completamente de cuenta.

Una vez completado el comando, observe que el símbolo del sistema no ha cambiado, usted continua bajo la cuenta de inicio. El comando sudo sólo proporciona acceso administrativo para la ejecución del comando especificado. Esto es una ventaja ya que reduce el riesgo de que un usuario ejecute accidentalmente un comando como usuario root. La intención de ejecutar un comando es clara; el comando se ejecuta como root si se prefija con el comando sudo. De lo contrario, el comando se ejecuta como usuario ordinario.

Si antepones “sudo” a cualquier comando, se ejecutará ese comando con privilegios elevados o, en otras palabras, permitirá que un usuario con los permisos adecuados ejecute un comando como otro usuario, como el superusuario. Este es el equivalente a la opción “ejecutar como administrador” en Windows. La opción de sudo nos permite tener múltiples administradores. 

Estos usuarios que pueden utilizar el comando sudo necesitan tener una entrada en el archivo sudoers ubicado en “/etc/sudoers” . Recuerde que para editar o visualizar el archivo sudoers debe utilizar el comando sudo. Para editar el archivo sudoers se recomienda utilizar el comando “visudo”. 

De forma predeterminada, sudo requiere que los usuarios se autentiquen con una contraseña que es la contraseña del usuario, no la contraseña root en sí. 

Sintaxis del comando sudo: 

sudo -V | -h | -l | -v | -k | -K | -s | [ -H ] [-P ] [-S ] [ -b ] | 
[ -p prompt ] [ -c class|- ] [ -a auth_type ] [-r role ] [-t type ] 
[ -u username|#uid ] command

Por ejemplo, para actualizar los paquetes del sistema:

Sin sudo no se tiene los permisos y la actualización es denegada. Este comando ejecuta la actualización del sistema con permisos de superusuario, pero el usuario solo necesita proporcionar su propia contraseña, no la del usuario «root». Esto lo hace más seguro, ya que no expone la contraseña del superusuario.

Opciones disponibles en el comando sudo

Opciones                                                                                                             DescripciónSintaxis
-VLa opción -V (versión) hace que sudo imprima el número de versión y salga. Si el usuario que realiza la invocación ya es root, la opción -V imprimirá una lista de los valores predeterminados con los que se compiló sudo. sudo -V
-lLa opción -l (lista) imprimirá los comandos permitidos (y prohibidos) para el usuario en el host actual. sudo -l
-h o –helpLa opción -h (ayuda) hace que sudo imprima un mensaje de uso y salga.sudo -h
-vSi se le da la opción -v (validar), sudo actualizará la marca de tiempo del usuario y solicitará la contraseña del usuario si es necesario. Esto extiende el tiempo de espera de sudo por otros 5 minutos (o el tiempo indicado en sudoers), pero no ejecuta ningún comando. Esto no genera ninguna salida. sudo -v
-kLa opción -k (kill) de sudo invalida la marca de tiempo del usuario. Por lo tanto, la próxima vez que se ejecute sudo, se solicitará una contraseña. Esta opción no requiere contraseña y se agregó para permitir que un usuario revoque los permisos de sudo desde un archivo de cierre de sesión. sudo -k
-KDe manera similar a la opción -k, la opción -K (eliminación segura) se utiliza para eliminar por completo la marca de tiempo del usuario. Asimismo, esta opción no requiere una contraseña. sudo -K
 -bLa opción -b (en segundo plano) le indica a sudo que ejecute el comando indicado en segundo plano. Tenga en cuenta que si utiliza la opción -b, no podrá utilizar el control de tareas del shell para manipular el proceso. sudo -b [comando] (reemplace “comando” con el comando que desea ejecutar en segundo plano)
-pEl comando sudo -p prompt le permite personalizar el mensaje de solicitud de contraseña que sudo muestra cuando solicita la contraseña del usuario. De manera predeterminada, sudo mostrará un mensaje de solicitud de contraseña genérico que se parece asudo -p «Ingresa tu contraseña» [comando] (reemplace “comando” con el comando que desea ejecutar en segundo plano)
 -nLa opción -n permite que sudo ejecute un comando sin solicitar una contraseña. Esta opción es útil cuando se ejecutan comandos sudo como tareas en segundo plano o en un script de shell. La opción -n significa no interactivo.sudo -n [comando] (reemplace “comando” con el comando que desea ejecutar en segundo plano)
-uLa opción -u hace que sudo ejecute el comando especificado como un usuario distinto de root. Para especificar un UID en lugar de un nombre de usuario, utilice #uid.sudo -u [usuario] [comando] (reemplace “comando” con el comando que desea ejecutar en segundo plano)
-sLa opción -s ejecuta el shell especificado por la variable de entorno SHELL si está configurada o el shell especificado en el archivo passwd.sudo -s [comando] (reemplace “comando” con el comando que desea ejecutar en segundo plano)
-HLa opción -H establece la variable de entorno HOME en el directorio de inicio del usuario de destino (root de manera predeterminada) como se especifica en passwd. De manera predeterminada, sudo no modifica HOME.sudo -H [comando] (reemplace “comando” con el comando que desea ejecutar en segundo plano)
-SLa opción -S hace que sudo lea la contraseña desde la entrada estándar en lugar del dispositivo terminal.sudo -S [comando] (reemplace “comando” con el comando que desea ejecutar en segundo plano)
-aLa opción -a hace que sudo utilice el tipo de autenticación especificado al validar al usuario, tal como lo permite /etc/login.conf. El administrador del sistema puede especificar una lista de métodos de autenticación específicos de sudo agregando una entrada “auth-sudo” en /etc/login.conf.sudo -a [tipo-autenticación] [comando] (reemplace “comando” con el comando que desea ejecutar en segundo plano)
El indicador — indica que sudo debe dejar de procesar argumentos de la línea de comandos. Es más útil junto con el indicador -s.sudo — [comando] (reemplace “comando” con el comando que desea ejecutar en segundo plano)

Ejecutar un programa como otro usuario / comando sudo

sudo [OPCIONES] COMANDO

El comando sudo permite a un usuario ejecutar un comando como otro usuario sin tener que crear un nuevo shell. Para ejecutar un comando con privilegios administrativos utilice el comando como argumento para el comando sudo. Al igual que pasa con el comando su, el comando sudo asume por defecto que la cuenta de usuario root debe usarse para ejecutar comandos.

Para este módulo vamos a comenzar a utilizar más intensivamente la consola de Linux, la idea es que en algún momento puedan trabajar/administrar servidores Linux, lo cual significa usar la consola 100%. Linux se trata de performance, seguridad y eficiencia entre otras cosas, y eso significa tener instalado únicamente el software que necesito para la tarea que estoy llevando a cabo. En los entornos profesionales es muy raro ver un servidor Linux con entorno gráfico, eso está reservado a equipos de escritorio comúnmente. Dirigirse al icono de la consola y luego crear un usuario y asignarle una password.

 sudo su

Este comando da acceso de administrador

El comando sudo permite a un usuario iniciar programas con las credenciales de otro usuario.

Ejemplo:

/usr/sbin/useradd -m Romina  

Mire la instantánea de arriba, el shell muestra el mensaje anterior al crear el usuario ‘Romina’ .

Con sudo podemos…

Con el comando sudo podemos crear nuevos usuarios en el sistema sin convertirnos en root o sin saber la contraseña de root.

Ejemplo:

sudo /usr/sbin/useradd -m Romina  

Mire la instantánea de arriba, el usuario ‘Romina’ se crea con el comando sudo.

La salida de algunos comandos

-V: La opción -V (versión) hace que sudo imprima el número de versión y salga. Si el usuario que realiza la invocación ya es root, la opción -V imprimirá una lista de los valores predeterminados con los que se compiló sudo. 

-l: La opción -l (lista) imprimirá los comandos permitidos (y prohibidos) para el usuario en el host actual. 

Configuración del archivo sudoers

El archivo /etc/sudoers contiene las configuraciones que determinan qué usuarios pueden ejecutar qué comandos con sudo. Modificar este archivo de manera incorrecta puede bloquear el acceso a privilegios elevados, por lo que es recomendable editarlo con el comando: 

 sudo visudo 

 

Este comando abre el archivo /etc/sudoers en un editor protegido que previene errores de sintaxis, garantizando que el sistema no quede bloqueado accidentalmente.

Variables de entorno

Estas variables de entorno son utilizadas por sudo 

EtiquetaDescripción
EDITOR   Editor predeterminado para usar en modo -e (sudoedit) si VISUAL no está configurado 
HOME  En modo -s o -H (o si sudo se configuró con la  opción –enable-shell-sets-home), establezca el directorio de inicio del usuario de destino 
PATH  Establezca un valor adecuado si la opción sudoers secure_path está configurada. 
SHELL  Se utiliza para determinar el shell que se ejecutará con la opción -s 
SUDO_PROMPT  Se utiliza como solicitud de contraseña predeterminada 
SUDO_COMMAND   Establezca el comando ejecutado por sudo 
SUDO_USER  Establezca el inicio de sesión del usuario que invocó sudo
SUDO_UID  Establezca el uid del usuario que invocó sudo 
SUDO_GID  Establezca el gid del usuario que invocó sudo 
SUDO_PS1   Si se configura, PS1 se establecerá en su valor
USER Establecer en el usuario de destino (root a menos que se especifique la opción  -u )
VISUAL   Editor predeterminado para utilizar en modo -e (sudoedit) 

El comando sudo tiene más opciones que puedes explorar

 sudo --help

 

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

 man sudo

Ventajas de sudo sobre su

  • Seguridad: sudo no requiere que los usuarios conozcan la contraseña del superusuario, lo que limita la exposición de credenciales sensibles.
  • Control granular: Los administradores pueden configurar qué usuarios tienen acceso a qué comandos mediante el archivo /etc/sudoers.
  • Registro de comandos: sudo registra todos los comandos ejecutados, lo que facilita la auditoría y el seguimiento de actividades en el sistema.
  • Permisos temporales: A diferencia de su, que otorga acceso continuo, sudo solicita una contraseña solo por un comando o por una sesión limitada.

Importancia de su y sudo para los hackers

Tanto su como sudo son herramientas críticas que los hackers deben conocer. El control de acceso con privilegios elevados es el objetivo central de muchos ataques, ya que, una vez obtenido el acceso de superusuario, el hacker tiene control total del sistema.

Escalada de privilegios

En muchos escenarios de hacking, los atacantes buscan vulnerabilidades en el sistema que les permitan obtener acceso como un usuario común. Sin embargo, este acceso limitado no les otorga control completo sobre el sistema. Para maximizar su control, los hackers intentan escalar privilegios, lo que significa obtener permisos de superusuario.

Ejemplo de uso de sudo en escalada de privilegios

Si un usuario tiene acceso a sudo pero no a todos los comandos, un hacker podría intentar explotar configuraciones incorrectas en el archivo /etc/sudoers. Por ejemplo, si un administrador ha permitido que un usuario ejecute un comando de manera inadecuada, como el acceso a un shell con permisos de superusuario:

sudo /bin/bash

Este comando abriría un shell con privilegios de superusuario, lo que les permitiría realizar acciones que normalmente no estarían permitidas.

Modificación de configuraciones del sistema

Una vez que un hacker tiene acceso a su o sudo, puede modificar archivos críticos del sistema para obtener acceso persistente o para hacer que el sistema sea vulnerable a futuros ataques. Por ejemplo, pueden modificar el archivo /etc/sudoers para otorgarse a sí mismos acceso total sin tener que proporcionar la contraseña cada vez.

sudo visudo

Al modificar el archivo sudoers, un atacante puede agregar una línea como:

hacker ALL=(ALL) NOPASSWD: ALL

Esto les permitiría ejecutar cualquier comando con sudo sin tener que proporcionar una contraseña.

Ocultar rastros y limpiar logs

Después de realizar una intrusión, los hackers pueden usar su o sudo para ocultar sus rastros y eliminar cualquier evidencia de su actividad. Un ejemplo común es borrar los archivos de logs que registran la actividad del sistema.

sudo rm/var/log/auth.log

Este comando elimina el archivo que contiene los registros de autenticación, lo que dificulta la tarea de los administradores de rastrear la actividad maliciosa.

Buenas prácticas para administradores de sistemas

Debido al poder que ofrecen su y sudo, es fundamental implementar buenas prácticas de seguridad para mitigar posibles riesgos.

Uso limitado de su y sudo

Se debe limitar el uso de su y sudo solo a aquellos usuarios que lo necesiten realmente. No todos los usuarios deben tener acceso a comandos de superusuario, y aquellos que lo tienen deben ser auditados regularmente.

Configuración adecuada del archivo sudoers

Es fundamental revisar el archivo /etc/sudoers y asegurarse de que no existan configuraciones innecesarias o peligrosas. Una buena práctica es otorgar permisos específicos solo para los comandos necesarios en lugar de acceso completo.

Registro y monitoreo de actividades

Dado que sudo registra todas las actividades, es esencial revisar regularmente estos logs para detectar cualquier actividad sospechosa. Los administradores deben monitorear quién usa sudo y con qué fines.

Contraseñas seguras

Es crucial asegurar que las contraseñas del usuario «root» y de aquellos con acceso a sudo sean seguras y no triviales. Además, el uso de contraseñas únicas y robustas, así como la implementación de políticas de cambio regular de contraseñas, puede prevenir muchos ataques.

Preguntas frecuentes sobre el comando sudo en Linux

¿Qué es «sudo» en Linux?

Sudo es un comando de Linux que permite a los usuarios ejecutar comandos con privilegios que solo tiene el usuario root. Ayuda a los usuarios a realizar tareas con poderes administrativos sin iniciar sesión como usuario root, aunque a veces puede ser riesgoso.

¿Qué comandos de Linux necesitan privilegios ‘sudo’?

Hay muchos comandos de Linux que se deben ejecutar con privilegios sudo, como comandos de red, comandos de administración de paquetes y comandos de nivel de sistema. Por ejemplo, los comandos que requieren privilegios sudo para ejecutarse son `yum`, `systemctl`, `mount`, `apt-get`, `fdisk` e `ifconfig`.

¿Qué puedo ejecutar con sudo?

Hay muchos comandos de Linux que requieren privilegios sudo para ejecutarse, pero hay que recordar usarlos con precaución, ya que pueden modificar archivos y configuraciones críticas del sistema. Para evitar consecuencias, debemos comprobarlo dos veces antes de ejecutar comandos. Comandos como:

  • Instalación de un nuevo paquete: `sudo apt-get install package_name`
  • Actualización del sistema: `sudo apt-get update && sudo apt-get upgrade`
  • Modificar configuraciones del sistema: `sudo nano /etc/fstab`
  • Iniciar un servicio del sistema: `sudo systemctl start service_name`
  • Detener un servicio del sistema: `sudo systemctl stop service_name`
  • Creación de una nueva cuenta de usuario: `sudo useradd username`
  • Cambiar permisos de archivos: `sudo chmod 755 file_name`

¿Cuál es la diferencia entre el comando su y sudo en Linux?

En Linux, el comando su (cambiar de usuario) permite a los usuarios iniciar sesión como otro usuario, generalmente el usuario root, y acceder a sus archivos y configuraciones. Por el contrario, el comando sudo permite a los usuarios ejecutar ciertos comandos con privilegios aumentados sin iniciar sesión como usuario root. Sudo es un método más seguro para otorgar privilegios root temporales a los usuarios.

¿Cómo doy y tomo acceso de usuario sudo en Linux?

En Linux podemos dar o quitar acceso a `sudo` agregando o quitando el nombre de usuario del archivo llamado `sudores`. Para agregar el nombre de usuario a los sudoers necesitamos ejecutar el comando `sudo visudo` y editar el archivo y agregar la línea que le dará acceso al usuario. Por ejemplo: “username ALL=(ALL:ALL) ALL” le da al usuario acceso completo al comando sudo.

Podemos deshabilitar el acceso sudo de un usuario utilizando el mismo comando “sudo visudo” que se utilizará para editar el archivo sudoers y eliminar la línea que le otorga acceso sudo. Una vez que se elimine la línea, el usuario ya no podrá utilizar el comando sudo para ejecutar comandos privilegiados.

Conclusión

En Linux, el sudocomando actúa como una llave mágica que desbloquea poderes especiales, lo que le permite realizar tareas importantes que normalmente solo el superusuario puede hacer. Es una forma de pedir permiso para ejecutar comandos con privilegios elevados, como instalar software o cambiar la configuración del sistema. Se utiliza sudoantes de un comando para demostrar que se le permite ejecutarlo como superusuario. Para utilizar sudo, normalmente debe escribir su propia contraseña para demostrar que es usted quien lo hace, no otra persona. Recuerde, sudoes poderoso, así que úselo con cuidado. Puede cambiar cosas importantes en su computadora. Si comprende sudoy sus opciones, puede usar Linux de manera más efectiva y segura.

Los comandos su y sudo son herramientas poderosas en Linux, que permiten a los usuarios acceder a funciones y realizar tareas con permisos elevados. Para los hackers, el dominio de estos comandos es esencial para comprometer sistemas, escalar privilegios y ocultar actividades maliciosas. Al mismo tiempo, para los administradores de sistemas, es crucial implementar buenas prácticas para asegurar que el uso de su y sudo esté controlado y monitoreado, garantizando así la seguridad del sistema.

El conocimiento de estos comandos no solo es vital para los expertos en seguridad y los hackers, sino también para cualquier usuario que busque comprender a fondo la administración y seguridad en Linux.

Puntos clave del artículo y resumen:

  1. Comando sudo en Linux:
    • sudo permite ejecutar un solo comando con privilegios elevados, sin necesidad de cambiar completamente a otro usuario (como root). A diferencia de su, que cambia todo el entorno del usuario, sudo solo otorga permisos para ejecutar un comando específico.
    • La principal ventaja es que el usuario sigue en su cuenta y solo usa su propia contraseña, no la de root.
  2. Sintaxis del comando sudo:
    • La sintaxis básica es: sudo comando. Esto ejecuta el comando con privilegios administrativos.
    • Ejemplo: sudo apt update actualiza los paquetes del sistema con permisos elevados, utilizando la contraseña del usuario en lugar de la contraseña root.
  3. Opciones del comando sudo:
    • -V: Muestra la versión de sudo y sale.
    • -l: Lista los comandos permitidos para el usuario.
    • -v: Valida la sesión de sudo para extender su uso sin solicitar la contraseña nuevamente.
    • -k y -K: Invalida o elimina la sesión de sudo, forzando la solicitud de contraseña la próxima vez.
    • -b: Ejecuta un comando en segundo plano.
    • -p: Personaliza el mensaje de solicitud de contraseña.
  4. Ejecutar como otro usuario con sudo:
    • sudo también permite ejecutar comandos como otro usuario. Para ello, se usa la opción -u seguida del nombre del usuario. Ejemplo: sudo -u alvaro comando ejecuta el comando como el usuario «alvaro».
  5. Archivo sudoers y su configuración:
    • El archivo /etc/sudoers define qué usuarios pueden ejecutar qué comandos con sudo. Este archivo debe editarse cuidadosamente usando el comando visudo, que previene errores de sintaxis y asegura la integridad del sistema.
    • Ejemplo: puedes permitir que un usuario ejecute todos los comandos sin contraseña añadiendo la línea: usuario ALL=(ALL) NOPASSWD: ALL.
  6. Ventajas de sudo frente a su:
    • Seguridad: Los usuarios no necesitan conocer la contraseña root, reduciendo el riesgo de exposición de credenciales sensibles.
    • Control: Los administradores pueden definir permisos específicos para cada usuario, lo que evita un acceso completo al sistema.
    • Auditoría: sudo registra todas las actividades en logs, lo que facilita el monitoreo y la auditoría.
  7. Escalada de privilegios y hacking ético:
    • El mal uso de sudo puede ser explotado por hackers para escalar privilegios, como ejecutar un shell con permisos de superusuario sin necesidad de la contraseña root: sudo /bin/bash.
    • La modificación incorrecta del archivo sudoers también puede ser aprovechada por atacantes para obtener control total del sistema.
  8. Buenas prácticas para el uso de sudo:
    • Acceso limitado: Solo los usuarios que realmente lo necesiten deben tener acceso a sudo.
    • Revisar configuraciones: Revisar regularmente el archivo sudoers para evitar configuraciones innecesarias o peligrosas.
    • Auditar logs: Monitorear los comandos ejecutados con sudo para detectar actividades sospechosas.
    • Contraseñas fuertes: Implementar contraseñas seguras para los usuarios con acceso a sudo y realizar cambios de contraseñas periódicamente.

Este artículo te proporciona un entendimiento completo del uso del comando sudo en Linux, cómo administrarlo de manera segura y cómo puede ser un punto clave en la administración de servidores y seguridad del sistema.

Pon en práctica lo aprendido

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

Preguntas sobre el comando sudo

  1. ¿Qué es el comando sudo en Linux y cómo se diferencia de su?
  2. ¿Cuál es la ventaja de usar sudo en lugar de iniciar sesión directamente como root?
  3. ¿Qué comando se utiliza para agregar permisos de usuario en el archivo /etc/sudoers de manera segura?
  4. ¿Qué hace el comando sudo -k?
  5. ¿Cómo se puede ejecutar un comando como otro usuario que no sea root utilizando sudo?
  6. ¿Cómo se asegura que el sistema no bloquee el acceso al modificar el archivo /etc/sudoers?
  7. ¿Qué ventaja ofrece sudo en términos de seguridad en comparación con su?
  8. ¿Qué comando usarías para ejecutar un comando en segundo plano con privilegios de superusuario?
  9. ¿Cómo puedes personalizar el mensaje de solicitud de contraseña en sudo?
  10. ¿Qué comando sudo permite ejecutar un shell con permisos de superusuario sin cambiar de sesión?

Ejercicios sobre el comando sudo

  1. Ejecuta el comando apt update con privilegios de superusuario utilizando sudo.
  2. Crea un nuevo usuario en el sistema (ejemplo: romina) utilizando sudo sin cambiar a la cuenta de root.
  3. Verifica los comandos permitidos para tu usuario utilizando la opción adecuada de sudo.
  4. Ejecuta un comando como otro usuario (ejemplo: alvaro) utilizando sudo.
  5. Edita de manera segura el archivo /etc/sudoers para añadir un nuevo usuario con acceso a sudo.
  6. Ejecuta un comando en segundo plano utilizando sudo.
  7. Invalida la sesión actual de sudo para que en el próximo uso se solicite la contraseña nuevamente.
  8. Configura un mensaje personalizado para la solicitud de contraseña utilizando sudo.
  9. Verifica la versión actual de sudo que está instalada en tu sistema.
  10. Ejecuta un comando sudo que no solicite una contraseña utilizando la opción correspondiente.

Respuestas a las preguntas

  1. sudo permite a un usuario ejecutar un único comando con privilegios elevados, mientras que su cambia la cuenta de usuario completamente, generalmente a root.
  2. La ventaja de sudo es que limita el acceso administrativo a un solo comando, lo que reduce los riesgos de seguridad al evitar que un usuario ordinario permanezca en un entorno root.
  3. Para editar el archivo /etc/sudoers de manera segura, se utiliza el comando:
    • sudo visudo
  4. El comando sudo -k invalida la sesión actual de sudo, forzando que se solicite la contraseña en la siguiente ejecución de sudo.
  5. Para ejecutar un comando como otro usuario que no sea root, se utiliza la opción -u con sudo:
    • sudo -u alvaro <comando>
  6. Para evitar bloquear el acceso al modificar el archivo /etc/sudoers, se utiliza el comando visudo en lugar de editar el archivo directamente.
  7. sudo ofrece un mejor control de seguridad ya que registra todos los comandos ejecutados, requiere la contraseña del usuario (en lugar de root) y otorga acceso solo a comandos específicos.
  8. Para ejecutar un comando en segundo plano con privilegios de superusuario, se usa la opción -b:
    • sudo -b <comando>
  9. Para personalizar el mensaje de solicitud de contraseña en sudo, se utiliza la opción -p:
    • sudo -p "Introduce tu contraseña:" <comando>
  10. El comando sudo -s permite ejecutar un shell con permisos de superusuario sin cambiar de sesión.

Respuestas a los ejercicios

  1. Ejecutar apt update con privilegios de superusuario:
    • sudo apt update
  2. Crear un nuevo usuario con sudo:
    • sudo useradd -m romina sudo passwd romina
  3. Verificar los comandos permitidos para tu usuario:
    • sudo -l
  4. Ejecutar un comando como otro usuario (ejemplo: alvaro):
    • sudo -u alvaro ls /home/alvaro
  5. Editar de manera segura el archivo /etc/sudoers:
    • sudo visudo
  6. Ejecutar un comando en segundo plano utilizando sudo:
    • sudo -b apt update
  7. Invalida la sesión actual de sudo:
    • sudo -k
  8. Configurar un mensaje personalizado de contraseña:
    • sudo -p "Por favor ingresa tu contraseña: " apt update
  9. Verificar la versión de sudo:
    • sudo -V
  10. Ejecutar un comando sudo sin solicitar contraseña:
    • sudo -n ls /root




Estas prácticas y ejercicios te permiten comprender mejor el uso de sudo en Linux, tanto para ejecutar comandos con privilegios elevados como para gestionar el acceso seguro de los usuarios a dichos privilegios.

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!!!