Puedes agregar una línea como
%admin ALL = !/bin/rm -rf /
a su sudoers
archivo para evitar la ejecución del comando con las opciones específicas.
O, si desea excluir varios comandos, puede trabajar con alias de comando
Cmnd_Alias DANGEROUS_CMNDS=/bin/rm -rf /, /bin/rm -fr /
%admin ALL=!DANGEROUS_CMNDS
También puedes intentar ir a lo seguro usando
Cmnd_Alias DANGEROUS_CMNDS=/bin/rm -rf /, /bin/rm -fr /, /bin/rm / *, /bin/rm * /, /bin/rm -rf / *, /bin/rm -rf * /, /bin/rm -fr / *, /bin/rm -fr* /
%admin ALL=!DANGEROUS_CMNDS
pero aún puede haber otras formas en las que puedes dispararte en el pie, rm
así que ten cuidado de todos modos.
Pero tenga en cuenta que todas las coincidencias se realizan en la cadena completa del comando, por sudo rm -rf /Volumes
lo que aún funcionaría (como lo haría cd /; sudo rm -rf .
).
PD: Por supuesto, úselo sudo visudo
para editar el sudoers
archivo y NUNCA lo edite directamente
PPS: obviamente no probé esto con rm
(solo con en su /bin/echo
lugar)