CentOSやScientific LinuxなどのRedHatベースのディストリビューションを実行しているマシンがあります。インストールされたパッケージに既知の脆弱性がある場合は、システムが自動的に通知するようにします。 FreeBSDは ports-mgmt/portaudit ポートでこれを行います。
RedHatは、Bugzilla ID、 [〜#〜] cve [〜#〜] IDまたはアドバイザリIDで脆弱性をチェックできる yum-plugin-security を提供します。さらに、Fedoraは最近 yum-plugin-security をサポートし始めました。これはFedora 16で追加されたと思います。
Scientific Linux 6はサポートしていません 2011年後半にyum-plugin-securityをサポート 。 RPMを毎日更新する/etc/cron.daily/yum-autoupdate
が同梱されています。ただし、これはセキュリティ更新のみを処理するとは思わない。
CentOSは yum-plugin-security
をサポートしていません をサポートしています。
私はCentOSとScientific Linuxのメーリングリストの更新を監視していますが、これは面倒で、自動化できるものが必要です。
CentOSとSLシステムを保守している私たちにとって、次のことができるツールはありますか?
yum update-minimal --security
でしょうか?yum-plugin-changelog
を使用して各パッケージの変更ログを出力し、特定の文字列の出力を解析することを検討しました。これをすでに行うツールはありますか?
Scientific Linuxは、コマンドラインからセキュリティアップデートをリストできるようになりました。さらに、セキュリティ更新のみを適用するようにシステムを更新できます。これはデフォルトよりも優れています(「すべてを更新するだけです!気にしないバグ修正を含み、リグレッションが発生します」。
私はこれをScientific Linux 6.1と6.4の両方でテストしました。これがいつ正式に発表されたかはわかりませんが、わかり次第投稿します。
下記は用例です。
セキュリティ更新の概要を一覧表示します。
[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
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
そして、必要な最小限の変更を適用して
[root@node1 ~]# yum update-minimal --security
または、すべてにパッチを適用します。
[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 ~]#
CentOS6ボックスでこれと同じコマンドを実行しても、結果が得られません。 CentOSメーリングリストを介して昨日エラッタ通知を受け取ったため、「利用可能な137パッケージ」の一部にセキュリティ修正が含まれているという事実を知っています。
[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 ~]#
絶対にyum security plugin
を使用したい場合は、少し複雑ですが、これを行う方法があります。しかし、一度設定すると、すべて自動化されます。
唯一の要件は、RHNに少なくとも1つのサブスクリプションが必要であることです。これは良い投資IMOですが、要点に固執します。
yum security
は使用できません。modifyrepo
コマンドを使用することです here 、updateinfo.xml
をrepomd.xml
に挿入します。 前にこれを行うには、Perlスクリプトを変更して、xml内のRpm MD5合計をRHNからCentos合計に変更する必要があります。そして、CentOSリポジトリが実際にupdateinfo.xml
に記載されているすべてのRpmを持っているかどうかを確認する必要があります。これは、RHNの背後にある場合があるためです。しかし、それは問題ありません。CentOSが追いついていないアップデートは無視できます。SRPMからビルドする以外には、それについてできることはほとんどないためです。オプション2を使用すると、yum security
プラグインをすべてのクライアントにインストールでき、機能します。
編集:これはRedhat RHEL 5および6マシンでも機能します。また、SpacewalkやPulpなどのヘビーウェイトソリューションを使用するよりも簡単です。
同じ問題がありました。私はいくつかのPython一緒にプルするコードを作成するYumアップデートとアドバイザリーを上記のsteve-meier Errataサイトから取得しました(インストールされているものに基づいてフィルタリングします)パッケージ)。
それが役立つ場合は、ここにソースがあります: https://github.com/wied03/centos-package-cron
CentOSで使用できます
yum list updates
yum-plugin-securityの代わりに、あるいは、CentOSセキュリティニュースフィードに基づいてこのスクリプトスキャンを試してみたい場合があります [〜#〜] lvps [〜#〜] 。
Scientific Linux(少なくとも6.2と6.3、6.1システムは残っていません)はyum-plugin-security
をサポートするだけでなく、yum-autoupdate
、/etc/sysconfig/yum-autoupdate
の構成ファイルでは、セキュリティ更新プログラムのインストール。
# 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"
CFEngineがあるため、次の場所に投稿されたセキュリティ更新に基づいて、システムのグループに変更を同時に適用できます。 http://Twitter.com/#!/CentOS_Announce
私は世の中で最大のサーバーセキュリティエンジニアではありません...しかし、セキュリティに関しては、いくつかのパッケージしか気にしないと思う傾向があります。一般に公開されているもの(ssl、ssh、Apache)や大きなエクスプロイトがあるものが優先されます。それ以外はすべて四半期ごとに評価されます。更新されたパッケージは本番システムの他のアイテムを破壊する可能性があるため、これらを自動的にアップグレードしたくありません。
generate_updateinfo プロジェクトを試すこともできます。これは、python処理するerrata.latest.xml
ファイルを処理するスクリプトです [〜#〜] cefs [〜#〜] プロジェクトを作成し、セキュリティ更新メタデータを含むupdateinfo.xml
ファイルを生成します。これをローカルのCentOS 6(7)更新リポジトリに注入できます。createrepo
コマンド:
reposync
コマンドでリポジトリをミラーリングするcreaterepo
コマンドでローカルリポジトリを作成するupdateinfo.xml
スクリプトを使用してgenerate_updateinfo.py
ファイルをダウンロードして生成するmodifyrepo
コマンドを使用して、生成されたセキュリティ更新メタデータをローカルリポジトリに挿入する