Curso de Linux
Cómo elevar privilegios con el comando sudo.
02:44 - sudo overview
Para comandos que hagan cambios en el sistema se requieren permisos. Una opción es usar directamente root, la otra poder usar sudo.
Para hacer uso de root, en los sistemas en que dicha cuenta esté habilitada se puede escribir “su -” y el sistema pedirá la clave de root. Inmediatamente después se tiene una consola ilimitada. Muchas veces no es buena idea tener dicho usuario habilitado04:12 - Notes about installing sudo
Con el comando “which sudo” verificamos que el comando sudo este instalado, lo cual es lo más probable hoy dia.05:01 - The sudo group
Para identificar el nombre del grupo con privilegios se buscará “sudo” o “wheel” dentro del archivo /etc/sudoers. Se puede hacer con “sudo cat /etc/sudoers” o cambiando a root con “su -” y posteriormente “cat /etc/sudoers”. Si ejecutamos “groups usuario” nos muestra los grupos a los que pertenece. En caso que no pertenezca lo podemos agregar “usermod -aG sudo usuario”. Posteriormente deberemos cerrar la sesión para que se actualice la pertenencia.07:52 - Listing sudo privileges
Si escribimos con nuestro usuario “sudo -l” se listarán los privilegios en que podemos ejecutar sudo. A veces puede ser todo o tan especifico como se quiera.09:00 - What to do when you forget to use sudo
En caso que hayamos ejecutado un comando y no antepongamos sudo, se puede simplemente volver a correrlo si escribimos “sudo !!”. También si presionamos flecha para arriba, luego inicio, escribimos sudo y ponemos enter.10:22 - The /etc/sudoers file
En este paso se muestra el contenido pero abriéndolo con un editor pero no es recomendable porque ante un error podes quedarte afuera y no poder hacer cambios.
Se muestran las diferentes partes de una linea, especificando un poco que hace cada parte.
Antes del igual tenemos en que hostname se puede ejecutar. Posteriormente entre paréntesis tenemos a que usuario y grupo podemos empersonar. Aunque la mayoría de las veces solemos saltar al usuario root, se puede elegir otro. Finalmente tenemos la parte que se dice que comando se permite ejecutar.14:57 - Editing the /etc/sudoers file with visudo
El comando visudo usa un editor de texto que verifica antes de guardar la sintaxis y previene errores que puedan hacer fallar algo. Como es un comando que necesita privilegios se debe ejecutar con sudo por delante. Dependiendo de las configuraciones de cada distribución, esta puede abrir tanto nano como el vi.
En el ejemplo se muestra como se agrega la entrada para darle permisos al usuario “tux”.
Sin embargo el usuario “tux” aún no existe por lo que se usa el comando “sudo adduser tux” para agregarlo. Este pide algunos datos como mínimamente la contraseña.
A continuación cambia al usuario tux de la siguiente forma “sudo su – tux” y por último se usa “sudo -l” (escribiendo la clave de tux) y se muestra los privilegios para dicho usuario. 17:43 - Restricting sudo to specific commands
Como hacer esto no suele ser una buena idea se vuelve al visudo y se cambia el último ALL por la ruta del comando apt para darle permisos específicos para ese comando. Posteriormente se agrega un comando adicional intercalando una coma simple entre comando. Muchas veces no sabemos la ruta completa de un comando por lo que se puede averiguar fácilmente agregando antes el comando which y se mostrará la ruta.20:23 - sudo without a password
Aunque en determinados casos no suele ser una buena idea en determinados casos es útil configurar para que no se pida contraseña para cierta situación. Esto se hace agregando “NOPASSWD: ” en el lugar indicado.22:32 - Undoing errors while using visudo
Cuando se comete un error de sintaxis en visudo este muestra un mensaje de error pero no da opciones. Estas son e para volver a editarlo, x para omitir los ultimos cambios y restaurar la ultima copia correcta y la que no se deberia hacer es q que la guarda de todas maneras.