2019.12.02

Linuxのリブート不要、カーネルパッチを自動適用する「KernelCare」

川口明男
GDEPソリューションズ株式会社 取締役
このエントリーをはてなブックマークに追加

はじめに

こんにちは。GDEPソリューションズ株式会社の川口 明男(かわぐち あきお)と申します。

ライブカーネルパッチというカテゴリーの製品「KernelCare(カーネルケア)」が、日本国内でも発売されました。

従来のアップデートツール(例:yum, apt-get)とは違い、Linuxのリブート(再起動)をすることなく、カーネルのパッチが適用できます。

GDEP_002.png

リブート不要は、サービスの継続性やメンテナンス性の面から考えると「バックアップサーバの用意や検証の手間も軽減される」という、システム運用者からすると煩わしい作業から解放される夢のような特徴です。

KernelCareとは?

Linuxサーバをセキュアな状態で運用するには、カーネルに最新のセキュリティーパッチを適用し続ける必要があります。しかしながら、パッチの適用にはリブートが必要になる場合が多いため、IT部門にとってはダウンタイムの調整や、メンテナンスに多くの時間と労力がかかっているのが現状です。

KernelCareは、リブート不要でカーネルのセキュリティーパッチを自動で適用します。このためセキュリティーパッチを見逃すことなく、サービスを停止することなく、カーネルを常にセキュアな状態に維持できます。

なぜ自動パッチ適用が必要なのか?

Linuxには確かな信頼性を裏付ける長い歴史がありますが、他のOS同様に頻繁なアップデートが必要となります。そしてこれらのアップデートの多くは、認識されたセキュリティー上の課題(既知の脆弱性)を対象としています。この課題を解決できない場合、サーバやデータが弱体化してしまい、不正アクセスに利用される可能性があります。

加えて脆弱性の検出とパッチ更新による修正の間にはタイムラグがあります。
このタイムラグにより、悪意のある脅威エージェントがシステムを標的として脆弱性を悪用する可能性があります。

そのため「自動パッチの適用」が必要となります。

自動パッチを適用することにより、コアサービスを中断することなく、パッチの問題とそれに対するパッチの適用の間のギャップを実質的に排除することができます。

迅速なパッチ作成とリリース

GDEP_003.png

KernelCareには、専任のセキュリティーチームが存在します。

彼らはカーネルの脆弱性を常に監視しており、脆弱性を発見次第、迅速なパッチを作成する役割があります。

セキュリティチームは、クラウド上のKernelCareパッチ配信サーバに作成したパッチをアップロードします。KernelCareを使用している各LinuxサーバのKernelCareエージェントプロセスは、4時間ごとに配信サーバにアクセスして同期及びチェックを行います。

アクティブなカーネルに新しいパッチが利用可能な場合、エージェントは新しいパッチをダウンロードして、実行中のカーネルに適用します。

KernelCareは、このようにしてカーネルの安全性を担保しています。

多くのディストリビューションに対応、実績が物語る信頼性と安定性

KernelCareは全世界で46万台/1700社以上で使われており、多くの実績が信頼性と安定性を物語っています。

GDEP_004.png

なぜこれほど普及しているのかというと、ほとんどのLinux メインディストリビューション向けにパッチのリリースを提供しているためです。

また「カスタマイズされたカーネルにも必要に応じて提供する」という汎用さと柔軟さも普及している要因の一つです。

さらに、オンプレだけに限らず、Amazon Linuxに対応しており、AWSによって承認されている唯一のライブカーネルパッチとなります。

IoTの一歩先、IoSTへ

IoTデバイス(ネットワークに繋がる機器)に入れられるライブカーネルパッチはKernelCare だけです。

GDEP_006.png

ArmをサポートするLinuxに唯一対応しています。

「ネットワークに繋がっていてセキュリティーパッチを充てたいが、リブートできない、サービスを止められない」というIoTデバイスにとっての最適解です。

KernelCareを使ってのパッチ適用の流れ

Kernel_ss.png

◇ステップ1
 KernelCareセキュリティーチームが常時、
 全てのLinux脆弱性リストを監視。

◇ステップ2
 カーネルに影響する脆弱性を感知すると、
 直ちに脆弱性パッチ(KernelCareパッチ)を作成。

◇ステップ3
 KernelCareパッチは、
 クラウド上のKernelCareパッチサーバにアップロード。

◇ステップ4
 KernelCareを利用するLinuxは、
 KernelCareエージェントをインストール。

◇ステップ5
 KernelCare稼働開始。

方法1:各Linuxからパッチサーバに直接またはプロキシ経由でアクセスし、
   該当パッチを取得。リブート無しで適用。

方法2:ローカルにWeb ベースの管理サイトePortalを構築。
   ePortalがパッチサーバにアクセスし、該当パッチを取得。
   各LinuxはePortalにアクセスし、該当パッチを取得。
   リブート無しで適用。

◇ステップ6
 各Linux及びePortalは定期的にパッチをチェックし、該当パッチを適用。

なぜ、KernelCareはリブート不要なのか?しかも検証不要?

KernelCareでパッチが適用される場合、リブートは必要ありません。これは従来のアップデートツール(例:yum, apt-get)にはなかった大きな特徴です。

その代わりにLinuxカーネルは「メモリ領域内でバイナリーパッチ」されています。

つまり「実行パスをオリジナルのコードブロックからアップデートされたコードブロックへと安全に切り替えるという仕組み」のため、リブートは不要です。その他に変更や追加をしていないので、カーネルの変更に合わせてシステムライブラリやパッケージを更新する必要はありません。

サーバをリブートしたら、KernelCareパッチは消えてしまうの?

メモリ領域内でバイナリーパッチされていますので、リブートすれば消えてしまいます。しかし、リブート直後に各 Linux にインストールされたKernelCare エージェントが必要な脆弱性パッチをKernelCare パッチサーバから取得しますので、すぐにセキュアな状態になります。

おわりに

いかがでしたでしょうか。

KernelCareは、コスト削減(システム管理者の負荷を軽減、代替サーバの準備不要)ばかりではなく、収益の増加(パッチ適用によるサービス停止無し)に繋がるソリューションです。

日本国内での販売実績も、グングン増加中です。

評価版もございますので、評価・再販・サービスへの組込み等、ぜひお問い合わせいただければと存じます。

資料のダウンロードはこちら

フォームに必要事項をご記入いただくことで、
本製品の資料をダウンロードできます。

この記事の著者:川口明男

GDEPソリューションズ株式会社 取締役

IT業界に携わってから、28年となりました。
長年、海外製品の国内立上げ、いわゆるビジネス開発を中心に活動しています。
最近は、セキュリティー関連製品が多いですね。
平日の仕事のストレスを、週末は地元の少年サッカーチームに携わり、選手達から
癒される日々を、ここ12年位送っています。


DevOps Hubのアカウントをフォローして
更新情報を受け取る

  • Like on Feedly
    follow us in feedly

関連記事

このエントリーをはてなブックマークに追加

お問い合わせ

DevOpsに関することなら
お気軽にご相談ください。

Facebook、TwitterでDevOpsに関する
情報配信を行っています。