Tenemos máquinas que ejecutan distribuciones basadas en RedHat como CentOS o Scientific Linux. Queremos que los sistemas nos notifiquen automáticamente si hay vulnerabilidades conocidas en los paquetes instalados. FreeBSD hace esto con el puerto ports-mgmt / portaudit .
RedHat proporciona yum-plugin-security , que puede verificar vulnerabilidades mediante su ID de Bugzilla, ID de CVE o ID de aviso. Además, Fedora recientemente comenzó a admitir yum-plugin-security . Creo que esto se agregó en Fedora 16.
Scientific Linux 6 no era compatible con yum-plugin-security a finales de 2011 . Se envía con /etc/cron.daily/yum-autoupdate
, que actualiza RPM diariamente. Sin embargo, no creo que esto maneje solo las actualizaciones de seguridad.
CentOS no es compatibleyum-plugin-security
.
Superviso las listas de correo de CentOS y Scientific Linux en busca de actualizaciones, pero esto es tedioso y quiero algo que pueda automatizarse.
Para aquellos de nosotros que mantenemos los sistemas CentOS y SL, ¿hay alguna herramienta que pueda:
- Automáticamente (de forma progamática, a través de cron) nos informa si hay vulnerabilidades conocidas con mis RPM actuales.
- Opcionalmente, instale automáticamente la actualización mínima requerida para abordar una vulnerabilidad de seguridad, que probablemente estaría
yum update-minimal --security
en la línea de comandos.
He considerado usar yum-plugin-changelog
para imprimir el registro de cambios para cada paquete, y luego analizar el resultado de ciertas cadenas. ¿Hay alguna herramienta que ya haga esto?
Respuestas:
Si absolutamente quieres usar
yum security plugin
, hay una manera de hacerlo, aunque un poco elaborada. Pero una vez que lo tiene configurado, todo está automatizado.El único requisito es que deberá tener al menos una suscripción a RHN. Lo cual es una buena inversión de la OMI, pero vamos al grano.
yum security
.modifyrepo
comando como se muestra aquí , para inyectarupdateinfo.xml
enrepomd.xml
. Antes de hacer esto, tendrá que modificar el script perl para cambiar las sumas de Rpm MD5 dentro del xml, de las sumas de RHN a Centos. Y tendrá que asegurarse de que los repositorios CentOS realmente tengan todos los Rpms mencionadosupdateinfo.xml
, ya que a veces están detrás de RHN. Pero está bien, puede ignorar las actualizaciones que CentOS no ha alcanzado, ya que hay poco que pueda hacer al respecto, salvo construirlas a partir de los SRPM.Con la opción 2, puede instalar el
yum security
complemento en todos los clientes y funcionará.Editar: Esto también funciona para las máquinas Redhat RHEL 5 y 6. Y es más simple que usar una solución pesada como Spacewalk o Pulp.
fuente
Scientific Linux ahora puede enumerar actualizaciones de seguridad desde la línea de comandos. Además, puedo actualizar un sistema para aplicar solo actualizaciones de seguridad, lo cual es mejor que el predeterminado ("¡Solo actualice todo! Incluyendo correcciones de errores que no le interesan y que introducen regresiones".
He probado esto tanto en Scientific Linux 6.1 como en 6.4. No estoy seguro de cuándo se anunció oficialmente, pero publicaré más cuando me entere.
Aquí hay unos ejemplos.
Enumere un resumen de las actualizaciones de seguridad:
Lista por CVE:
Y luego puedo aplicar el conjunto mínimo de cambios necesarios para
O simplemente parchear todo:
Si intento este mismo comando en un cuadro CentOS6, no obtengo ningún resultado. Sé con certeza que algunos de los '137 paquetes disponibles' contienen correcciones de seguridad, porque ayer recibí los avisos de erratas a través de las listas de correo de CentOS.
fuente
Yo tuve el mismo problema. Intenté crear un código de Python para reunir las actualizaciones de Yum y los avisos del sitio de erratas steve-meier mencionado anteriormente (lo filtro en función de los paquetes instalados).
En caso de que ayude, aquí está la fuente: https://github.com/wied03/centos-package-cron
fuente
Como tiene CFEngine, puede aplicar cambios a grupos de sistemas a la vez en función de las actualizaciones de seguridad publicadas en: http://twitter.com/#!/CentOS_Announce
No soy el mayor ingeniero de seguridad de servidores que existe ... pero tiendo a descubrir que solo me interesan algunos paquetes cuando se trata de seguridad. Cualquier cosa que sea pública (ssl, ssh, apache) o que tenga un exploit importante tiene prioridad. Todo lo demás se evalúa trimestralmente. No quiero que estas cosas se actualicen automáticamente porque los paquetes actualizados pueden potencialmente romper otros elementos en un sistema de producción.
fuente
Scientific Linux (al menos 6.2 y 6.3; yo no tiene ningún 6.1 Sistemas de la izquierda) no sólo es compatible
yum-plugin-security
, pero el archivo de configuración parayum-autoupdate
,/etc/sysconfig/yum-autoupdate
, le permite habilitar sólo la instalación de actualizaciones de seguridad.fuente
En CentOS puedes usar
en lugar de yum-plugin-security, o tal vez quieras probar este escaneo de script basado en las noticias de seguridad de CentOS: LVPS .
fuente
yum list updates
enumerará todas las actualizaciones, cuando quiera enumerar solo las actualizaciones de seguridad .yum list updates --security
no funciona (tal vez necesita un complemento)También puedes probar el proyecto generate_updateinfo . Es un script de Python que procesa
errata.latest.xml
archivos compilados por el proyecto CEFS y generaupdateinfo.xml
archivos con metadatos de actualizaciones de seguridad. Luego puede inyectarlo en su repositorio local de actualizaciones CentOS 6 (7). Es bastante sencillo integrarlo con repositorios personalizados / locales creados porcreaterepo
comando:reposync
comandocreaterepo
comandoupdateinfo.xml
archivos congenerate_updateinfo.py
scriptmodifyrepo
comandofuente
En CentOS6, puede usar el complemento yum-security:
Comprobar con:
Este comando devuelve el código 0 si no hay actualizaciones de seguridad disponibles.
En combinación con yum-cron, puede recibir un correo electrónico solo con las actualizaciones de seguridad disponibles modificando el archivo / etc / sysconfig / yum-cron:
fuente
yum --security check-update
, el comando regresa conNo packages needed for security; 137 packages available
. Sé con certeza que algunas de las actualizaciones disponibles contienen correcciones de seguridad. Las actualizaciones están disponibles en el repositorio 'base' de CentOS, pero no están marcadas como soluciones de seguridad. CentOS no proporciona actualmente un repositorio yum para los parches de seguridad, a diferencia de Red Hat, Scientific Linux y EPEL.