Como sabemos, recibimos actualizaciones del kernel de Linux una y otra vez y es esencial actualizar los parches de seguridad del kernel regularmente para superar la vulnerabilidad del kernel. Es necesario instalar los parches de seguridad más recientes lo antes posible porque si se retrasa con la instalación de los parches, podría generar amenazas para su sistema.
Los sistemas Linux se utilizan para servidores web independientes, aplicaciones web y servicios de alojamiento web. Debido a eso, se convierte en un objetivo importante para los piratas informáticos que utilizan técnicas como ataques DDOS (denegación de servicio), ejecución remota de código (RCE), etc. Mantener los parches de seguridad adecuados y mantener el sistema actualizado ayuda al sistema operativo a reforzar la seguridad contra tales amenazas. Sin embargo, la mayoría de las distribuciones de Linux requieren un reinicio para actualizar el kernel y esto provocará un tiempo de inactividad. También enseñaremos diferentes formas de actualizar el kernel.
Actualizar kernel mediante comando
Actualizar el kernel del sistema operativo Linux a través de la línea de comandos es muy fácil. Simplemente puede ejecutar el comando de actualización del kernel y reiniciar la máquina.
- Ejecute el siguiente comando para actualizar el kernel en CentOS o RHEL u otra distribución basada en RPM.
sudo yum update kernel sudo reboot
- Ejecute el siguiente comando para actualizar el kernel en Ubuntu.
sudo apt-get upgrade linux-image-generic
sudo reboot
- Actualice el kernel en Debian usando el siguiente comando.
sudo apt-get upgrade kernel sudo reboot
Como podemos ver, los comandos anteriores son muy fáciles de ejecutar para la actualización del kernel, ¡pero una cosa que no puede evitar es reiniciar el servidor! Sí, es obligatorio reiniciar el servidor para completar la actualización del kernel. Si está ejecutando estos sistemas operativos para alojar un gran sitio web de comercio electrónico o ejecutar una aplicación web, debe notificar a sus usuarios sobre este mantenimiento y también debe esperar para obtener el servidor después de un reinicio. Para evitar dicho tiempo de inactividad, a veces los administradores del sistema evitan las actualizaciones del kernel y esto se convierte en un grave problema de seguridad.
Actualización con kexec para reinicios rápidos
Kexec ofrece un paso de reinicio muy rápido. Omitirá la carga de arranque y el proceso de inicialización del hardware para acortar el tiempo de reinicio.
Cent OS/RHEL:
- Primero, instale las herramientas kexec ejecutando el siguiente comando.
sudo yum install kexec-tools
- Instalar un nuevo núcleo.
sudo yum update kernel
o
sudo rpm -qa kernel
kernel-3.10.0-514.26.1.el7.x86_64
kernel-3.10.0-1127.el7.centos.plus.x86_64Luego, inicie desde la versión elegida.
sudo kexec -l /boot/vmlinuz-3.10.0-1127.el7.centos.plus.x86_64 \
-initrd=/boot/initramfs-3.10.0-1127.el7.centos.plus.x86_64.img \
-reuse-cmdline
sudo sync; sudo umount -a; sudo kexec -e
Ejecute el siguiente comando para elegir el kernel requerido.
sudo kexec -e
Ubuntu/Debian:
- Instala las herramientas kexec ejecutando el siguiente comando.<
sudo apt-get install kexec-tools
Después de presionar el comando, obtendrá la siguiente pantalla para el reinicio de confirmación usando kexec-tools
- Deberá estar seguro antes de hacer esto porque kexec-tools no usará el comando de reinicio para eliminar los procesos, sincronizar cachés o desmontar el sistema de archivos, y puede causar corrupción o pérdida de datos.
Actualizar kernel sin reiniciar
Es posible actualizar el kernel sin reiniciar. Será útil para los sistemas que se ejecutan en alta disponibilidad. Muchos de los proveedores de distribución de Linux ofrecen actualizaciones del kernel sin realizar un reinicio.
Red Hat Kpatch
Red Hat ofrece su propia herramienta de parcheo del kernel para Fedora, CentOS y otros sistemas basados en Debian como Ubuntu.
- Ejecute el siguiente comando para implementar Kpatch en RHEL7.
sudo yum install kpatch
sudo yum install kpatch-patch-X.X.X.el7.x86_64.rpm
Sin embargo, no es una instalación automática de parches. Debe verificar cada parche del kernel cuando esté disponible.
CloudLinux KernelCare
KernelCare ofrece un servicio de parches de kernel de Linux en vivo que incluye RHEL, CentOS, Oracle, Debian, Ubuntu Linux, etc. También es compatible con versiones anteriores como RHEL 6.
- Ejecute el siguiente comando para instalar kernelcare.
wget -qq -O -- https://kernelcare.com/installer | bash
sudo /usr/bin/kcarectl --register <your key>
Como es una solución de 'instalar y olvidar', kernelCare descarga y aplica nuevos parches de seguridad del kernel automáticamente sin reiniciar.
KernelCare también ofrece parches de seguridad más complejos para vulnerabilidades como Spectre (CVE-2017-5753,CVE-2017-5715) y Meltdown (CVE-2017-5754). También admite reversiones sin reinicio, parches de fecha fija, parches retrasados, etc. CloudLinux kernelcare no es gratuito. Ofrecen 7 días de prueba gratis después de eso será pago.
Oracle Ksplice
Ksplice es una versión paga para actualizar el kernel sin tener que reiniciar.
- Ejecute el siguiente comando para instalar Ksplice.
sudo wget -N https://ksplice.oracle.com/uptrack/install-uptrack-oc sudo sh install-uptrack-oc -autoinstall
Usando Ksplice, solo necesita ejecutar el script de instalación solo una vez de por vida y luego Uptrack se encargará e implementará automáticamente el último kernel sin tiempo de inactividad.
Servicio Livepatch canónico
Esta es la tecnología de Canonical para (¿adivina qué?) Kernels parcheados en vivo. (Canonical es la compañía detrás de la popular distribución Ubuntu Linux). Incluso puede crear sus propios parches, aunque puede ser un trabajo difícil y lento. (Algunos proveedores crearán un kernel de actualización de Ubuntu para usted, por una tarifa).
Canonical es una empresa de software popular para la distribución de Linux basada en Ubuntu. El siguiente comando será útil para Ubuntu 16.04 y versiones posteriores, y RHEL 7.x (beta).
Deberá ejecutar el siguiente comando para implementar el parche en vivo.
sudo snap install canonical-livepatch
sudo canonical-livepatch enable [TOKEN]
Canonical Livepatch ofrece un servicio gratuito para hasta 3 distribuciones de Ubuntu. Buscando registrarse para el token. Haga clic aquí para registrarse.