Ubuntu Weekly Topics

2015年1月16日号“Snappy” Ubuntu Core for Vagrant・Ubuntu Phoneの噂・“Mojo” for Juju・UWN#399

“Snappy” Ubuntu Core for Vagrant

これまでに何度かお伝えしてきた『Snappy』Ubuntu Coreを、もっと手軽に試せるようになりました[1]⁠。Vagrant版イメージがリリースされたので、KVM以外の仮想化ハイパーバイザーでも手元でテストすることが可能になっています。VirtualBox上で動作することもあり、ブートの仕組みや内部を根掘り葉掘り確認するための用途にはこちらのほうが便利でしょう。

Ubuntu Phoneの噂

近日リリースされる予定のUbuntu Phoneについての新しいいろいろな情報が漏れ聞こえてくるようになりました。

現状ではまだ噂レベルを出ないものの、⁠少なくともMeizuからはおそらく1月27日に詳細が公開されるだろう」という状態で、Ubuntu Phoneのリリースまで秒読みに入ったと言えるでしょう。Ubuntu PhoneのRTMイメージもリリース候補版(proposed RTM)が更新され続けるフェーズに突入しています。

とはいえUbuntu Phoneのリリースに向けた作業は「大詰め」であって完成ではなく、まだまだ開発者による死闘が続くフェーズです。ちょっとした事件として、「今出たRTMテスト版にアップグレードしたら、システム設定からアップデート確認画面にたどり着けなくなるよ」といったイベントが起こったりもしています(PCから解決できます⁠⁠。

“Mojo” for Juju

Ubuntu Serverで利用できるオーケストレーションツールであるJujuに、リリースワークフローを補助するためのツールが加わりました。Mojo⁠Jujuで用いられる設定ファイルである「Charm」と同じく『お守り』を意味する単語)と名付けられたこのツールは、⁠Jujuによってデプロイされるサーバー環境」が期待通りにデプロイできるかどうかをテストするためのものです。

……という説明ではJujuをヘビーに使っているユーザーにしか話が通じないので、もう少し詳しい動作を見ていきましょう。

まず、Jujuが提供する機能は、⁠仮想マシン等のインスタンスの生成」「必要なサービスのインストールと起動」をカバーするデプロイ全般です。ここでいう「デプロイ」とは「投入」「配備」の意味で、あらかじめ準備しておいたプリセットをもとに、実際の仮想マシンの起動・設定・ソフトウェアインストール・サービス起動などをまとめて行うというものです。カバーしている範囲に少し違いがあるものの、VagrantとChef/Puppet/Ansibleを組み合わせた環境や、AWSのOpsWorksを想像してください。要するに、⁠デプロイのためのコマンド(たとえばJuju)を実行すると、あらかじめ設定された通りのマシン群が起動し、サービスを提供できる状態になる」というものです。

Jujuを利用したシステム構成は、こうした「デプロイされる環境」を設定ファイルや設定ラッパー、あるいは場合によってはChef/Puppet/Ansible等で作り上げる、コードで環境を記述する、いわゆる「Infrastructure as code」環境となります。当然のことながら人間の書くコードにはバグが含まれるため、開発環境・テスト環境・本番環境といった複数の環境を行き来しながら開発を進めていくワークフローが採用されます。

こうしたシステム構成で良くある問題として、⁠本番環境とテスト環境のソフトウェアバージョンが揃っていない」⁠本番環境は直接インターネットに接続できないが、テスト環境からは接続できる」⁠本番環境とテスト環境ではハードウェアのスペックが違う」⁠テスト環境の方が台数が少ない」⁠ロードバランサーが高すぎて本番環境にしか入っていない」⁠テスト環境のOSはCentOSで本番はRHELですが、なにか問題でもみんな貧乏が悪いんや」⁠むしろテスト環境がない」といった、どう考えてもテストの意味がなさそうな事態がしばしば起きてしまいます。このような状態では、⁠テスト環境でのデプロイは上手くいったけど本番にデプロイしたら何故か失敗した」という事態を招きます。

Mojoは、Jujuを利用した環境で、リハーサル(より正確にはゲネプロ)を行うための事前準備やコード実行、そしてデプロイ後のテストを書くためのフレームワークです。Jujuを用いることで「テスト用のサンドボックス環境、あるいは本番用インスタンスの生成」⁠デプロイする前に揃えるものを定義する」⁠デプロイする手順を再現可能な形で記述する」⁠実際にJujuを実行する」⁠デプロイ後にセルフテストを行う」といったことをmanifestファイルに記述し、再現性を確保できるようになります。

現時点では「Mojo環境の生成に権限の問題で失敗するが、落ち着いて⁠sudo chmod 755 /var/lib/lxc/mojo-how-to.trusty && sudo chmod 755 /var/lib/lxc⁠手で実行しろ⁠意訳)という大変なツッコミどころを残した状態でのリリースとなっていますが、ソフトウェアが十分に成熟してくると、Jujuを用いたシステム管理がそれなりに現実的になってくると言えるでしょう。

UWN#399

Ubuntu Weekly Newsletter #399がリリースされています。

その他のニュース

今週のセキュリティアップデート

usn-2452-1:NSSのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002775.html
  • Ubuntu 14.10・14.04 LTS・12.04 LTS・10.04 LTS用のアップデータがリリースされています。CVE-2014-1569を修正します。
  • ASN.1の長さ指定が適切に解釈されていないため、秘匿されるべき通信ストリームに外部からデータを追加することが可能でした。
  • 対処方法:アップデータを適用の上、NSSを利用するアプリケーション(例:EvolutionやChromium)を再起動してください。
usn-2453-1:mime-supportのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002776.html
  • Ubuntu 14.10・14.04 LTS・12.04 LTS・10.04 LTS用のアップデータがリリースされています。CVE-2014-7209を修正します。
  • run-mailcapのファイル名の取り扱いに問題があり、特定のエスケープシーケンス後の文字列をコマンドとして解釈してしまっていました。悪用することで、外部から任意のコマンドを実行できます。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-2454-1:Exiv2のセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002778.html
  • Ubuntu 14.10用のアップデータがリリースされています。CVE-2014-9449を修正します。
  • 動画ファイルのメタデータタグに特定のデータ列が含まれていると、Exiv2がクラッシュしていました。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-2455-1:bsd-mailxのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002779.html
  • Ubuntu 14.10・14.04 LTS・12.04 LTS・10.04 LTS用のアップデータがリリースされています。CVE-2014-7844を修正します。
  • bsd-mailxコマンドのアドレス解釈において、特定の文字列が含まれている場合に任意のコマンドの実行が可能な仕様レベルの問題がありました。このアップデートでは問題のあるアドレス文字列展開をデフォルトで無効にします。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
  • 備考:何らかの理由で文字列展開機能を有効にしたい場合、expandaddrオプションを変更することで設定できますが、有効にした場合、攻撃も可能な状態になります。区切り文字列として「-」を利用している場合、⁠--」に置き換えることが推奨されています。詳細はFlorian Weimerのレポートを参照してください。
usn-2456-1:GNU cpioのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002780.html
  • Ubuntu 14.10・14.04 LTS・12.04 LTS・10.04 LTS用のアップデータがリリースされています。CVE-2010-0624, CVE-2014-9112を修正します
  • 悪意ある細工を施したcpioフォーマットのファイルを処理させることで、メモリ破壊を伴うクラッシュを誘発することが可能でした。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-2459-1:OpenSSLのセキュリティアップデート
usn-2461-1:LibYAMLのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002782.html
  • Ubuntu 14.10・14.04 LTS・12.04 LTS用のアップデータがリリースされています。CVE-2014-9130を修正します。
  • 特定の文字列が含まれているYAMLファイルを解釈させた場合、assert()によるプロセス終了が誘発されていました。
  • 対処方法:アップデータを適用の上、LibYAMLを利用しているアプリケーションを再起動してください。
usn-2461-2:libyaml-libyaml-perlのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002783.html
  • Ubuntu 14.10・14.04 LTS・12.04 LTS用のアップデータがリリースされています。CVE-2014-9130を修正します。
  • usn-2461-1のlibyaml-libyaml-perlパッケージ向けアップデータです。
  • 対処方法:アップデータを適用の上、libyaml-libyaml-perlを利用しているPerlプログラムを再起動してください。
usn-2461-3:PyYAMLのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002784.html
  • Ubuntu 14.10・14.04 LTS・12.04 LTS用のアップデータがリリースされています。CVE-2014-9130を修正します。
  • usn-2461-1のPyYAMLパッケージ向けアップデータです。
  • 対処方法:アップデータを適用の上、PyYAMLを利用しているPythonプログラムを再起動してください。
usn-2462-1:Linux kernelのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002785.html
  • Ubuntu 10.04 LTS用のアップデータがリリースされています。CVE-2014-3610, CVE-2014-3611を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴いますので、カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため、通常はそのままアップデートの適用を行えば対応できます。
usn-2463-1:Linux kernelのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002786.html
  • Ubuntu 12.04 LTS用のアップデータがリリースされています。CVE-2014-7842, CVE-2014-8369を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴いますので、カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため、通常はそのままアップデートの適用を行えば対応できます。
usn-2464-1:Linux kernel (OMAP4)のセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002787.html
  • Ubuntu 12.04 LTS用のアップデータがリリースされています。CVE-2014-7842, CVE-2014-8134, CVE-2014-8369, CVE-2014-9090, CVE-2014-9322を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴いますので、カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため、通常はそのままアップデートの適用を行えば対応できます。
usn-2465-1:Linux kernel (Trusty HWE)のセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002788.html
  • Ubuntu 12.04 LTS用のアップデータがリリースされています。CVE-2014-7841, CVE-2014-7842, CVE-2014-7843, CVE-2014-8884を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴いますので、カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため、通常はそのままアップデートの適用を行えば対応できます。
usn-2466-1:Linux kernelのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002789.html
  • Ubuntu 14.04 LTS用のアップデータがリリースされています。CVE-2014-7841, CVE-2014-7842, CVE-2014-7843, CVE-2014-8884を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴いますので、カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため、通常はそのままアップデートの適用を行えば対応できます。
usn-2467-1:Linux kernel (Utopic HWE)のセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002790.html
  • Ubuntu 14.04 LTS用のアップデータがリリースされています。CVE-2014-7841, CVE-2014-7842, CVE-2014-7843, CVE-2014-8884を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴いますので、カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため、通常はそのままアップデートの適用を行えば対応できます。
usn-2468-1:Linux kernelのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002791.html
  • Ubuntu 14.10用のアップデータがリリースされています。CVE-2014-7841, CVE-2014-7842, CVE-2014-7843, CVE-2014-8884を修正します。
  • 対処方法:アップデータを適用の上、システムを再起動してください。
  • 備考:ABIの変更を伴いますので、カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため、通常はそのままアップデートの適用を行えば対応できます。
usn-2469-1:Djangoのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002792.html
  • Ubuntu 14.10・14.04 LTS・12.04 LTS・10.04 LTS用のアップデータがリリースされています。CVE-2015-0219, CVE-2015-0220, CVE-2015-0221, CVE-2015-0222を修正します。
  • 対処方法:通常の場合、アップデータを適用することで問題を解決できます。
usn-2470-1:Gitのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2015-January/002793.html
  • Ubuntu 14.10・14.04 LTS・12.04 LTS用のアップデータがリリースされています。CVE-2014-9390を修正します。
  • gitのパス文字列の処理方法に問題があり、ローカルの作業ツリーがHSF+またはNTFS上に存在する場合、pull実行時にクライアント側で任意のコードを実行することが可能でした。
  • 対処方法:アップデータを適用の上、core.protectHFS・core.protectNTFS・receive.fsckObjectsをtrueに設定することで問題を抑制することができます。

おすすめ記事

記事・ニュース一覧