Amazon Kernel Live Patching: Visión general de Live Patching para empresas
Sabemos que la actualización frecuente de los kernels de Linux es fundamental para la seguridad de los entornos en nube; al fin y al cabo, los kernels lo son, un punto ciego en materia de ciberseguridad. Pero actualizar los kernels lleva mucho tiempo y a menudo requiere reiniciar el servidor, lo que puede interrumpir los servicios.
Por eso es tan importante la aplicación de parches en vivo en el kernel y por eso Amazon ofrece la posibilidad de aplicar automáticamente parches en las instancias de Amazon Linux 2. En este artículo, explicamos cómo funcionan los parches en vivo de los kernels de Linux en AWS, por qué los parches en vivo de Amazon podrían no ser la mejor solución - y qué puede hacer para aplicar parches en vivo si sus servidores Linux no están alojados con AWS.
Contenido:
¿Qué es Amazon Kernel Live Patching y por qué lo necesitas?
La gestión de parches es un problema importante para las empresas grandes y pequeñas. Todos los días de la semana se descubren, explotan y parchean vulnerabilidades de seguridad. De hecho, el kernel de Linux se parchea innumerables veces al año, y si no se aplican los parches, los delincuentes pueden explotar un kernel vulnerable.
De hecho, a nivel empresarial la aplicación de parches en el núcleo se ha convertido en una cuestión de cumplimiento. Las grandes organizaciones deben aplicar parches con frecuencia porque, si no lo hacen, una brecha puede provocar una pérdida de datos que afecte a un gran número de personas, con importantes consecuencias.
Pero la aplicación frecuente de parches puede implicar interrupciones constantes del servicio, ya que los servidores Linux se desconectan para reiniciarse. Estos esfuerzos continuos de parcheado y reinicio también consumen una gran cantidad de tiempo. Esto conduce a un difícil dilema. Elegir entre una aplicación de parches cara y molesta, o vivir con un grado de riesgo inaceptable.
Los parches en vivo son la respuesta, y por eso Amazon ha lanzado la tecnología de parches en vivo para las instancias de Linux 2 que se ejecutan en AWS. La aplicación de parches en vivo es compatible cuando se utiliza Amazon Linux 2 y la versión del kernel es 4.14.165-131.185 o posterior.
Tenga en cuenta que Amazon Linux 2 Kernel Live Patching sólo funciona en entornos x86_64, ARM64 no es compatible. Los servidores Linux basados en ARM también necesitan live patchingpor supuesto, y existe una solución alternativa para las organizaciones que ejecutan cargas de trabajo ARM - a través de KernelCare.
¿Qué parches puede aplicar Amazon Kernel Live Patching?
AWS ofrece la posibilidad de aplicar dos tipos de parches del kernel sin reiniciar el servidor Linux. En primer lugar, puede aplicar las correcciones de errores típicas que publica Amazon, incluidos los parches del kernel que pretenden mejorar la estabilidad de los servidores Amazon Linux 2.
Y lo que es más importante, gracias a los parches en vivo, su organización puede garantizar que las actualizaciones de seguridad críticas se apliquen rápidamente sin necesidad de desconectar los servidores. Nos referimos a los CVE, por supuesto, vulnerabilidades y exposiciones comunes de Linux.
Cuando Amazon Linux Security Advisory califique una CVE como importante o crítica, esta actualización se incluirá en el régimen de parches activos. También hay casos en los que Amazon puede poner a disposición un parche activo incluso cuando aún no se ha asignado una CVE.
Tenga en cuenta que hay un límite de tiempo para la disponibilidad de parches activos: sólo puede parchear un núcleo hasta tres meses después de su publicación.
Cómo activar Amazon Kernel Live Patching
Tiene varias opciones a la hora de iniciar y utilizar parches en vivo en instancias de Amazon Linux 2. En primer lugar, puede iniciar el uso de parches activos en cada instancia individual mediante la línea de comandos. Su otra opción es automatizar la aplicación de parches en vivo a través de AWS Systems Manager, donde puede aplicar parches en vivo a un grupo de instancias.
Si decide habilitar live patching en una instancia Linux en particular, Amazon proporciona una guía completa para habilitar live patching a través de la línea de comandos. Necesitarás algunas cosas para empezar: debes instalar el plugin yum y asegurarte de que tienes binutils instalado.
Ten en cuenta que también tienes que comprobar primero la versión de tu kernel: si tiene más de tres meses, el primer paso es instalar la última versión del kernel.
Una vez instalados los componentes para la aplicación de parches en tiempo real, puede iniciar el servicio kpatch. A través de la línea de comandos, puede ver todos los parches disponibles, aplicar un parche seleccionado en vivo sin reiniciar la instancia, y también ver una lista de todos los parches ya aplicados.
Live Patching con AWS Systems Manager (SSM)
Las acciones de la línea de comandos pueden ayudarle a garantizar que una única instancia de Linux se mantiene actualizada y parcheada, pero a escala empresarial, la aplicación de parches en vivo puede implicar a cientos o miles de servidores Amazon Linux 2.
Las organizaciones que operan flotas de sistemas Amazon EC2 no pueden permitirse iniciar manualmente la aplicación de parches en todos y cada uno de los servidores mediante la línea de comandos. En su lugar, AWS Systems Manager (SSM) le ayuda a automatizar el proceso de administración de parches, incluidos los parches en vivo.
Los parches en vivo se aplican en la consola de Amazon Systems Manager mediante el comando Run y eligiendo un documento personalizado de Systems Manager llamado AWS-ConfigureKernelLivePatching, puede editar este documento para satisfacer sus necesidades.
Mediante el uso de Systems Manager puede parchear en vivo flotas tanto de instancias EC2 como de servidores ubicados en sus instalaciones - incluyendo máquinas virtuales utilizando las funciones integradas de Systems Manager - el comando Ejecutar y los Documentos descritos anteriormente, y también puede hacer uso de la Ventana de Mantenimiento.
Desventajas de Amazon Kernel Live Patching
Amazon ha hecho un buen esfuerzo con los parches en vivo, pero hay algunos puntos a tener en cuenta en torno al uso de la herramienta de parches en vivo de Amazon para parchear las instancias de Amazon Linux 2 - empezando por el hecho de que los servidores ARM64 no son compatibles.
Sin embargo, hay un problema importante en torno a la versión del kernel. Incluso si aplica todos los parches mediante live patching, el kernel de su servidor no se actualizará a la última versión hasta que reinicie el servidor. En otras palabras, tu servidor puede estar al día con las últimas actualizaciones pero seguir mostrando una versión antigua del kernel.
Cualquier herramienta de cumplimiento que pueda estar utilizando reflejará esta versión antigua, lo que puede ser problemático. Además, el parcheado del kernel en vivo de Amazon interferirá con las funciones estándar de rastreo del kernel, lo que puede limitar la funcionalidad de algunas de las herramientas de depuración que utilices, incluidas kprobes y SystemTap.
Por supuesto, también existe el límite de una ventana de tres meses: su instancia sólo recibirá parches activos durante tres meses; si su núcleo no se ha actualizado en tres meses, los parches activos dejarán de estar disponibles.
Alternativas a Amazon Kernel Live Patching
Las empresas que hacen un uso estándar de las instancias de Amazon Linux 2 en x86_64 (es decir, silicio Intel o AMD) bien pueden encontrar que la herramienta de live patching incorporada de Amazon funciona adecuadamente, siempre que las instancias implicadas se ajusten a un patrón específico y que no existan requisitos de casos de uso que entren en conflicto con las restricciones impuestas por el régimen de live patching de Amazon.
Sin embargo, existen alternativas cuando las empresas utilizan servidores basados en ARM o cuando los parches en vivo ofrecidos por Amazon no cumplen los requisitos. Una de ellas, por supuesto, es KernelCare de CloudLinux. CloudLinux es socio tecnológico avanzado de AWS Partner Network (APN).
La compatibilidad con los procesadores AWS Graviton2 ARM64 es solo una de las muchas ventajas de utilizar KernelCare para la aplicación de parches en vivo a instancias de Linux en AWS. Consulte nuestra comparación completa de herramientas de live patching para obtener más detalles.
O descargue KernelCare directamente de AWS Marketplace y pruébelo.
Consulte otros resúmenes de servicios de live patching:
Visión general de los servicios Enterprise Live Patching: Ksplice en primer plano
Visión general de los servicios Enterprise Live Patching: Canonical Livepatch en primer plano
Visión general de los servicios Enterprise Live Patching: kpatch en primer plano
