カテゴリー
Windows

本家のお世話-#108。(PHP5.5.15へアップデート)

The same article in English
投稿アップデート情報  追記(8/1)

 PHP5.5.15 が Jul-24 01:03:48UTC に出たので,アップデートした (Windows7HP+SP1(x86)用)。 ChangeLog.

 PHP 5.6.0RC3 が予定より遅れている。なんかあってんのかな?

 ところで, Changes with Apache 2.4.10 の “Fix a memory consumption denial of service in the WinNT MPM” というのを読んだので,使っていた回避策をやめてみたが,うまくいかなかった。次の日に,回避策を戻す羽目になってしまったワイ。

追記(8/1):
 予定よりだいぶ遅れて, PHP 5.6.0RC3 が出た。 RC4 は8月14日になってるから, GA は9月かな。

カテゴリー
Windows

本家のお世話-#107。(Apache 2.4.10へアップデート)

The same article in English

 Apache HTTP Server 2.4.10 が出たので,アップデート。セキュリティパッチが,5個含まれているようだ。 mod_authnz_fcgi というモジュールが増えたので, httpd.conf も以下の1行が増えている。
    #LoadModule authnz_fcgi_module modules/mod_authnz_fcgi.so
 Windows 版では, pcre が 8.34 から 8.35 に, APR が 1.5.0 から 1.5.1 にアップデートされている。

 VC11 用の httpd-2.4.10-win32-VC11.zip (17 Jul) を我が家用 ( Windows7 x86 ) にダウンロード。 Apache 2.4.x conf 情報が必要な方は,「Windows7上にWamp系WebServerを建てる-#1。」を見てください。

カテゴリー
Windows

本家のお世話-#106。(PHP5.5.14へアップデート)

The same article in English

 PHP5.5.14 が Jun-25 23:06:26UTC に出たので,アップデートした (Windows7HP+SP1(x86)用)。

 ChangeLog によれば,なんと,8個も CVE 関連のが含まれてるそうだ。それから, bug 67072 に関して,後方互換性の懸念もあるようだ。このバグ関連の問題を抱えている場合は, upgrading guide を参考にしてほしいという言及があった。

 php.ini-production には,変更なし。 php5apache2_4.dll はオフィシャルバイナリに含まれているので,新旧のファイルを入れ替えて php.ini を放り込み, Apache をrestartするだけ。

 新規に導入する方は,必要なら「Windows7上にWamp系WebServerを建てる-#2。」を参考にしてください。

 このついでに, phphMyAdmin を 4.2.5 に, MariaDB を 10.0.12 にアップデートした。両者に関して,もう少し情報がほしいという方は,本家のお世話-#102。(phpMyAdmin 4.2.0へアップデート)MariaDB 5.5 でもご覧ください m(_”_)m。

カテゴリー
WordPress

WordPressでの「SSL3_READ_BYTES:sslv3 alert handshake failure」を解決。

The same article in English

 WordPress 3.7 から ca-bundle.crt が含まれるようになったんだが,その後,「Upgrade Network」のときにエラーが出るようになった。ところで,「Warning! Problem updating https://SITENAME.」というのを1つのサイトだけおかしいんだと勘違いしていたのだが,一番初めに調べたサイトでエラーが出てるんだから,あとは調べてないわけだよな(汗)。

 はじめのエラーは,「Error message: SSL certificate problem: self signed certificate in certificate chain」というので,これは自前認証局を使ってるせいだったんだが, Oiram の教えてくれた通り, ca-bundle.crt に自前の CA のデータを書き加えてやったら,よくなった。

 で,次が「“Error message: error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure」。これに2か月以上手を焼いていたが,本日,やっと,解決した \(^o^)/。

 振り返ってみると,結局のところ3つのポイントがあったようだ。

  1. うちの client.crt には ssl_client extension を使っていなかった。で, client.crt を ssl_client extension 付きで作り直した。参考にしたのは, “sslv3 alert handshake failure when using SSL client auth”
    まず, openssl.cnf に次の行を追加した。

    [ ssl_client ]
    basicConstraints = CA:FALSE
    nsCertType = client
    keyUsage = digitalSignature, keyEncipherment
    extendedKeyUsage = clientAuth
    nsComment = “OpenSSL Certificate for SSL Client”

    でもって, ssl_client extension を使って client.crt を作り直した。
    >openssl ca -config openssl.cnf -policy policy_anything -extensions ssl_client -in client.csr -out client.crt

    • 古いほうの client.crt で “openssl s_client -connect o6asan.com:443 -cert client.crt -key client.key -CAfile cacert.pem” をやると,下の2つのエラーが出ていたが,新しいのだと出なくなった。
    • error:14094418:SSL routines:SSL3_READ_BYTES: ~
      error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure: ~
    • 当然ながら, clientcert.p12 も作り直した。
  2. WordPress は「Upgrade Network」のときに cURL を利用しているのだが, cURL は P12 format certificates を受用しないので, PEM format に直さなければ使えない。
    • clientcert.p12 から clientcert.pem を作る
      >openssl pkcs12 -in clientcert.p12 -nokeys -clcerts -out clientcert.pem
    • clientcert.p12 から clientkey.pem を作る。
      >openssl pkcs12 -in clientcert.p12 -nocerts -out clientkey.pem
       
      clientkey.pem のコピーを作り, pass phrase を削除する。
      >copy clientkey.pem cp_clientkey.pem
      >openssl rsa <cp_clientkey.pem> clientkey.pem
  3. WordPress に client 証明書の場所を教えてやる
    • class-http.php の「curl_setopt( $handle, CURLOPT_CAINFO, $r[‘sslcertificates’] );」行の直前に,以下の2行を書き加える。

      curl_setopt( $handle, CURLOPT_SSLCERT, 'clientcert.pem の絶対パス' );
      curl_setopt( $handle, CURLOPT_SSLKEY, 'clientkey.pem の絶対パス' );

      WordPress の core スクリプトを書き換えるのは嫌なので,何とかほかの方法でやろうと頑張ったのだが,どうしてもうまくいかなくて,結局, class-http.php をいじることにした。

      clientcert.pem と clientkey.pem をサーバ上のどこか,外部のものがネット経由でアクセスできない,より安全な場所にコピーする。

    参考サイトは, Client URL Library

 自前認証局の作り方は,「本家のお世話-#68。(WordPress SSL ログイン-#1)」をどうぞ。

 エラーが消えたよ。満足じゃ。パチパチ!!

カテゴリー
Windows

本家のお世話-#105。(MariaDB10.0.11へアップデート)

The same article in English

 本題に入る前に。
 林隆三が亡くなった。訃報の中に「急死」という表現が見られた。林さん, 70 歳だったそうである。今どきとしては,まだ若いと言える。落ち込む。
 心より,ご冥福をお祈りする(合掌)。

 MariaDB10.0.11 にアップデートした (サーバOS : Windows7HP+SP1(x86))。手順は,下記の通り。

 何はともあれ,バックアップ。特に, MariaDB と MyDB

 で,アップグレード。

  1. mariadb-10.0.11-win32.zip をダウンロード。
  2. Zip を展開。
  3. コントロールパネル >> 管理ツール >> サービス
    と行って, MyDB のサービスを停止。
  4. MariaDB の中身をすべて削除。その後, bin,include,lib,share の4つとライセンス関係のファイルを MariaDB の中にコピーする。
  5. コントロールパネル >> 管理ツール >> サービス
    と行って, MyDB のサービスを開始。

 以上。

 ついでに, phpMyAdmin 4.2.3 へのアップデートもやっておいた。 ChangeLog はこんな感じ。
 もう少し,情報がいるという方は,本家のお世話-#102。(phpMyAdmin 4.2.0へアップデート)でもご覧ください m(_”_)m。

カテゴリー
Windows

本家のお世話-#104。(OpenSSL Security Advisory [6月5日] に対処のため Apache のアップデート)

The same article in English
投稿アップデート情報  追記(6/9)

 OpenSSL Security Advisory [6月5日] になんかいろいろと挙がっていて,どうするかなと思っていたら,さっそく Steffen が対処してくれたので, Apache 2.4.9 の 2014 5 Jun version を落として,アップデート。

 新バージョンは, ‘IPv6 Crypto apr-1.5.0 apr-util-1.5.3 apr-iconv-1.2.1 openssl-1.0.1h zlib-1.2.8 pcre-8.34 libxml2-2.9.1 lua-5.1.5 expat-2.1.0’ と openssl-1.0.1h でのビルドとなっている。

 アップデートのやり方自体はいつもと同じ。そんでもって,Changelog

 いつも, Steffen への感謝の念に堪えない m(_”_)m。

追記(6/9):
 こんなんあったんで,貼っときます。
ハートブリード脆弱性から 2 か月で公開された OpenSSL の重大な脆弱性修正パッチ

カテゴリー
Windows

本家のお世話-#103。(PHP5.5.13へアップデート)

The same article in English
投稿アップデート情報  追記(6/9)

 PHP5.5.13 が May-28 19:57:18UTC に出ていたので,アップデートした (Windows7HP+SP1(x86)用)。

 ChangeLog によれば, bug #67328 関連の CVE-2014-0237 と bug #67327 関連の CVE-2014-0238 対応のパッチが含まれている。

 php.ini-production には,変更なし。 php5apache2_4.dll はオフィシャルバイナリに含まれているので,新旧のファイルを入れ替えて php.ini を放り込み, Apache をrestartするだけ。

 新規に導入する方は,必要なら「Windows7上にWamp系WebServerを建てる-#2。」を参考にしてください。

 ところで, 5/29 には PHP5.6.0 ベータ版の最終バージョンが出るはずだったが,まだ出ていない。なんか手間取ることがあるのかな。それでも PHP5.6 の正規リリースは近いようだ。

追記(6/9):
 6/5 UTC に,PHP 5.6.0beta4 が出た。これがベータ版の最終バージョン。 6/19 UTC に Release Candidate 1 が出る予定のようだ。 RC がいくつまで行くかわからないが, PHP 5.6.0 正規リリース,間近だよ。

カテゴリー
Windows

本家のお世話-#101。(PHP5.5.12へアップデート)

The same article in English

 PHP5.5.12 が Apr-30 21:11:32UTC に出ていたので,昨日,アップデートした。

 ChangeLog によれば, CVE-2014-0185 のパッチが入っている。当該ページに行っても,いまだに Description が ** RESERVED ** のままなのだが, PHP-FPM 関連のもので, Christian Hoffmann が報告したらしい。 php-fpm: privilege escalation due to insecure default config という彼のオリジナルメッセージがあった。それ以外では, php5embed.lib が再び同梱されるようになった。

 php.ini-production では,コメント行で2か所変更あり。コメント行なので,特に関係なし。 php5apache2_4.dll はオフィシャルバイナリに含まれているので,新旧のファイルを入れ替えて php.ini を放り込み, Apache をrestartするだけ。

 新規に導入する方は,必要なら「Windows7上にWamp系WebServerを建てる-#2。」を参考にしてください。

カテゴリー
Windows

本家のお世話-#100。(MariaDB10へアップグレード)

The same article in English
投稿アップデート情報  追記(6/30)

 3月31日に, MariaDB10 初の正式版が出たので,本日,自鯖上 (Windows7HP+SP1(x86)) の MariaDB を 10 にアップグレードしてみた。アップグレードなんだが,元が MariaDB5.5 なので,手順は前回のアップデートと変わらない。

 何はともあれ,バックアップ。特に, MariaDB と MyDB

 で,アップグレード。

  1. mariadb-10.0.10-win32.zip をダウンロード。
  2. Zip を展開。
  3. コントロールパネル >> 管理ツール >> サービス
    と行って, MyDB のサービスを停止。
  4. MariaDB の中身をすべて削除。その後, bin,include,lib,share の4つとライセンス関係のファイルを MariaDB の中にコピーする。
  5. コントロールパネル >> 管理ツール >> サービス
    と行って, MyDB のサービスを開始。

 以上。

追記(6/30):
 書き忘れていたが,アップグレード後,エラーログを見たら “Please use mysql_upgrade to fix this error.” が出ていると思うので, mysql_upgrade やること。

カテゴリー
Windows

本家のお世話-#99。(CVE-2014-0160 に対処のため Apache のアップデート)

The same article in English
投稿アップデート情報  追記(4/9)

CVE-2014-0160って?」で,どうしたらいいのと書いたばかりなのだが,素早い対処で Steffen が早速 Apache 2.4.9 available :: Updated を出してくれた。

 IPv6 Crypto apr-1.5.0 apr-util-1.5.3 apr-iconv-1.2.1 openssl-1.0.1g zlib-1.2.8 pcre-8.34 libxml2-2.9.1 lua-5.1.5 expat-2.1.0 と, openssl-1.0.1g でのビルドとなっている。

 アップデートのやり方自体はいつもと同じ。そんでもって,Changelog

 アップデート後, SSL 関係のキーとかも作り直したほうがいいという意見もあるようだから,それもあとでやっておくかな。

追記(4/9):
 SSL 関係のキーとかは夕べのうちに作り直した。