fbpx Comando sudo en Linux: Ejecutar comandos como Root seguro | Certificação Linux

Comando sudo en Linux: Ejecuta comandos como Root de forma segura

📅 01/01/2019 ⏱ 5 min ✍️ Uira Ribeiro
Linuxcomandos
Comando sudo en Linux: Ejecuta comandos como Root de forma segura
Exam Pass App — mais de 7.000 questões LPI, offline, em 5 idiomas, disponível no Android e na App Store
Disponible en
Google Play
Disponible en
App Store

El comando sudo en Linux ejecuta un determinado comando como si fuera otro usuario. Se usa en el día a día en las tareas de administración del sistema, principalmente para escalar privilegios de la cuenta del root.

En caso de que el usuario que ejecutó el sudo sea un usuario común, este deberá saber la contraseña del usuario con el que desea ejecutar el comando.

En caso de que el usuario que ejecutó el sudo sea el root, el sudo no preguntará la contraseña de ningún usuario, ya que el root tiene superpoderes.

Ejemplo:

# sudo -u uira /bin/mail [email protected] Subject: testeEstou mandando uma mensagem como se eu fosse o prof. Uirá.EOT

En este ejemplo, el usuario root está enviando un correo electrónico como si fuera el usuario "uira".

Observe que, si otro usuario intenta hacer que el sudo ejecute un programa con los permisos de otro usuario, el sudo solicitará la contraseña del usuario:

uira@linux-7rxb:~> sudo -u carla /bin/mailcarla’s password:

En este ejemplo, el usuario "uira" está intentando enviar un correo electrónico como si fuera el usuario "carla".

El sudo es útil cuando desea que algún proceso se ejecute con un usuario específico, de manera que los permisos de archivos estén correctos para el perfecto funcionamiento.

El comando su

El comando su ejecuta el shell como si fuera otro usuario.

Ejemplo:

uira@linux-7rxb:~> su -Password:

En este ejemplo, el usuario "uira" solicita que el Shell se ejecute como el usuario "root". De esta forma, el usuario "uira" obtendrá todos los permisos de la cuenta de superusuario en el sistema.

El signo "-" hace que los scripts de carga del shell de la cuenta "root" sean leídos, como si el propio "root" iniciara sesión en el sistema.

También puede especificar un usuario para ejecutar el shell como si fuera él:

# su uira -

En este ejemplo, el usuario root ejecutará el shell como si fuera el usuario "uira".

En sistemas más seguros, el usuario "root" nunca tiene autorización de entrar directamente al sistema. De esta forma, los usuarios deben iniciar sesión con sus cuentas de acceso y, si necesitan, deberán ejecutar comandos de superusuario utilizando el "sudo" o haciendo acceso a la cuenta de root con el "su".

Para entrar como root, puede usar el comando:

$ su root -

En este caso, necesita saber la contraseña del usuario root.

Por este motivo, es común que cuando un usuario quiere obtener privilegios del root, se utilize el comando:

$ sudo su -

De esta forma, si su usuario está en el grupo que tiene permisos para ejecutar el sudo en el archivo /etc/sudoers, solo necesita autenticarse nuevamente con su propia contraseña, y no la contraseña del usuario root. Esta autenticación es solo para confirmar que usted es usted mismo. Dependiendo de la configuración, ni siquiera esta autenticación es necesaria.

El comando sudoedit

El comando sudoedit es útil para editar archivos con los permisos de otro usuario, especialmente el root.

Hay dos situaciones en las que el uso del sudoedit es interesante:

La primera es cuando el administrador del sistema desea dar permisos para que un determinado usuario edite un archivo al cual este usuario no tenga los permisos de escritura (w), y el administrador no quiere dar permisos totales de "sudo" al usuario.

El truco es crear un grupo de usuarios que pueda hacer el sudoedit con el comando groupadd:

# groupadd gruposudoedit

Y crear una línea en el archivo /etc/sudoers para el grupo, permitiendo que el grupo gruposudoedit pueda ejecutar el comando sudoedit para el archivo determinado:

%gruposudoedit ALL = sudoedit /diretorio/arquivo

Hecho esto, cualquier usuario que forme parte del grupo gruposudoedit podrá editar el archivo con el comando sudoedit:

$ sudoedit /diretorio/arquivo

La segunda situación más común es cuando el administrador necesita editar un archivo del sistema, especialmente los archivos de configuración en el directorio /etc.

El administrador puede recurrir al comando "sudo vi" para ejecutar el editor de textos "vi" como root, y editar el archivo:

$ sudo vi /etc/services

Pasa que de esta forma el "vi" perderá todos los marcadores coloreados del texto:

Vi con marcadores coloreados

Lo mejor que se puede hacer en estos casos, es utilizar el sudoedit, ya que este edita el archivo, guarda una copia temporal, y solo entonces copia la copia temporal al archivo original.

¿Tú que eres profesional de TI, de soporte o desarrollador, ya pensaste en aprender Linux de verdad?

¿Y además de paso sacarte una certificación LPI Linux Essentials de paso?

¿Y mejor aún, con el mejor curso en línea para Linux?

[RICH_REVIEWS_SHOW category="CURSO" num="all"]

Haz como estas personas y crea tu cuenta ahora.

Aquí tienes todo para que tengas éxito en los exámenes de LPI

¿Quieres saber si una certificación vale la pena? Sabe por qué los salarios son buenos, y, por qué las empresas están buscando profesionales de Linux.

Tú entenderás que los beneficios superan por lejos el sacrificio.

Y si ya te decidiste, mira nuestra Guía de Certificación.

Y si quieres saber dónde realizar los exámenes, consulta la lista de ciudades.

Si quieres saber el idioma de los exámenes, mira esta publicación.

Aprende mucho más sobre Linux en nuestro curso en línea. Tú puedes realizar la inscripción aquí. Si ya tienes una cuenta, puedes acceder aquí.

¿Te gustó? Comparte

Uira Ribeiro

Prof. Uirá Ribeiro

Chair do Board do Linux Professional Institute

Después de años viendo profesionales perder horas en tareas simples por no conocer las herramientas correctas de Linux, decidí enseñar.
Hoy soy autor de la mayoría de los Materiales de Aprendizaje oficiales de la LPI y mentor de más de 14,000 alumnos certificados.

Conoce mi historia completa →

Eso fue solo una pieza. El curso enseña el camino completo — desde tu primer comando hasta el día del examen.

Certificação Linux — a plataforma líder em certificações Linux no Brasil
WhatsApp