Linux

Cómo evitar apagados accidentales en servidores Linux con Molly-Guard

I. Introducción

Al administrar un servidor Linux, un error común es la ejecución involuntaria de comandos críticos como "shutdown" o "reboot", en el servidor equivocado. Esto es aún más probable cuando estás conectado remotamente, vía SSH, a varios servidores.

Si reinicias el servidor de producción en lugar del de desarrollo, puede que a tus usuarios, a tu cliente o a tu jefe no les guste. Para evitar estas paradas o reinicios inoportunos, podemos contar con una práctica herramienta: molly-guard.

Está diseñado para prevenir estas situaciones añadiendo una capa de protección. Como explica la página de molly-guard "Este paquete instala un script intérprete que anula los comandos existentes shutdown/reboot/halt/poweroff/coldreboot/pm-hibernate/pm-suspend* y ejecuta primero un conjunto de scripts, todos los cuales deben completarse con éxito antes de que molly-guard invoque el comando real" .- Así que te protege de ejecutar accidentalmente múltiples comandos.

En este tutorial, exploraremos el funcionamiento conjunto de esta herramienta y veremos cómo instalarla en una máquina Linux, en este caso Debian.

II. Instalación de molly-guard

Para utilizar molly-guard, primero debe instalarlo en su sistema Linux. La herramienta está disponible en los repositorios de muchas distribuciones, incluidas Debian y Ubuntu. Puedes instalarla con el siguiente comando después de actualizar tu caché de paquetes:

sudo apt update
sudo apt install molly-guard

¡Eso es todo! Una vez instalado, molly-guard actúa automáticamente como "quitamiedos" frente a los comandos mencionados en la introducción.

Es interesante ver líneas como la siguiente en la salida del comando de instalación:

Ajout de « détournement de /sbin/halt en /lib/molly-guard/halt par molly-guard »
Ajout de « détournement de /sbin/poweroff en /lib/molly-guard/poweroff par molly-guard »
Ajout de « détournement de /sbin/reboot en /lib/molly-guard/reboot par molly-guard »
Ajout de « détournement de /sbin/shutdown en /lib/molly-guard/shutdown par molly-guard »

III. Cómo funciona molly-guard con SSH

Molly-guard es especialmente útil para los administradores que trabajan a través de SSH. Por defecto, detecta las sesiones SSH abiertas y pide confirmación adicional antes de ejecutar un comando crítico (apagar, reiniciar, etc.).

Conéctese vía SSH al servidor donde ha configurado esta herramienta. Por ejemplo:

ssh flo@srv-dns

A continuación, pruebe un comando como "sudo reboot" para intentar reiniciar el servidor. Molly-guard detectará que está conectado a través de SSH y le pedirá el nombre de la máquina antes de proceder: si introduce el nombre correcto de la máquina y valida, entonces se ejecutará la acción.

sudo reboot

He aquí un ejemplo:

Evite la extinción accidental con Molly-guard

Tenga en cuenta que esta protección se aplica a todos los usuarios, incluso cuando se utiliza "sudo" y la cuenta "root" en vivo.

IV. Activar molly-guard en todas las sesiones

Por defecto, molly-guard sólo está activo en sesiones SSH. Puede activarlo en todos los tipos de sesión, incluyendo el acceso físico (o a través de la consola de una máquina virtual), modificando el archivo de configuración. Aquí está el archivo a modificar:

sudo nano /etc/molly-guard/rc

Debe activar la directiva "ALWAYS_QUERY_HOSTNAME" como se indica a continuación:

ALWAYS_QUERY_HOSTNAME=true

Guarde el archivo y ya está. A partir de ahora, todas las acciones sensibles como "reiniciar" y "parar" estarán sujetas a validación.

sudo reboot
I: molly-guard: reboot is always molly-guarded on this system.
Please type in hostname of the machine to reboot:

V. Conclusión

Simple y eficaz, así es como describiríamos la herramienta Molly-guard: instálela en sus servidores Linux para evitar el uso accidental de comandos de gestión de energía. El error humano no es un mito, existe... Pero ahora puede decir: gracias, Molly.

¿Sabías lo de molly-guard? ¿Qué le parece?

author avatar
Florian Burnel Co-founder of IT-Connect
Systems and network engineer, co-founder of IT-Connect and Microsoft MVP "Cloud and Datacenter Management". I'd like to share my experience and discoveries through my articles. I'm a generalist with a particular interest in Microsoft solutions and scripting. Enjoy your reading.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.