Cuando corro sudocomo un usuario normal sin privilegios, me pide mi contraseña, no la contraseña de root. Eso a menudo es conveniente, pero reduce la cantidad de información que alguien tendría que tener para ejecutar comandos como root. Entonces, ¿cómo puedo sudopedir la contraseña de root en lugar de la contraseña del usuario que invoca?
Sé que se haría con una línea /etc/sudoers, pero parece que nunca puedo analizar correctamente la gramática de BNF en la página del manual para averiguar exactamente qué escribir.

Respuestas:
Ok, aquí está de nuevo para que pueda establecer la marca de verificación.
En
/etc/sudoers, agregue esta línea:para activar el indicador rootpw, haciendo que sudo solicite la contraseña de root.
fuente
visudocomando en lugar de editar manualmente el/etc/sudoersarchivo.visudovalida el archivo para asegurarse de que sea correcto antes de guardar, para que no quedeNecesitas encender la
rootpwbandera.fuente
/etc/sudoerspara habilitar esta bandera?Sé que esta pregunta es antigua, pero es la pregunta más concisa que he encontrado para este caso de uso (que es un porcentaje menor, cierto, pero no obstante legítimo y útil en el escenario correcto).
Después de reunir todos los pasos de varias fuentes, incluidas las respuestas múltiples a esta pregunta, estos pasos funcionan en Ubuntu-Gnome 16.04 LTS:
sudo passwdsudo visudoDefaults rootpwSolo una nota rápida: también quería asegurarme de que el usuario raíz no pudiera ser utilizado para iniciar sesión desde el inicio de sesión gráfico, y por eso estaba buscando formas de excluirlo. Aparentemente, el usuario root está excluido por defecto, y no se puede usar para iniciar sesión a través del inicio de sesión gráfico Gnome, ¡lo cual es algo muy bueno!
fuente
root ALL=(ALL) ALL Defaults targetpw ALL ALL=(ALL) ALLPermite sudo root para cada usuario que conoce la contraseña de root. Cambiar ingenuamente las dos últimas líneas a su soluciónDefaults rootpwprovoca un bloqueo desudo. También debe agregar su usuario para que lesudoersguste:myusername ALL=(ALL) ALLo otorgar privilegios similares a un grupo y luego agregarmyusernamea ese grupo.Una configuración común que requiere la contraseña del objetivo (no lo que queremos):
La segunda línea se leería en voz alta como: "TODOS los usuarios en TODOS los hosts pueden hacerse pasar por (TODOS) usuarios cuando ejecutan TODOS los comandos". y los
Defaults targetpwmedios para que necesiten saber la contraseña del usuario al que suplantan para hacerlo.Cambiando ingenuamente esta configuración simple a:
no dejaría a ningún usuario o grupo con el privilegio de ejecutar comandos como otro usuario.
Una posibilidad de trabajo sería:
En inglés simple,
myuserahora tiene la capacidad de ejecutar TODOS los comandos como cualquier usuario en TODOS los hosts, siempre que se conozca la contraseña de root.Otra posibilidad de trabajo sería:
Cualquier miembro del
sudousersgrupo tendrá la capacidad de ejecutar TODOS los comandos como cualquier usuario en TODOS los hosts, siempre que se conozca la contraseña de root. Para permitirmyuserejecutar comandos sudo,sudousersdebería agregarse a sus grupos secundarios.fuente
Podrías apagar sudo y usar
su -c.fuente
Utilizando
le permitirá ejecutar tantos comandos como desee en sucesión.
fuente
sudopara solicitar la contraseña de root, esto aún permitiría a alguien obtener acceso de root presentando solo una contraseña (no la de root). Por lo tanto, realmente no aborda la preocupación de seguridad que provocó mi pregunta.