この記事は、Security Business Group の Engineering Product Manager である Pal Lakatos-Toth によるブログ「Snort 3 Anywhere」(2021/12/2)の抄訳です。
このたび、AWS Marketplace のコンテナフォームファクタで Snort 3 が正式リリースされました。名称は「Snort 3 Anywhere」です。AWS 上または オンプレミスで稼働する Kubernetes クラスタでご利用いただけます。マルチクラウド環境全体のネットワーク、ワークロード、アプリケーションのセキュリティをシンプルにするというシスコのビジョンを実現する新たな方法です。
子豚のマスコットが目印のシスコの Snort については皆さんご存知でしょう。長い歴史を誇る Snort は、業界の評価が高いデファクトスタンダードの侵入防御エンジンであり、史上最高のオープンソースソフトウェアとして殿堂入りしています。Cisco Secure Firewall、Cisco Umbrella、Meraki MX などのシスコ製品に広く使用されているほか、業界パートナー各社にもご活用いただいています。また、スタンドアロンのオープンソースパッケージとしてもご利用いただけます。
子豚のマスコット「Snorty」が、コンテナ革命をもたらす新たな旅に出るときがやってきました。
コンテナ革命
ここ数年でコンテナテクノロジーの需要が大幅に高まり、コンテナ化されたフォームファクタで各種機能を使用する必要性が高まっています。オンプレミスとクラウドの両方でクラウド ネイティブ アーキテクチャの進化が促進されました。
当然の反応として、市場のあらゆる企業が顧客のニーズを満たすためコンテナベースのソリューションを提供するようになっています。その中でも特に人気があるソリューションで活用されているテクノロジーが Docker と Kubernetes です。
詳しくない方のために簡単にご説明しておくと、Docker とは、アプリケーションをコンテナ化する方法を提供するオープンソーステクノロジーであり、コンテナファイル形式のことを指すこともあります。Docker では、開発しながらコンテナを構築して実行することができます。コンテナが多くて処理しきれない場合には Kubernetes が役に立ちます。複数のサーバーをクラスタ化し、コンテナの拡張、複雑さ、自己修復、展開、オーケストレーションに対応できるエコシステムを提供します。
もう 1 つの注目すべきテクノロジーとしては Helm があります。Helm が重要な役割を果たすソリューションについて、Helm のサイトから引用してご紹介します。「Helm は、チャートと呼ばれる Kubernetes パッケージを管理するためのツールです」。要するに、Helm チャートを使用すれば、Kubernetes がコンテナをインスタンス化するために必要なすべての情報をまとめることができます。ブートストラップパラメータ、依存関係管理、ライフサイクル管理のためのリリースメタデータといったものを思い浮かべてみてください。
課題
最近では、コンテナの流通チャネルが拡大したために、安全で信頼できる単一のカタログを見ながら製品を購入することが難しくなっています。オンプレミスとクラウドが混在するハイブリッドクラウド環境では、この問題はさらに複雑になります。
技術的な言い方をすると、Kubernetes を導入する際に使用できる「アーティファクトレジストリ」はさまざまで、数多く存在します。ですから、コンテナフォームファクタで提供される種々のソリューションにアクセスして購入するものを決め、導入することができます。
その結果、いくつもの課題が発生します。調達、セキュリティ、コンプライアンス、財務の各部門は、すべてのベンダーとの関係と契約を管理し、コンテナアプリケーションを認証し、実稼働環境で使用できるようにリリースしなければなりません。こうした課題から派生する負担は、対処しなければますます重くなるばかりです。
解決策
ユーザーが直面している上記の課題の解決策を提供すべく、AWS は大胆な対応に踏み切りました。「Containers Anywhere」という最新の AWS Marketplace を提供したのです。
AWS Marketplace Container Anywhere を利用すれば、このマーケットプレイス経由でサードパーティ製の Kubernetes アプリケーションを探してサブスクリプションを購入し、導入することができます。これで、セキュリティ、さまざまなベンダーとの関係管理、使用率のモニタリング、請求に関する制約が緩和されます。市場で提供されているコンテナに対しては、安全性とセキュリティの確保のため AWS を通じて審査が行われます。
では、ここで我らが子豚 Snorty はどのように活躍するのでしょうか。
「Snort 3 Anywhere」という新しいサービスが、AWS Marketplace の Helm チャートの形で提供されます。Helm チャートであれば、AWS とオンプレミスの Kubernetes クラスタの両方に簡単に導入して使用できます。
「Snort 3 Anywhere」のサービスには、独自仕様 Snort ルールに対応した 1 年間のビジネスサブスクリプションが付属しています(Snort 3 自体はオープンソースであり、GPLv2 のもとで自由に使用できます。つまり、お支払いいただくのは実質的にビジネスルールのサブスクリプションです)。
ユースケース
ここで、少し具体的なお話をしましょう。
AWS コンテナ環境で Snort 3 Anywhere サービスがサポートするユースケースには次のようなものがあります。
- 集中型アーキテクチャの GWLB(ゲートウェイロードバランサ)の背後にある Snort 3 インスタンス
- 分散型アーキテクチャの GWLB(ゲートウェイロードバランサ)の背後にある Snort 3 インスタンス
Snort には、GWLB から送信されるカプセル化された Geneve パケットを処理する新しいデータ収集モジュール(DAQ)が追加されています。
このように実装すれば、パケットをインラインモードまたはパッシブモードで、ただし環境には透過的に検査できるという柔軟性が得られます。Snort の機能を活用することで、Amazon ECS、EKS、EKS Anywhere 環境のリソースが保護されます。パッシブモードの場合、Snort インスタンスはトラフィックを転送し続けますが、生成されるイベントは「ブロックされたはず」のイベントのみです。これは、検査されたトラフィックを GWLB に向けてワイヤに送り返して Geneve でカプセル化する必要があるためです。
オンプレミスの Kubernetes 環境で Snort 3 Anywhere サービスがサポートするユースケースには次のようなものがあります。
- インラインモードの導入
- パッシブモードの導入
インラインモードとパッシブモードの両方のオンプレミス環境で、よく知られている afpacket DAQ モジュールを使用しています。
DAQ の設定を編集する必要があるかどうかは、Snort を使用する Kubernetes 環境が AWS かオンプレミスかによって異なります。daq パラメータは、Helm チャートの一部である「values.yaml」ファイルの snort3 セクションにあります。AWS の場合は「gwlb」、オンプレミスの場合は「afpacket」に設定するとよいでしょう。このファイルでは、カスタムインターフェイスを設定したり、Snort をインラインモードからパッシブモードに変更したりすることもできます。その他の Snort パラメータや設定については、こちらのマニュアルをご参照ください。
Snort 3 Anywhere ソリューションをご利用いただければ、オンプレミスと AWS どちらの Kubernetes 環境でも Snort の機能を活用することができます。ニーズに合わせて Snort ルールを作成してカスタマイズすることも可能です。
Kubernetes によってオーケストレーションされ、REST API をサポートする、より堅牢なクラウド ネイティブ セキュリティ ソリューションをお求めでしたら、Cisco Secure Firewall Cloud Native 製品をご検討ください。
その他のリソース
ぜひお客様のご意見をお聞かせください。以下から質問やコメントを投稿し、ソーシャルネットワークで Cisco Secure の最新情報を入手してください。
Cisco Secure ソーシャルメディア
Instagram
Facebook
Twitter
LinkedIn