第43回 Dockerイメージを「Quay.io」で管理する(セキュリティ編):古賀政純の「攻めのITのためのDocker塾」(1/2 ページ)
ホステッドレジストリには、アップロードしたDockerイメージのセキュリティ脆弱性をチェックする機能もあります。「Quay.io」を実際に操作しながら、セキュリティチェックの方法を確認します。
前回は、NASAやeBayなども利用しているホステッドレジストリ「Quay.io」にDockerイメージをアップロードする手順をご紹介しました。今回は、アップロードしたDockerイメージのセキュリティ脆弱(ぜいじゃく)性を、Quay.ioを使って管理する手法を具体的に解説します。
Dockerイメージのセキュリティ脆弱性をチェック
クラウドサービスとしてのホステッドレジストリ、Quay.ioは、Dockerイメージのセキュリティ脆弱性をチェックする機能があります。そこで、前回作成したリポジトリ「testrepo01」にアップロードしたDockerイメージ「c68websvr01」に、セキュリティ面での脆弱性がないかチェックしてみましょう。事前に、Quay.ioにサインインできるようにしておいてください。Quay.ioのアカウントを作成していない方は、前回の記事を参考に、ユーザーアカウントを作成し、リポジトリ「testrepo01」を作成しておいてください。
Quay.ioにサインインしたら、リポジトリ「testrepo01」を開きます。画面左側の上から2段目にあるタグの絵のアイコンをクリックすると、アップロード済みのDockerイメージの情報が表示されます。
上記のアップロード済みのDockerイメージ「c68websvr01」の管理画面中央に「SECURITY SCAN」という項目があります。その下を見ると、「4 Critical・37 fixable」と表示されています。これは、Quay.ioにアップロードされたDockerイメージに対して、セキュリティスキャンを行った結果、クリティカルレベルのものが4件あり、クリティカルレベルを含む高レベルおよび中レベルのものが37件存在することを意味しています。さらに詳細を見るには、「4 Critical・ 37 fixable」をクリックします。
さらに、Dockerイメージ「c68websvr01」に関するセキュリティの脆弱性チェックで、詳細画面の左側、上から3段目にあるパッケージの絵のアイコンをクリックすると、Dockerイメージに含まれるRPMパッケージに関する脆弱性も表示できます。
Dockerイメージを最新パッケージに更新してアップロード
アップロード済みのDockerイメージ「c68websvr01」には、37件の脆弱性があることが分かりましたが、なぜこのように大量の脆弱性が含まれていたのでしょうか。
前回、アップロードしたDockerイメージ「c68websvr01」は、iprouteパッケージとhttpdパッケージをインストールしましたが、CentOS 6.8のOSテンプレートはそのままで、パッケージを最新に更新しませんでした。すなわち、パッケージのアップデートが適用されていない状態だったのです。そのため、CentOS 6.8のOSテンプレートの最新ではないRPMパッケージが数多く含まれていて、大量の脆弱性が検出されたわけです。
関連記事
- 第42回 Dockerイメージを「Quay.io」で管理する(準備編)
ホステッドレジストリは、一般に「Docker Hub」が有名ですが、今回はNASAやeBayも利用しているホステッドレジストリの「Quay.io」を使って、実際にDockerイメージを管理してみます。 - 第41回 「ホステッドレジストリ」を知る――NASAも使っているDockerイメージ管理
今回からは、Dockerイメージの管理サービスについて紹介していきます。NASAのジェット推進研究所でも利用されているDockerイメージの管理サービスを例に、具体的な操作方法も披露します。 - 第37回 Dockerでソフトウェア定義型ネットワーキングツール「pipework」を活用する
前回まで、3回に渡ってOpenStackでも利用されているソフトウェア定義型ネットワーキングを実現するOpen vSwitch(OVS)とovs-dockerを使ってホストOSとコンテナを同一LANセグメントに所属させ、マルチホストのコンテナ間通信を実現しました。今回は、Docker基盤で古くから利用されている「pipework」を使ったネットワーキングをご紹介します。 - 第38回 pipeworkでDockerコンテナに固定IPアドレスを付与する(構築編その1)
ソフトウェア定義型ネットワークを実現する「pipework」のコンテナを実際に使って、ホストOSとDockerコンテナを同一LANセグメントに所属させることで、マルチホストのコンテナ間通信を行う手順を解説します。 - 第39回 DHCPとpipeworkでDockerコンテナに動的IPアドレスを付与する(構築編その2)
Open vSwitch(OVS)を構築したホストOS上で、ソフトウェア定義型ネットワークを実現する「pipework」を利用し、DHCPクライアントの機能を使って、Dockerコンテナに動的にIPアドレスを割り当てる手順を紹介します。 - 第40回 pipeworkでDockerコンテナの送信帯域幅制御を行う(構築編その3)
今回は、ソフトウェア定義型ネットワークを実現する「pipework」を使って、Dockerコンテナのネットワーク帯域幅を制御する具体的な手順をご紹介します。
Copyright © ITmedia, Inc. All Rights Reserved.