ClickCease Actualizar el kernel de Linux sin reiniciar [Visión general de las herramientas Live Patching] - TuxCare

Únase a nuestro popular boletín

Únase a más de 4.500 profesionales de Linux y el código abierto.

2 veces al mes. Sin spam.

Actualización del núcleo de Linux sin reinicios [Visión general de las herramientas de Live Patching].

25 de junio de 2020 - Equipo de RRPP de TuxCare

Actualizar el núcleo de Linux sin reiniciar - Visión general de las herramientas de parcheo en vivo

Actualizar el núcleo de Linux es una rutina tan aburrida como los impuestos y sólo un poco menos incómoda que la muerte. Las nuevas vulnerabilidades de seguridad en el kernel de Linux parecen aparecer con tediosa regularidad e incluso reciben nombres extravagantes. En la mayoría de los casos, aunque no en todos, los parches necesarios para solucionarlas no se hacen esperar. Parchear el kernel con las últimas actualizaciones de seguridad del kernel de Linux conlleva trabajo y peligro si te retrasas: si lo dejas demasiado tiempo, los malos actores podrían aprovecharse del periodo de vulnerabilidad.

En nuestra anterior entrada del blog sobre, discutimos Cómo actualizar el kernel de Linux con 3 formas diferentes, dos de los cuales (utilizando la línea de comandos / yum y kexec) requieren un reinicio del servidor.

Es hora de revisar otra forma de actualizar la seguridad del kernel de Linux: el parcheado en vivo del kernel sin reinicio. Sigue leyendo para saber más sobre cada herramienta de live patching y sus alternativas.

 


Aplicación de actualizaciones del kernel de Linux sin reiniciar

Hay ocasiones en las que los parches de seguridad son supercríticos, pero también lo son los procesos que se detienen al reiniciar. Si estás ejecutando un sistema "siempre activo" o de "alta disponibilidad", ya estarás familiarizado con este dilema.

Las actualizaciones del núcleo Linux sin reinicio no sustituyen a las actualizaciones completas del núcleo, ya que sólo aplican parches para vulnerabilidades de seguridad o correcciones de errores críticos. Pero, en muchos casos, esto es todo lo que necesitas, y es posible mantener un servidor seguro y funcionando durante años entre reinicios utilizando estos métodos.

Varios de los principales proveedores de Linux ofrecen actualizaciones del kernel sin reinicio. El que elijas dependerá de la distribución que utilices y de tu presupuesto. En el resto de este artículo hablaremos de los siguientes productos:

 

  • Ksplice de Oracle (para actualizaciones de Oracle Linux, Ksplice Uptrack para empresas)
  • Kpatch de Red Hat (para actualizaciones del kernel de RHEL y CentOS)
  • Livepatch de Canonical (para actualizaciones del núcleo de Ubuntu)
  • Kgraft de SUSE (sólo para actualizaciones de SUSE)
  • CloudLinux KernelCare (para las principales distribuciones de Linux)

Obtenga una prueba GRATUITA de 7 días con soporte de KernelCare 

 

 


Oracle Ksplice ksplice_logo

Ksplice fue la primera implementación comercial de actualización del núcleo sin reinicio. Ksplice Inc. fue finalmente adquirida por Oracle, por lo que ahora sólo está disponible (como era de esperar) en las distribuciones Oracle Linux y RedHat Enterprise Linux, y la implementación necesita una licencia de Oracle.

 

Blog Pros KernelCare

  • No es necesario reiniciar.
  • Actualizaciones automáticas.
  • Disponible gratuitamente en instalaciones Linux de escritorio, con soporte oficial disponible para las distribuciones Linux Fedora y Ubuntu.

Cuadro 2

  • Sólo funciona para Oracle Linux, Red Hat Enterprise Linux, CentOS y Ubuntu.
  • Requiere una licencia de soporte y su precio es a partir de 1.399 dólares anuales por sistema.

Para desplegarlo, ejecute:

sudo wget -N https://ksplice.oracle.com/uptrack/install-uptrack-oc
sudo sh install-uptrack-oc -autoinstall

 

Tenga en cuenta que no hay comando de reinicio y que sólo necesita ejecutar el script de instalación una vez durante la vida útil del servidor. Después de eso, el servicio Uptrack detectará automáticamente las nuevas actualizaciones del kernel y las desplegará por ti. No hay que programar, ni tiempo de inactividad, ni nada más que hacer.

 


 

Servicio Livepatch de Canonical 1200px-Logotipo_canónico.svg

Esta es la tecnología de Canonical para live-patching kernels. Usted puede incluso crear sus propios parches, aunque puede ser un trabajo difícil y lento. Algunos proveedores crearán un núcleo de actualización de Ubuntu para usted, por una tarifa. El servicio está disponible para Ubuntu 16.04 y posteriores.

Blog Pros KernelCare

  • No es necesario reiniciar.
  • Actualizaciones automáticas del kernelGratis para uso personal (hasta 3 máquinas o hasta 50 máquinas para miembros reconocidos de la Comunidad Ubuntu)

Cuadro 2

  • Parches personalizados no triviales para el kernel.
  • Se admiten distribuciones limitadas.
  • Límite del número de hosts actualizables.
  • Hosts adicionales de pago: el precio de la suscripción al soporte de Ubuntu Advantage (al menos Essential) comienza entre 225 y 1.500 $/máquina/año en servidores físicos, y entre 75 y 500 $/máquina/año en máquinas virtuales.

 

Se despliega así:

sudo snap install canonical-livepatch
sudo canonical-livepatch enable [TOKEN]

El servicio Canonical Livepatch es gratuito para hasta 3 máquinas para uso personal o hasta 50 máquinas para los miembros de la Comunidad Ubuntu. Puede registrarse para obtener un token aquí.

 

 


 

Red Hat Kpatch eb5c4d17e2b04c612fba7bae31a08c59

Esta es la herramienta de parcheo del kernel propia de Red Hat. Se anunció en 2014 y se ha adaptado para funcionar en otros sistemas de la misma familia (Fedora, CentOS), así como en algunos sistemas basados en Debian (Ubuntu, Gentoo).

 

Blog Pros KernelCare

  • No es necesario reiniciar.

Cuadro 2

  • No está automatizado.
  • Distribuciones limitadas.
  • Disponible con una suscripción de asistencia Premium por 1299 $ al año.

 

He aquí un ejemplo de despliegue en RHEL 7:

sudo yum install kpatch
sudo yum install kpatch-patch-X.X.X.el7.x86_64.rpm

A diferencia del servicio Livepatch de Ubuntu o Ksplice de Oracle, no es automático, y debe comprobar e instalar manualmente cada parche del kernel a medida que esté disponible.

 


 

SUSE Kgraft suse_logo_color

Desarrollado y anunciado casi al mismo tiempo que la solución de Red Hat, Kgraft es la oferta de parches en vivo de SUSE (conocida como SUSE Linux Enterprise Live Patching). Es sólo para el propio Linux Enterprise Server 12 de SUSE, y viene preinstalado, por lo que realmente no hay nada que hacer (excepto pagar por él). Funciona según un principio diferente al de la mayoría de los demás enfoques, pero tiene un conjunto de características comparable al de Kpatch.

 

Blog Pros KernelCare

  • No necesita instalación.
  • No es necesario reiniciar.

Cuadro 2

  • Compatible con una sola plataforma.
  • Comercial (pero hay una generosa prueba gratuita de 60 días).

 


 

CloudLinux KernelCare kernelcare_black abd azul

También lanzado en 2014, el servicio de parcheo en vivo del kernel Linux de KernelCare destaca entre las soluciones de parcheo del kernel por su cobertura de SO, que incluye CentOS, RHEL, Oracle Linux, Debian, Ubuntu y otros. Y al igual que la solución de Oracle, KernelCare es compatible con los núcleos antiguos 2.6.32 de RHEL 6.

 

Blog Pros KernelCare

  • Fácil de instalar.
  • No es necesario reiniciar.
  • Amplia cobertura de sistemas operativos (incluido Ubuntu, uno de los Linux más populares).
  • Admite parches personalizados y de fecha fija.
  • Buen soporte y conocimiento del sector por parte de CloudLinux.

Cuadro 2

 

A continuación se explica cómo instalar KernelCare:

wget -qq -O -- https://kernelcare.com/installer | bash
sudo /usr/bin/kcarectl --register <your key>

For <your key> get your trial key here.

 

KernelCare es una solución de "instalar y olvidar". Una vez instalado, KernelCare descarga y aplica automáticamente nuevos parches de seguridad del kernel, sin reiniciar el servidor.

 

Pero a diferencia de sus competidores más cercanos, KernelCare puede gestionar algunos de los parches más complejos para vulnerabilidades como Meltdown(CVE-2017-5754), Spectre(CVE-2017-5753 y CVE-2017-5715) y, más recientemente, el fallo de desbordamiento de búfer del núcleo de Linux conocido, románticamente, como Mutagen Astronomy(CVE-2018-14634). KernelCare admite configuraciones de parches personalizadas, parches de fecha fija, parches retrasados y reversiones sin reinicio, es decir, eliminaciones de parches.

Diagrama del proceso de parcheo (1)

Al igual que los demás proveedores aquí considerados, KernelCare también procede de una buena línea sanguínea: su creador es CloudLinux, el principal proveedor de sistemas operativos basados en Linux para alojamiento web.


 

Conclusión

Si tu servidor no es crítico y puede soportar un periodo sin conexión, actualizar el kernel es relativamente indoloro utilizando las herramientas estándar de la línea de comandos.

Si utilizas un sistema siempre activo (es decir, que no puedes o no quieres reiniciar), echa un vistazo a las soluciones de parcheado del kernel en vivo. Existen tres tipos:

  1. Administrado: tienes que hacerlo tú mismo. Por ejemplo, Kpatch, Kgraft.
  2. Totalmente automático:lo hace por usted. Por ejemplo, Livepatch, Ksplice.
  3. Totalmente automático, multiplataforma avanzado:lo hace por usted, gestionando amenazas avanzadas en todas las plataformas. Por ejemplo, KernelCare de CloudLinux.

Si desea obtener más información sobre la tecnología de parcheo en directo y cómo mejora la seguridad de su infraestructura, lea nuestras entradas de blog más populares:

¿Has tenido alguna vez la oportunidad de utilizar las herramientas de live patching del kernel de Linux? ¿Cuál te ha parecido más útil para tu empresa? Comparte tu opinión en los comentarios.

¿Desea automatizar la aplicación de parches de vulnerabilidad sin reiniciar el núcleo, dejar el sistema fuera de servicio o programar ventanas de mantenimiento?

Más información sobre Live Patching con TuxCare

Conviértete en escritor invitado de TuxCare

Empezar

Correo

Únete a

4,500

Profesionales de Linux y código abierto

Suscríbase a
nuestro boletín