Akamai Guardicore SegmentationでのSecure Bootサポート
Akamai Guardicore Segmentation について
Akamai Guardicore Segmentation (以下 「AGS」) は、サーバーや端末にソフトウェアエージェントを導入することにより、組織内部の通信を可視化し、各ホストの役割に応じて制御するマイクロセグメンテーションを実現するソリューションです。
今回はAGSのエージェントを導入する際に特定のOSで必要なSecure Boot対応についてご紹介します。
Secure Bootについて
Secure Bootは、UEFI(Unified Extensible Firmware Interface)コンソーシアムによって開発された、UEFIファームウェアのセキュリティ機能です。(UEFIは広義の意味でBIOSと呼ばれることもあります)OS起動時に署名されたソフトウェアの読み込みを許可することで、悪意のあるソフトウェアがカーネル空間で実行されるのを防ぐように設計されたセキュリティ機能です。最近のLinuxではサポートされていますが、有効化されているかどうかは設定によります。
AGSでのSecure Boot対応
AGSでは、マイクロセグメンテーションを提供するエージェントをOSにインストールします。このエージェントの一部機能は署名されており適用には公開鍵が必要です。AGSによるマイクロセグメンテーションの適用で、以下のメリットを享受できます。
強化されたセキュリティ:
マイクロセグメンテーションにより、内部の不正アクセスを効果的に防ぎます。
統一された管理:
異なるOS間で統一されたファイアウォールの設定が可能なため、
管理の手間が大幅に削減されます。
高いパフォーマンス:
エージェントは必要最低限のリソースのみを利用し、高パフォーマンスの
ファイアウォール機能を提供するため、システム全体のパフォーマンスを
維持しながらセキュリティを強化します。
将来性の確保:
Windows Server 2012やRHEL6などのレガシーOSにも対応しており、今後のシステム
拡張やアップグレードにも柔軟に対応可能です。
Secure Bootの有効/無効確認方法
Secure BootはUEFIで設定を行いますが、有効化されているかどうかはOS上でも確認が可能です。
・WindowsでのSecure Boot有効/無効確認方法
システム情報ツールにて確認します。
・LinuxでのSecure Boot有効/無効確認方法
以下のコマンドを実行します。有効化されていれば「enabled」と表示されます。
$ mokutil --sb-state SecureBoot enabled $ |
AGSのSecure Boot対応方法
AGSのエージェントではSecure Bootをサポートしています。(Windows Agent v31.7以降 / Linux Agent v37以降)Linuxでは、公開鍵をシステムに登録することでモジュールを読み込むことが可能です。
・Windowsでの対応
特に必要ありません。
・Linuxでの対応
コマンドで確認の結果、Secure Bootが有効化されている場合は、エージェントのインストールに加えて公開鍵を登録する必要があります。公開鍵のダウンロード先URLなどの詳細な手順は、TechDocs - Akamai Guardicore Segmentationの「Users administration guides」に記載されていますが、ここでは概要をご紹介します。
なお、LinuxでSecure Boot用の公開鍵を登録する場合、OSの仕組みにより再起動が必要となります。
以下の手順4以降はローカルコンソールでの作業が必要となります。
1. Akamai Control CenterよりSecure Boot Keyのページに移動します。(AGSのご契約が必要です)
2. 適切な公開鍵をダウンロードして、Linuxマシンの任意のディレクトリーに配置します。
3. 公開鍵ファイルがあるディレクトリー上で、管理者として以下のコマンドで公開鍵をインポートします。鍵の登録時に使用する任意のパスワードを登録します。その後、OS再起動を行います。
# mokutil --import gc-secure-boot-key-r0.pub input password: <任意のパスワードを入力> input password again: <任意のパスワードを入力> # |
4. OSの再起動直後に、以下の画面が表示されますので、キーを押して登録に進めます。どのキーを押すかはOSによって異なりますので画面に従います。
5. 「Enroll MOK」、「Continue」、「Yes」を選択し、次に進めます。
6. 鍵の登録時に先ほど入力したパスワードを入れます。
7. 公開鍵の登録が完了したら、「Reboot」にてOSを再起動します。
OS起動後は以下のコマンドで登録の完了を確認できます。
$ mokutil --list-enrolled | grep Guardicore Issuer: O=Guardicore, CN=Guardicore/emailAddress=mailaddr@maildomain Subject: O=Guardicore, CN=Guardicore/emailAddress=mailaddr@maildomain |
8. 公開鍵が登録できたら、AGSのエージェントをインストールします。事前にエージェントをインストール済みの場合、再インストールは不要です。
公開鍵の登録は以上で完了です。
公開鍵の削除方法
PoC(Proof of Concept)の終了などで公開鍵を削除する場合は、登録時と同じような流れで削除を行います。
1. 公開鍵ファイルがあるディレクトリー上で、管理者として以下のコマンド(--delete)で公開鍵を削除します。
鍵の削除時に使用する任意のパスワードを登録します。その後OSの再起動を行います。
# mokutil --delete gc-secure-boot-key-r0.pub input password: <任意のパスワードを入力> input password again: <任意のパスワードを入力> # |
2. OSを再起動したら、今度は「Delete MOK」にて進めます。その他は登録時と同じです。
まとめ
Akamai Guardicore Segmentationでは、WindowsやLinuxなど異なるOSでも同じレベルでのマイクロセグメンテーションを提供し、セキュリティを最大限に強化しながら同時にシンプルな運用を実現します。この仕組みは導入時だけでなく、継続した運用においてもIT管理者にとって大きなメリットになります。AGSを導入することで、組織全体のセキュリティレベルを一段と高め、安心して業務に集中できる環境を構築できます。
AGS に関しては、以下ブログも併せてご参照ください。
・Akamai ブログ(Products: セグメンテーション)
・Akamai ブログ(Products: Hunt)
Akamai はCDN、セキュリティ、クラウドサービスを通じ、オンラインライフの力となり守っています。本稿でご紹介したような課題やご相談がございましたら、お気軽にお問い合わせください。