Frage Automatisch nach Sicherheitsupdates auf CentOS oder Scientific Linux suchen?


Wir haben Maschinen mit RedHat-basierten Distributionen wie CentOS oder Scientific Linux. Wir möchten, dass die Systeme uns automatisch benachrichtigen, wenn bekannte Sicherheitslücken in den installierten Paketen bestehen. FreeBSD macht das mit dem ports-mgmt / portaudit Hafen.

RedHat bietet Yum-Plugin-Sicherheit, die mit ihrer Bugzilla-ID nach Sicherheitslücken suchen können, CVE ID oder Advisory ID. Außerdem hat Fedora kürzlich damit begonnen, zu unterstützen Yum-Plugin-Sicherheit. Ich glaube, dass dies in Fedora 16 hinzugefügt wurde.

Scientific Linux 6 nicht unterstütze yum-plugin-security seit Ende 2011. Es wird mit geliefert /etc/cron.daily/yum-autoupdate, die RPMs täglich aktualisiert. Ich glaube nicht, dass dies nur Sicherheitsupdates behandelt.

CentOS tut es nicht unterstützt yum-plugin-security.

Ich überwache die CentOS und Scientific Linux Mailinglisten auf Updates, aber das ist mühsam und ich möchte etwas, das automatisiert werden kann.

Für diejenigen von uns, die CentOS und SL-Systeme pflegen, gibt es irgendwelche Werkzeuge, die:

  1. Informieren Sie uns automatisch (Progamatisch, über Cron), ob bei meinen aktuellen RPMs Schwachstellen bekannt sind.
  2. Optional installieren Sie automatisch das erforderliche Mindest-Upgrade, um eine Sicherheitslücke zu schließen, was wahrscheinlich der Fall ist yum update-minimal --security auf der Kommandozeile?

Ich habe überlegt zu verwenden yum-plugin-changelog um das Änderungsprotokoll für jedes Paket auszugeben und dann die Ausgabe für bestimmte Zeichenfolgen zu analysieren. Gibt es irgendwelche Werkzeuge, die das schon machen?


19
2018-03-14 22:19


Ursprung


Haben Sie ein Konfigurationsmanagementsystem installiert? Marionette? CFE-Engine? - ewwhite
Ja, ich habe Cfengine. Ich denke an Marionette. - Stefan Lasiewski
yum-updatesd verwendet etwas ähnliches (notiere neue Updates und erwähne, ob es Sicherheitsupdates waren) - aber ich glaube nicht, dass es in den CentOS 6 (oder EPEL) Repos ist. Sie können möglicherweise die Skripte auf dem ändern CentOS Wiki ziemlich leicht. - cyberx86


Antworten:


Wenn Sie unbedingt verwenden möchten yum security pluginEs gibt einen Weg, dies zu tun, obwohl ein wenig ausgearbeitet. Aber sobald Sie es eingerichtet haben, ist alles automatisiert.

Die einzige Voraussetzung ist, dass Sie mindestens ein RHN-Abonnement haben müssen. Was ist eine gute Investition IMO, aber lassen Sie uns auf den Punkt.

  1. Sobald Sie das Abonnement haben, können Sie verwenden MREPO, oder Reposync, um ein In einzurichten Haus Yum Repo, das spiegelt CentOS Repos. (oder Sie könnten einfach verwenden rsync).
  2. Verwenden Sie dann das Skript, das an diesem angebracht ist Mailinglistenpost, um sich regelmäßig mit Ihrem RHN-Abonnement zu verbinden, um Informationen zu Sicherheitspaketen herunterzuladen. Jetzt haben Sie zwei Möglichkeiten.
    1. Extrahieren Sie nur die Paketnamen aus der generierten Datei "updateinfo.xml". Verwenden Sie diese Informationen, um Ihre Server nach RPMs zu durchsuchen, die Sicherheit oder andere Updates benötigen, indem Sie puppet oder cfengine oder ssh-in-a-for-loop verwenden. Das ist einfacher, gibt dir alles du willst, aber du kannst es nicht benutzen yum security.
    2. Die andere Möglichkeit ist die Verwendung der modifyrepo Befehl wie gezeigt Hier, Einspritzen updateinfo.xml in repomd.xml. Vor Dazu müssen Sie das Perl-Skript ändern, um die Rpm-MD5-Summen in der XML-Datei von RHN in Centos-Summen zu ändern. Und Sie müssen sicherstellen, dass CentOS-Repos tatsächlich alle Rpms enthalten updateinfo.xml, wie sie manchmal hinter RHN sind. Aber das ist in Ordnung, Sie können die Updates ignorieren, die CentOS nicht eingeholt hat, da Sie wenig dagegen tun können, anstatt sie aus SRPMs zu bauen.

Mit Option 2 können Sie installieren yum security Plugin auf allen Clients, und es wird funktionieren.

Edit: Dies funktioniert auch für Redhat RHEL 5 und 6 Maschinen. Und ist einfacher als eine schwere Lösung wie Spacewalk oder Pulp.


7
2018-03-15 18:47





Scientific Linux kann nun Sicherheitsupdates über die Befehlszeile auflisten. Außerdem kann ich ein System so aktualisieren, dass es nur Sicherheitsupdates anwendet, was besser ist als der Standard ("Aktualisiere einfach alles! Einschließlich Bugfixes, die dir egal sind und Regressionen einführen."

Ich habe dies sowohl auf Scientific Linux 6.1 als auch auf einem 6.4 getestet. Ich bin mir nicht sicher, wann das offiziell angekündigt wurde, aber ich werde mehr veröffentlichen, wenn ich es herausfinde.

Hier sind einige Beispiele.

Listen Sie eine Zusammenfassung der Sicherheitsupdates auf:

[root@node1 ~]# yum updateinfo
Loaded plugins: changelog, downloadonly, fastestmirror, priorities, security
Loading mirror speeds from cached hostfile
Updates Information Summary: available
    4 Security notice(s)
        1 important Security notice(s)
        3 moderate Security notice(s)
    2 Bugfix notice(s)
updateinfo summary done

root@node1 ~]# yum list-sec
Loaded plugins: changelog, downloadonly, fastestmirror, priorities, security
Loading mirror speeds from cached hostfile
SLSA-2013:1459-1 moderate/Sec.  gnupg2-2.0.14-6.el6_4.x86_64
SLSA-2013:1436-1 moderate/Sec.  kernel-2.6.32-358.23.2.el6.x86_64
SLSA-2013:1436-1 moderate/Sec.  kernel-devel-2.6.32-358.23.2.el6.x86_64
SLSA-2013:1436-1 moderate/Sec.  kernel-firmware-2.6.32-358.23.2.el6.noarch
SLSA-2013:1436-1 moderate/Sec.  kernel-headers-2.6.32-358.23.2.el6.x86_64
SLSA-2013:1457-1 moderate/Sec.  libgcrypt-1.4.5-11.el6_4.x86_64
SLSA-2013:1270-1 important/Sec. polkit-0.96-5.el6_4.x86_64
SLBA-2013:1486-1 bugfix         selinux-policy-3.7.19-195.el6_4.13.noarch
SLBA-2013:1491-1 bugfix         selinux-policy-3.7.19-195.el6_4.18.noarch
SLBA-2013:1486-1 bugfix         selinux-policy-targeted-3.7.19-195.el6_4.13.noarch
SLBA-2013:1491-1 bugfix         selinux-policy-targeted-3.7.19-195.el6_4.18.noarch
updateinfo list done

Liste von CVE:

[root@node2 ~]# yum list-sec cves
Loaded plugins: changelog, downloadonly, fastestmirror, priorities, security
Loading mirror speeds from cached hostfile
 * epel: mirrors.kernel.org
 * sl6x: ftp.scientificlinux.org
 * sl6x-security: ftp.scientificlinux.org
7404 packages excluded due to repository priority protections
 CVE-2012-6085 moderate/Sec. gnupg2-2.0.14-6.el6_4.x86_64
 CVE-2013-4351 moderate/Sec. gnupg2-2.0.14-6.el6_4.x86_64
 CVE-2013-4402 moderate/Sec. gnupg2-2.0.14-6.el6_4.x86_64
 CVE-2013-4162 moderate/Sec. kernel-2.6.32-358.23.2.el6.x86_64
 CVE-2013-4299 moderate/Sec. kernel-2.6.32-358.23.2.el6.x86_64
 CVE-2013-4162 moderate/Sec. kernel-firmware-2.6.32-358.23.2.el6.noarch
 CVE-2013-4299 moderate/Sec. kernel-firmware-2.6.32-358.23.2.el6.noarch
 CVE-2013-4242 moderate/Sec. libgcrypt-1.4.5-11.el6_4.x86_64
updateinfo list done

Und dann kann ich die minimalen Änderungen anwenden, die erforderlich sind

[root@node1 ~]# yum update-minimal --security

Oder patch einfach alles:

[root@node1 ~]# yum --quiet --security check-update

gnutls.x86_64                                      2.8.5-14.el6_5                                     sl-security
libtasn1.x86_64                                    2.3-6.el6_5                                        sl-security
[root@node1 ~]# yum --quiet --security update

=================================================================================================================
 Package                 Arch                  Version                          Repository                  Size
=================================================================================================================
Updating:
 gnutls                  x86_64                2.8.5-14.el6_5                   sl-security                345 k
 libtasn1                x86_64                2.3-6.el6_5                      sl-security                237 k

Transaction Summary
=================================================================================================================
Upgrade       2 Package(s)

Is this ok [y/N]: Y
[root@node1 ~]#

Wenn ich denselben Befehl auf einer CentOS6-Box ausprobiere, erhalte ich keine Ergebnisse. Ich weiß genau, dass einige der '137 verfügbaren Pakete' Sicherheitsfixes enthalten, weil ich die Errata-Nachrichten gestern über die CentOS-Mailinglisten erhalten habe.

[root@node1 ~]# yum --security check-update 
Loaded plugins: downloadonly, fastestmirror, security
Loading mirror speeds from cached hostfile
 * base: mirrors.usc.edu
 * epel: mirrors.kernel.org
 * extras: mirror.web-ster.com
 * updates: mirrors.kernel.org
Limiting package lists to security relevant ones
No packages needed for security; 137 packages available
[root@node1 ~]#

5
2017-11-13 00:18





Ich hatte das gleiche Problem. Ich habe versucht, einen Python-Code zu erstellen, um Yum-Updates und Advisories von der oben erwähnten Erta-Website von steve-meier zusammenzustellen (ich filtere sie basierend auf installierten Paketen).

Falls es hilft, hier ist die Quelle: https://github.com/wied03/centos-package-cron


5
2017-09-28 21:14





Da Sie über CFEngine verfügen, können Sie Änderungen an Systemgruppen auf der Grundlage der Sicherheitsupdates, die unter der folgenden Adresse veröffentlicht werden, jederzeit anwenden: http://twitter.com/#!/CentOS_Announce

Ich bin nicht der größte Server-Sicherheitsingenieur da draußen ... aber ich tendiere zu dem Schluss, dass mir nur ein paar Pakete wichtig sind, wenn es um Sicherheit geht. Alles, was öffentlich ist (ssl, ssh, apache) oder einen großen Exploit hat, hat Priorität. Alles andere wird vierteljährlich ausgewertet. Ich möchte nicht, dass diese Dinge automatisch aktualisiert werden, da aktualisierte Pakete möglicherweise andere Elemente auf einem Produktionssystem beschädigen können.


2
2018-03-14 23:31



Der oben erwähnte Twitter-Feed ist IMO in 2017+ schlecht beraten. Es hat seit dem 10. Oktober 2012 keine Aktualisierungen erhalten. - slm


Scientific Linux (mindestens 6.2 und 6.3; ich habe keine 6.1 Systeme mehr) unterstützt nicht nur yum-plugin-security aber die Konfigurationsdatei für für yum-autoupdate, /etc/sysconfig/yum-autoupdate, können Sie nur die Installation von Sicherheitsupdates aktivieren.

# USE_YUMSEC
#   This switches from using yum update to using yum-plugin-security
#     true  - run 'yum --security' update rather than 'yum update'
#     false - defaults to traditional behavior running 'yum update' (default)
#   + anything other than true defaults to false
#USE_YUMSEC="false"
USE_YUMSEC="true"

2
2017-10-13 00:32





Auf CentOS können Sie verwenden

yum list updates

anstelle von yum-plugin-security, oder vielleicht möchten Sie dieses Script-Scanning basierend auf CentOS Security News Feeds ausprobieren: LVPS.


2
2017-10-24 18:56



yum list updates wird auflisten alles Updates, wenn ich nur auflisten möchte Sicherheit Aktualisierung. - Stefan Lasiewski
Yum Liste Updates - Sicherheit - Sirex
yum list updates --security funktioniert nicht (benötigt vielleicht ein Plugin) - Taha Jahangir


Sie können es auch versuchen generate_updateinfo Projekt. Es ist ein Python-Skript, das verarbeitet errata.latest.xml Datei kompiliert von CEFS projizieren und generieren updateinfo.xml Datei mit Sicherheitsupdate-Metadaten. Sie können es dann in Ihr lokales CentOS 6 (7) Update-Repository injizieren. Es ist ziemlich einfach, es in benutzerdefinierte / lokale Repositories zu integrieren, die von erstellt wurden createrepo Befehl:

  • Spiegelrepository mit reposync Befehl
  • Erstellen Sie ein lokales Repository mit createrepo Befehl
  • herunterladen und generieren updateinfo.xml Datei mit generate_updateinfo.py Skript
  • injizieren generierte Sicherheitsaktualisierungs-Metadaten in Ihr lokales Repository mit modifyrepo Befehl

1
2018-03-10 10:43





Auf CentOS6 können Sie das yum-security plugin verwenden:

yum install yum-security

Überprüfen mit:

yum --security check-update

Dieser Befehl gibt den Code 0 zurück, wenn keine Sicherheitsupdates verfügbar sind.

In Kombination mit yum-cron können Sie eine E-Mail nur über verfügbare Sicherheitsupdates erhalten, indem Sie die Datei / etc / sysconfig / yum-cron ändern:

YUM_PARAMETER="--security"

-1
2018-06-01 10:06



Das Yum Sicherheits-Plugin funktioniert bei CentOS6 nicht. Es funktioniert jedoch auf RHEL und Scientific Linux. - Stefan Lasiewski
Was bedeutet es "es funktioniert nicht". Es ist Teil von CentOS6-Base und wird hier auf vielen Installationen installiert. yum-plugin-security.noarch 1.1.30-17.el6_5 @updates - Bertl
Was ich meine ist, wenn ich renne yum --security check-update, der Befehl kehrt mit zurück No packages needed for security; 137 packages available. Ich weiß, dass einige der verfügbaren Updates Sicherheitsupdates enthalten. Die Updates sind im CentOS-Basisrepository verfügbar, aber sie sind nicht als Sicherheitsupdates markiert. CentOS stellt derzeit kein yum Repository für die Sicherheitspatches zur Verfügung, anders als Red Hat, Scientific Linux und EPEL. - Stefan Lasiewski
Wenn es für Sie funktioniert, können Sie zeigen, wie es funktioniert? - Stefan Lasiewski
Sehen Sie sich diesen Thread zum Thema an: lists.centos.org/pipermail/centos-devel/2012-August/008675.html - Bertl