CentOS6 でセキュリティに関するパッケージの更新のみ行う

CentOS6で セキュリティに関するパッケージの更新のみ行う yum-security を動作させる為の設定について説明します。

セキュリティに関するパッケージの更新のみ行う yum-security というプラグインがあります。
サーバ運用では、パッケージ更新による影響を最小限に抑えたいこともあり、セキュリティ更新のみ行えることは魅力的です。

ところが、このプラグイン、CentOS6 ではうまく動作せず、セキュリティ更新がなされません。
これは、CentOS6.4リリース以降、セキュリティアップデート用のリポジトリが公開されていない為です。

しかし最近、下記のサイトでセキュリティアップデート用のリポジトリを作成するスクリプトが公開されました。
VM Farms: Inject a little security in to your CentOS repositories

そこで、このスクリプトの使い方と、必要な設定を説明します。


インストール・設定


以下を実行します。
2016.10.12
sed -i -e~の行の内容を修正しました


yum install python
yum install createrepo
yum install yum-plugin-security
mkdir /security
wget -P/security https://raw.github.com/hany55/generate_updateinfo/master/generate_updateinfo.py
sed -i -e "s/BUILD_PREFIX = \"\/tmp\"/BUILD_PREFIX = \"\/security\"/g" /security/generate_updateinfo.py
sed -i -e "s/BUILD_PREFIX = options\.destination/BUILD_PREFIX = \"\/security\"/g" /security/generate_updateinfo.py

createrepo /security



/etc/yum.repos.d/CentOS-Base.repo の末尾に次を追加します。

[security]
name=CentOS-$releasever - Security
baseurl=file:///security


これでインストール・設定は完了です。


セキュリティアップデートの仕方



まず、下記を実行します。

wget -q -N -P/security http://cefs.steve-meier.de/errata.latest.xml
python /security/generate_updateinfo.py /security/errata.latest.xml
/usr/bin/modifyrepo /security/updateinfo-6/updateinfo.xml /security/repodata

一日に一度実行すれば充分なので、必要に応じて cron で実行するように設定して下さい。


後は、通常通り、yum-securityプラグインが使用できます。

セキュリティ更新があるかのチェックは yum --security check-update を実行します。
更新がある場合は、以下のようにパッケージが表示されます。

# yum --security check-update
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
Limiting package lists to security relevant ones
41 package(s) needed for security, out of 302 available

dbus-glib.x86_64               0.86-6.el6                       base
firefox.x86_64                 24.3.0-2.el6.centos              updates
freetype.x86_64                2.3.11-14.el6_3.1                base
glx-utils.x86_64               9.2-0.5.el6_5.2                  updates
gnutls.x86_64                  2.8.5-10.el6_4.2                 base
     :


チェックだけではなく、セキュリティ更新も適用する場合は yum --security update を実行します。

yum --security update


これで、CentOS6 でセキュリティアップデートのみ適用することが出来るようになります。


参考


VM Farms: Inject a little security in to your CentOS repositories
u6k Apps開発ログ: CentOSのローカルyumリポジトリの作り方
はじめての自宅サーバ構築 - Fedora/CentOS - yum plugin「yum-security」の導入

この記事へのコメント

この記事へのトラックバック