CentOS 6.5 での OpenSSL の脆弱性 (Heartbleed問題) への対応

概要

現地時間で2014年4月7日に、SSLプロトコル・TLSプロトコルの暗号化ライブラリ「OpenSSL」に脆弱性があることが発表されました
既に本脆弱性を使用する攻撃コードが公開されており、また、警察庁によると攻撃コードを用いたと思われる通信が観測されているそうです
引用元:OpenSSL の脆弱性に関する注意喚起

■対象になるバージョン
 以下のバージョンが脆弱性の影響を受けます。
 ・OpenSSL 1.0.1 から 1.0.1f
 ・OpenSSL 1.0.2-beta から 1.0.2-beta1

というわけで、OpenSSLを使っている人はほぼ当てはまると考えたほうがいいでしょう

私が利用しているさくらインターネットも4月10日にはホームページ上で各自の対応の必要性を含めた重要告知を出し、14日にはメールでの案内も届きました
発表からかなり時間がたってしまいましたが、この問題について、一般的なVPSサーバーなどでCentOS 6.5を使用している場合の対応方法をまとめておきます

状況確認

まずは利用しているバージョンを確認しましょう
私の場合は最後にOSのバージョンアップをしたのが今年の2月だったのですが、当然対象となるバージョンがインストールされていました

# rpm -q openssl
openssl-1.0.1e-16.el6_5.4.x86_64

OpenSSLライブラリのアップデート

というわけで、OpenSSLのライブラリをアップデートしましょう
以下のコマンドで実行できます

# yum update openssl

私はこの機会に yum update で他のモジュールも含めて最新版に更新しました
というわけでもう一度バージョンを確認します

# rpm -q openssl
openssl-1.0.1e-16.el6_5.7.x86_64

1.0.1gにはなっていません!
CentOS 6.5では今日時点でも、まだyum updateでは1.0.1gにはなりません
しかし、この1.0.1e-16.el6_5.7は今回の問題を受けて、対応の上リリースされたバージョンだということなので、ひとまずこれで問題は回避できるようです
(引用元:[CentOS-announce] CESA-2014:0376 Important CentOS 6 openssl Update
最終的には 1.0.1g がリリースされたら改めて更新しましょう

サーバの再起動

基本的にはsslを使用しているプロセスを再起動すればいいのですが、よく分からないという人もいるかと思うので、その場合はサーバを再起動(reboot)しましょう
VPSサーバならコントロールパネルに再起動のメニューがあったりするかと思います
最後、ちゃんと立ち上がったことを確認すれば、第一段階は終了です

SSHアクセス用の鍵の交換

これで今後、この脆弱性攻撃を受けても大丈夫な対応はとったのですが、既にこれまでの間に秘密鍵やアカウント情報などの重要な情報が既に漏えいしている可能性があります
従って、次第二段の対応として、鍵を作り直して、古い鍵は消去しましょう
こちらの記事(=>さくらのVPS導入手順 5.SSHの設定変更)などを参考に、新しく鍵を生成し、authorized_keysに登録してあった秘密鍵は全て削除して、新しい秘密鍵を登録しましょう

サーバ証明書の再発行

最後に、中にはサーバ証明書をインストールして、httpsなどでサービスを運用している人もいるかもしれません
サーバ証明書も漏洩し、第三者に悪用される可能性があるので、再発行をして入れ替えましょう
以下に、証明書発行会社の関連リンクを貼っておきます

以上三点が今回の脆弱性問題に対して必要な対応となります

英語版のWordPressを日本語にする方法

英語版のWordPressは簡単に日本語化できます

間違って英語版のWordPressをインストールしてしまったという人や、海外系のレンタルサーバーを利用していて、インストールされるのが英語版になってしまうというような方がいらっしゃるかと思いますが、心配することはありません
極簡単な作業で、英語版のWordPressを日本語化することが可能です

wp-config.phpの取得

レンタルサーバーなどでサーバーにリモート接続してファイルを編集できない方は、下図のようにWordPressをインストールしたフォルダにある、wp-config.phpファイルを一度ダウンロードしてください
EngWP2Jp-ftp

wp-config.phpの編集

そして、テキストエディタでwp-config.phpファイルを開きます
修正は1箇所、たった2文字のみ
下のように、define(‘WPLANG’, ”) の行を見つけ、後ろの”の中に’ja’と2文字書き加えればおしまいです
書き加えたら保存しましょう

/**
 * WordPress Localized Language, defaults to English.
 *
 * Change this to localize WordPress. A corresponding MO file for the chosen
 * language must be installed to wp-content/languages. For example, install
 * de_DE.mo to wp-content/languages and set WPLANG to 'de_DE' to enable German
 * language support.
 */
// define('WPLANG', ''); ←ここに下の行のようにjaを書き加える
define('WPLANG', 'ja');

先ほどFTPでダウンロードしていた人は、修正したファイルをサーバーにアップロードしてサーバー上のファイルを更新します

WordPressを日本語版に更新

次にWordPressのダッシュボードにアクセスします
この時点ではまだダッシュボードは自分で入力したサイト名以外は全て英語のままです
DashboardメニューのUpdatesを開いてみてください
EngWP2Jp-1
すると下図の赤線部分のように、[You can update to WordPress xx.xx.xx-ja]という表示が出ているかと思います
なお、あなたがこの作業をするタイミングが、WordPressの英語の最新版がリリースされ、同じバージョンの日本語版が出るまでのタイミングに当てはまった場合、インストールされたバージョンの日本語版がまだ準備できていないので、ここに日本語版へのUpdateメニューが出ないことがあります
その場合は、たいてい翌日にはリリースされていることが多いので、1日待って、もう一度確認してみてください
jaバージョンの表示と、下図赤枠のように[Update Now]ボタンが出ている方は、そのボタンをクリックして更新を開始してください
なお、[Download xx.xx~]というボタンは更新ではなく、ただファイルをダウンロードするだけなので、このボタンからは更新できないのでご注意ください
EngWP2Jp-2
更新は数秒で終わり、終了したら下図のように日本になった画面が表示されます
EngWP2Jp-3
ダッシュボードのホーム画面も見てみましょう
上のほうの写真で全部英語だったメニューや情報がほとんど日本語化されたのが分かります
EngWP2Jp-4

これでWordPressの日本語化は全て完了です