¿No es Ctrl-Alt-Delete en Linux * realmente * peligroso?

55

¿La funcionalidad predeterminada Ctrl-Alt-Delete shutdown -ren los sistemas Linux es una característica peligrosa?

Hace años, cuando implementé sistemas físicos con teclados y monitores conectados, a veces modificaba los /etc/inittabsistemas Red Hat para deshabilitar la trampa de reinicio. Esto generalmente sucedió después de que una persona de TI local o un administrador de Windows usara accidentalmente la combinación de teclas mágicas en el terminal / teclado / ventana incorrectos y reiniciara su servidor.

# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now

No he hecho esto desde los días RHEL4, pero los sistemas más nuevos parecen tener un /etc/init/control-alt-delete.confarchivo para esto.

En los años posteriores, la mayoría de mis sistemas se han implementado sin cabeza o se ejecutan como máquinas virtuales. Esto ha reducido la frecuencia de reinicios no intencionados ... sin embargo, he tenido un conjunto reciente de ctrl-alt-delete oopses de:

1) un IP KVM conectado al servidor incorrecto por el personal del centro de datos.
2) un administrador de Windows que usa la combinación de teclas en una consola VMware, pensando que era necesario para iniciar sesión.
3) Me usando la macro Ctrl-Alt-Delete en una consola HP OIT para reiniciar un CD en vivo ... pero en realidad fue la OIT para un servidor de producción muy ocupado .

ingrese la descripción de la imagen aquí


  • ¿Tiene sentido deshabilitar el reinicio Ctrl-Alt-Delete en Linux de forma predeterminada?
  • ¿Es esta una preocupación común, o generalmente ignorada?
  • ¿Hay alguna desventaja en hacerlo?
  • ¿Cómo manejas esto en tu entorno?

Editar: De hecho, acabo de encontrar este servidor , una máquina virtual que se ejecutó durante 1,115 días, se desconocía la contraseña de root y no se instalaron las herramientas de VMware ( por lo que Ctrl-Alt-Delete sería la única opción de apagado elegante ).

ewwhite
fuente
77
No, porque si no puede reiniciar una computadora arbitraria en su red, tiene mayores problemas. Ver, por ejemplo, el mono del caos.
dmourati
15
@dmourati Eso no es cierto. Los sistemas de línea de negocio del mundo real no siempre se ejecutan como aplicaciones de escala web . Es irresponsable sugerir que es una falla arquitectónica.
ewwhite
8
Incluso si pudiera reiniciar un sistema arbitrario, no querría hacerlo. En un escenario de TI del mundo real, solo querría tener reinicios planificados cuando sea ​​necesario . Las oopsies siempre son malas, y deben evitarse, y esta pregunta es sobre las oopsies.
Journeyman Geek
66
@fduff En el caso del sistema de producción que reinicié este fin de semana, causó unos 13 minutos de tiempo de inactividad porque el servidor tarda mucho en POST, además la aplicación no se cayó limpiamente (no se controla mediante scripts de inicio), lo que permitió a ~ 45 minutos de reparación de la base de datos después del reinicio.
ewwhite
66
@JamesRyan Quizás. Pero no siempre. Si los usuarios / administradores de Windows están condicionados a usar Ctrl-Alt-Delete para activar una pantalla o autenticar, es un error comprensible. En las situaciones OIT / IPMI / KVM, sí, se podría tener más cuidado para identificar sistemas, pero eso no siempre es posible ... ( por ejemplo, confiar en manos remotas en un centro de datos )
ewwhite

Respuestas:

37

Esto puede ser útil para máquinas muy, muy raramente tocadas. Años después de la instalación, si nadie puede recordar un inicio de sesión para el host, Ctrl-Alt-Delete hará el apagado correcto y luego le permitirá usar GRUB (¡o incluso LiLo!) Para suministrar rw init=/bin/bashal núcleo y así darle la oportunidad de restablecer La contraseña de root .

Lo anterior también es una forma en que Ctrl-Alt-Delete es peligroso incluso si se impide el acceso físico a los interruptores de encendido / reinicio y cables de alimentación. Una contraseña del cargador de arranque (y la contraseña del BIOS más la desactivación del arranque USB / CD-ROM y la tecla del menú de arranque) pueden evitar esto, pero dificultan la recuperación de emergencia legítima.

Alastair Irvine
fuente
3
Tienes razón. Yo he utilizado esta característica de esta manera en la situación que usted describe.
ewwhite
Aun así, es más fácil cargar un medio de "rescate", montar e ingresar el hash de una contraseña conocida. A través de IPMI, carga los medios desde un archivo iso, haciendo que todo el problema de "acceso físico" sea discutible. O carga desde una configuración especial tftp / pxe, después de habilitar el arranque desde la red.
Dani_l
Creo que lo que mencioné sobre la contraseña y las opciones del BIOS todavía se aplica al usar IPMI. Me encantaría saber si eso es incorrecto.
Alastair Irvine
1
No estoy de acuerdo con los medios de rescate. No es difícil recordar las opciones de kernel que mencioné. Su método requiere medios ópticos (o un archivo ISO bajo IPMI) y un hash de contraseña, que debe escribirse o copiarse desde el almacenamiento USB. (Si votó en contra, por favor deshaga).
Alastair Irvine
1
@AlastairIrvine No voté en contra, y tienes razón sobre ipmi: una consola ipmi te dará acceso a la consola de la máquina durante todo el proceso de arranque, incluida la introducción de la BIOS para que enfrentes los mismos problemas. Sin mencionar que el servidor HW que se respeta a sí mismo debería tener la capacidad de facilitar el cambio de parámetros desde el sistema operativo en ejecución (por ejemplo, ASU ibm.com/support/entry/myportal/docdisplay?lndocid=TOOL-ASU de IBM ).
Dani_l
7

Si tiene OIT / IPMI / ... Tiene mucho sentido. La única razón para CTRLALTDEL era una trampa mágica cuando nada más lo interrumpiría. Con una tarjeta de control, no necesita eso: puede reiniciar la máquina de todos modos. Huelga decir que si la máquina se comporta correctamente, siempre puede 'reiniciar' / 'apagar -r ahora' / 'init 6' / 'reiniciar systemctl' desde la consola o la interfaz gráfica de usuario.

Dani_l
fuente
4

Siento que las posibilidades de reinicio accidental a través de ctrl-alt-delete son mucho mayores que las posibilidades de que se olvide la contraseña raíz de un servidor, y por lo tanto, en entornos de producción, tiene sentido deshabilitar ctrl-alt-delete. Yo personalmente hago esto en mis sistemas de producción.

Las posibilidades de que un ciclo de energía duro en un host Linux en ejecución cause daños irrecuperables en los datos son pequeñas. En las cientos de veces que he hecho esto a lo largo de los años, no puedo recordar una sola instancia en la que el sistema no haya podido solucionarse (fsck) en el arranque. Por lo tanto, considero que esta es una opción válida en los hosts donde se desconoce la contraseña de root, salvo la disponibilidad de otros métodos para el apagado correcto.

Michael Martinez
fuente
1
¿Cómo deshabilita la opción ctrl-alt-delete en la máquina VM alojada en el servidor Esx?
kvivek