Comando sudo en Linux: Ejecuta comandos como Root de forma segura
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
- Clases Prácticas en Shell
- Flashcards para memorización
- Juegos de Crucigramas
- 06 servidores virtuales en Amazon solo para ti
- Mapas Mentales
- Video Glosario
- Simulacro preparatorio para los exámenes
- Agenda de clase personalizada
- Ejercicios guiados – Laboratorios reales
- Recursos de Clase (anotaciones y otros)
¿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
Eso fue solo una pieza. El curso enseña el camino completo — desde tu primer comando hasta el día del examen.
Vi con marcadores coloreados