Firepower Threat Defense Virtual の起動
Virtual Machine Manager を使用した起動
OpenStack での 第 0 日のコンフィギュレーション ファイルについて
第 0 日のコンフィギュレーション ファイルを使用しない起動
カーネルベースの仮想マシン(KVM)ハイパーバイザを使用して Firepower Threat Defense Virtual を導入できます。
KVM は、仮想化拡張機能(Intel VT など)を搭載した x86 ハードウェア上の Linux 向け完全仮想化ソリューションです。KVM は、コア仮想化インフラストラクチャを提供するロード可能なカーネル モジュール(kvm.ko)と kvm-intel.ko などのプロセッサ固有のモジュールで構成されています。
KVM を使用して、修正されていない OS イメージを実行している複数の仮想マシンを実行できます。各仮想マシンには、ネットワーク カード、ディスク、グラフィック アダプタなどのプライベートな仮想化ハードウェアが搭載されています。
KVM 上の Firepower Threat Defense Virtual は次をサポートします。
–ブートするには 2 つの管理インターフェイスと 2 つのデータ インターフェイスが必要
(注) Firepower Threat Defense Virtual のデフォルト設定では、管理インターフェイス、診断インターフェイス、および内部インターフェイスは同じサブネットに配置されます。
–Firepower Threat Defense Virtual には 50 GB 必要
SR-IOV 仮想機能には特定のシステム リソースが必要です。SR-IOV 対応 PCIe アダプタに加えて、SR-IOV をサポートするサーバが必要です。以下のハードウェア検討事項に留意する必要があります。
– Intel Ethernet Server Adapter X520 - DA2
– Intel Ethernet Server Adapter X540
注:シスコでは、Firepower Threat Defense Virtual を 2.3GHz の Intel Broadwell CPU(E5-2699-v4)でテストしました。
(注) CPU ピンニングは、フル スループットを実現するために推奨されています。
Firepower Threat Defense Virtual インターフェイスのネットワーク アダプタ、送信元ネットワーク、宛先ネットワークに関する以下の用語索引を参照してください。
vnic01 |
|||
https://software.cisco.com/download/navigator.html
(注) Cisco.com のログインおよびシスコ サービス契約が必要です。
–virsh(通常、このコマンドライン インターフェイスは libvirt bin パッケージの一部)
–macvtap:高性能の Linux ブリッジ。Linux ブリッジの代わりに macvtap を使用できます。
(注) ただし、Linux ブリッジの代わりに macvtap を使用する場合は、特定の設定を行う必要があります。
–Transparent Huge Pages:メモリ ページ サイズを増加させます。Ubuntu 14.04 では、デフォルトでオンになっています。
–Hyperthread disabled:2 つの vCPUを 1 つのシングル コアに削減します。
–txqueuelength:デフォルトの txqueuelength を 4000 パケットに増加させ、ドロップ レートを低減します。
–pinning:qemu および vhost プロセスを特定のCPU コア にピン接続します。特定の条件下では、ピン接続によってパフォーマンスが大幅に向上します。
Firepower Threat Defense Virtual デバイスには、Firepower Management Center から設定可能なスマート ソフトウェア ライセンシングが必要です。詳細については、『Firepower Management Center Configuration Guide』の「Licensing」の章または Firepower Management Center のオンライン ヘルプを参照してください。
Firepower Threat Defense Virtual を起動する前に、第 0 日用のコンフィギュレーション ファイルを準備できます。このファイルは、仮想マシンの導入時に適用される初期設定データを含むテキスト ファイルです。この初期設定は、「day0-config」というテキスト ファイルとして指定の作業ディレクトリに格納され、さらに day0.iso ファイルへと処理されます。この day0.iso ファイルが最初の起動時にマウントされて読み取られます。
(注) day0.iso ファイルは、最初のブート時に使用できる必要があります。
第 0 日のコンフィギュレーション ファイルを使用して展開する場合、プロセスで、Firepower Threat Defense Virtual アプライアンスの初期設定全体を実行できます。次を指定することができます。
第 0 日のコンフィギュレーション ファイルを使用せずに展開する場合は、起動後に Firepower システム の必須設定を指定する必要があります。詳細については、第 0 日のコンフィギュレーション ファイルを使用しない起動を参照してください。
(注) この例では Linux が使用されていますが、Windows の場合にも同様のユーティリティがあります。
1. 「day0-config」というテキスト ファイルに Firepower Threat Defense Virtual の CLI 設定を記入します。ネットワーク設定と Firepower Management Center の管理に関する情報を追加します。
2. テキスト ファイルを ISO ファイルに変換して仮想 CD-ROM を生成します。
3. 手順を繰り返して、導入する Firepower Threat Defense Virtual ごとに一意のデフォルト設定ファイルを作成します。
virt-install ベースの導入スクリプトを使用して Firepower Threat Defense Virtual を起動できます。
環境に最適なゲスト キャッシング モードを選択してパフォーマンスを最適化できることに注意してください。使用中のキャッシュ モードは、データ損失が発生するかどうかに影響を与え、キャッシュ モードはディスクのパフォーマンスにも影響します。
各 KVM ゲスト ディスク インターフェイスで、指定されたいずれかのキャッシュ モード( writethrough 、 writeback 、 none 、 directsync 、または unsafe )を指定できます。 writethrough は読み取りキャッシングを提供します。 writeback は読み取りと書き込みキャッシングを提供します。 directsync はホスト ページ キャッシュをバイパスします。 unsafe はすべてのコンテンツをキャッシュし、ゲストからのフラッシュ要求を無視できます。
1. 「virt_install_ftdv.sh」という virt-install スクリプトを作成します。
Firepower Threat Defense Virtual VM の名前は、この KVM ホスト上の他の仮想マシン(VM)全体において一意であることが必要です。
(注) KVM 上の Firepower Threat Defense Virtual では、合計で 10 個のインターフェイスをサポートします(管理インターフェイス X 1 個、診断インターフェイス X 1 個、データ トラフィック用ネットワーク インターフェイス X 最大 8 個)。仮想 NIC は Virtio でなければなりません。ネットワークへのインターフェイスの割り当ては、次の順番であることが必要です。
ウィンドウが開き、VM のコンソールが表示されます。VM が起動中であることを確認できます。VM が起動するまでに数分かかります。VM が起動したら、コンソール画面から CLI コマンドを実行できます。
virt-manager(Virtual Machine Manager とも呼ばれる)を使用して Firepower Threat Defense Virtual を起動します。virt-manager は、ゲスト仮想マシンを作成および管理するためのグラフィカル ツールです。
1. virt-manager を起動します([アプリケーション(Applications)] > [システムツール(System Tools)] > [Virtual Machine Manager])。
ハイパーバイザの選択、およびルート パスワードの入力を求められる可能性があります。
2. 左上隅のボタンをクリックし、[VM の新規作成(New VM)] ウィザードを開きます。
b. オペレーティング システムの場合、[既存のディスクイメージをインポート(Import existing disk image)] を選択します。
この方法でディスク イメージ(事前にインストールされた、ブート可能なオペレーティング システムを含んでいるもの)をインポートできます。
c. [次へ(Forward)] をクリックして続行します。
a. [参照...(Browse...)] をクリックしてイメージ ファイルを選択します。
b. [OS タイプ(OS type)] に [Linux] を選択します。
c. [バージョン(Version)] に [virtio を含む汎用 2.6.25 以降のカーネル(Generic 2.6.25 or later kernel with virtio)] を選択します 。
d. [次へ(Forward)] をクリックして続行します。
a. [メモリ(RAM)(Memory (RAM))] を 8192 に設定します。
c. [次へ(Forward)] をクリックして続行します。
6. [完了(Finish)] をクリックする前に [インストール前に設定をカスタマイズする(Customize configuration before install)] ボックスをオンにします。
この操作を行うと、別のウィザードが開き、仮想マシンのハードウェア設定を追加、削除、設定することができます。
左側のパネルから [プロセッサ(Processor)] を選択し、[設定(Configuration)] > [ ホスト CPU 構成のコピー(Copy host CPU configuration)] を選択します。
これによって、物理ホストの CPU モデルと設定が仮想マシンに適用されます。
a. 左側のパネルから [ディスク 1(Disk 1)] を選択します。
b. [詳細オプション(Advanced Options)] をクリックします。
c. [ディスクバス(Disk bus)] を [Virtio] に設定します。
d. [ストレージ形式(Storage format)] を [qcow2] に設定します。
a. 左側のパネルから [コンソール(Console)] を選択します。
b. [削除(Remove)] を選択してデフォルト コンソールを削除します。
c. [ハードウェアを追加(Add Hardware)] をクリックしてシリアル デバイスを追加します。
d. [デバイスタイプ(Device Type)] で、[TCP net console (tcp)(TCP net console (tcp)] を選択します。
e. [モード(Mode)] で、[サーバモード(バインド)(Server mode (bind))] を選択します。
f. [ホスト(Host)] には IP アドレスと ポート 番号を入力します。
g. [Telnet を使用(Use Telnet)] ボックスをオンにします。
10. KVM ゲストがハングまたはクラッシュしたときに何らかのアクションが自動でトリガーされるようウォッチドッグ デバイスを設定します。
a. [ハードウェアを追加(Add Hardware)] をクリックしてウォッチドック デバイスを追加します。
b. [モデル(Model)] で、[デフォルト(default)] を選択します。
c. [アクション(Action)] で、[ゲストを強制的にリセット(Forcefully reset the guest)] を選択します。
11. 少なくとも 4 つの仮想ネットワーク インターフェイスを設定します。
a. [ハードウェアを追加(Add Hardware)] をクリックしてインターフェイスを追加します。
b. [送信元デバイス(Source device)] で、[macvtap] を選択します。
c. [デバイスモデル(Device model)] で、[virtio] を選択します。
d. [送信元モード(Source mode)] で、[ブリッジ(Bridge)] を選択します。
(注) KVM 上の Firepower Threat Defense Virtual では、合計で 10 個のインターフェイスをサポートします(管理インターフェイス X 1 個、診断インターフェイス X 1 個、データ トラフィック用ネットワーク インターフェイス X 最大 8 個)。ネットワークへのインターフェイスの割り当ては、次の順番である必要があります。
12. 第 0 日のコンフィギュレーション ファイルを使用して展開する場合、ISO の仮想 CD-ROM を作成します。
c. [管理対象またはその他既存のストレージを選択(Select managed or other existing storage)] をクリックし、ISO ファイルの場所を参照します。
d. [デバイスタイプ(Device type)] で、[IDE CDROM] を選択します。
13. 仮想マシンのハードウェアを設定した後、[適用(Apply)] をクリックします。
14. virt-manager の [インストールの開始(Begin installation)] をクリックして、指定したハードウェア設定で仮想マシンを作成します。
OpenStack 環境に Firepower Threat Defense Virtual を展開できます。OpenStack は、パブリック クラウドとプライベート クラウドの、クラウド コンピューティング プラットフォームを構築および管理するための一連のソフトウェア ツールで、KVM ハイパーバイザと緊密に統合されています。
(注) OpenStack 環境に Firepower Threat Defense Virtual を導入する場合は、無差別モードで実行し、ポート セキュリティ(パケット フィルタリング)を無効にする必要があります。この操作を行うときに、セキュリティ グループまたは許可されたアドレス ペアがインターフェイスに割り当てられていると、ポート セキュリティを無効にできないことに注意してください。ポート レベルのセキュリティを無効にすると、すべてのトラフィック(イングレスとイーグレス)が許可されます。
OpenStack では、ブート時にインスタンスに接続される特殊な設定ドライブ(config-drive)を使った設定データの提供をサポートしています。第 0 日のコンフィギュレーション ファイルを含む Firepower Threat Defense Virtual インスタンスを nova boot コマンドを使用して展開するには、次の行を含めます。
--config-drive コマンドが有効な場合、nova クライアントが呼び出される Linux ファイルシステムにあるファイル =/home/user/day0-config が仮想 CDROM の仮想マシンに渡されます。
(注) VM はこのファイルを day0-config という名前で認識しますが、OpenStack では通常このファイルの内容を /openstack/content/xxxx として保存します。この xxxx は、割り当てられた 4 桁の数字(/openstack/content/0000 など)です。これは、OpenStack ディストリビューションによって異なる場合があります。
nova boot コマンドを使用して Firepower Threat Defense Virtual インスタンスを作成およびブートします。
1. イメージ、フレーバー、インターフェイス、および第 0 日の設定情報を使用して Firepower Threat Defense Virtual インスタンスをブートします。
Firepower Threat Defense Virtual は最大 10 個のネットワーク インターフェイスをサポートできます。この例では、4 つのインターフェイスを使用しています。
(注) Firepower Threat Defense Virtual を起動するには、少なくとも 4 つのインターフェイス(2 つの管理インターフェイスと 2 つのトラフィック インターフェイス)が必要です。
Horizon は、OpenStack のダッシュボードであり、Nova、Swift、Keystone などの OpenStack サービスへの Web ベース ユーザ インターフェイスを提供します。
https://software.cisco.com/download/navigator.html
(注) Cisco.com のログインおよびシスコ サービス契約が必要です。
1. [Log In] ページで、ユーザ名とパスワードを入力し、[Sign In] をクリックします。
ダッシュボードに表示されるタグと機能は、ログインしているユーザのアクセス権限(権限)によって異なります。
2. メニューから [Admin] > [System Panel] > [Flavor] を選択します。
仮想ハードウェアのテンプレートは OpenStack でフレーバーと呼ばれ、RAM、ディスクのサイズ、コア数を定義します。この手順では、Firepower 導入用のフレーバーを作成します。
3. [Flavor Info] ウィンドウに必要な情報を入力します。
a. [Name]:インスタンスを簡単に識別するわかりやすい名前を入力します。たとえば、FTD-FMC-4vCPU-8GB とします。
b. [VCPUs]:[VCPUs] を 4 に設定します。
c. [RAM MB]:RAM を 8192 に設定します。
5. メニューから [Admin] > [System Panel] > [Images] を選択します。
6. [Create An Image] ウィンドウに必要な情報を入力します。
a. [Name]:イメージを簡単に識別する名前を入力します。たとえば、FTD-Version-Build とします。
b. [Description]:(オプション)イメージ ファイルの説明を入力します。
c. [Browse]:前に Cisco.com からダウンロードした Firepower Threat Defense Virtual qcow2 ファイルを選択します。
d. [Format]:形式タイプとして [QCOW2-QEMU Emulator] を選択します。
8. メニューから [Project] > [Compute] > [Instances] を選択します。
9. [Launch Instance] をクリックします。
10. [Launch Instance] > [Details] タブに必要な情報を入力します。
a. [Instance Name]:インスタンスを簡単に識別する名前を入力します。たとえば、FTD-Version-Build とします。
b. [Flavor]:手順 3. で前に作成したフレーバーを選択します。このイメージ ファイルの説明を入力します。
c. [Instance Boot Source]:[Boot from image] を選択します。
d. [Image Name]:手順 6. で作成したイメージを選択します。
11. [Launch Instance] > [Networking] タブから、Firepower Threat Defense Virtual インスタンスの管理ネットワークとデータ ネットワークを選択します。
(注) Firepower Threat Defense Virtual を起動するには、少なくとも 4 つのインターフェイス(2 つの管理インターフェイスと 2 つのトラフィック インターフェイス)が必要です。
インスタンスはクラウド内のコンピューティング ノードから開始します。[インスタンス(Instances)] ウィンドウから新しく作成したインスタンスを表示します。
13. Firepower Threat Defense Virtual インスタンスを選択します。
Firepower Threat Defense Virtual アプライアンスには Web インターフェイスがないため、第 0 日のコンフィギュレーション ファイルを使用せずに展開した場合には、CLI を使用して仮想デバイスを設定する必要があります。
新しく展開されたデバイスに初めてログインするときに、EULA を読んで同意する必要があります。次に、セットアップ プロンプトに従って管理パスワードを変更し、デバイスのネットワーク設定およびファイアウォール モードを設定します。
セットアップ プロンプトに従う際に、複数の選択肢がある質問では、選択肢が (y/n) のように括弧で囲まれて示されます。デフォルト値は、 [y] のように大カッコ内に列挙されます。Enter キーを押して、選択を確定します。
(注) 初期セットアップの完了後に仮想デバイスに関するこれらの設定を変更するには、CLI を使用する必要があります。
1. Firepower Threat Defense Virtual でコンソールを開きます。
2. ユーザ名 に admin を、 パスワード に Admin123 を使用してコンソールで仮想アプライアンスにログインします。
直後に、デバイスから EULA を読むようにプロンプトが表示されます。
4. admin アカウントのパスワードを変更します。このアカウントには Configuration CLI アクセス レベルが付与されており、削除することはできません。
(注) Cisco では、大文字と小文字が混在する 8 文字以上の英数字で、1 つ以上の数字を含む強力なパスワードを使用することを推奨しています。辞書に掲載されている単語の使用は避けてください。
設定が実装されたときに、コンソールにメッセージが表示される場合があります。完了したら、このデバイスを Cisco Firepower Management Center に登録するよう要求され、CLI プロンプトが表示されます。
6. コンソールが firepower # プロンプトに戻るときに、設定が正常に行われたことを確認します。
7. configure manager add コマンドを使用して、このデバイスを管理する Firepower Management Center アプライアンスを指定します。
–{ hostname | IPv4_address | IPv6_address | DONTRESOLVE } は、Firepower Management Center の完全修飾ホスト名または IP アドレスのいずれかを指定します。Firepower Management Center を直接アドレス指定できない場合は、DONTRESOLVE を使用します。
– reg_key は、Firepower Threat Defense モジュールを Firepower Management Center へ登録するのに必要な一意の英数字による登録キーです。
(注) 登録キーは、ユーザ生成の 1 回しか使用できないキーです。37 文字以下にする必要があります。有効な文字には、英数字(A–Z、a–z、0–9)、およびハイフン(-)などがあります。デバイスを Firepower Management Center に追加するときに、この登録キーを思い出す必要があります。
– nat_id は、Firepower Management Center と Firepower Threat Defense Virtual 間の登録プロセス中に使用されるオプションの英数字文字列です。hostname が DONTRESOLVE に設定されている場合に必要です。
Single Root I/O Virtualization(SR-IOV)により、さまざまなゲスト オペレーティング システムを実行している複数の VM が、ホスト サーバ内の単一の PCIe ネットワーク アダプタを共有できるようになります。SR-IOV では、VM がネットワーク アダプタとの間で直接データを移動でき、ハイパーバイザをバイパスすることで、ネットワークのスループットが増加しサーバの CPU 負荷が低下します。最近の x86 サーバ プロセッサには、SR-IOV に必要なダイレクト メモリの転送やその他の操作を容易にする Intel VT-d テクノロジーなど、チップセットの拡張機能が搭載されています。
SR-IOV 仕様では、次の 2 つのデバイス タイプが定義されています。
VF は、仮想化されたオペレーティング システム フレームワーク内の Firepower Threat Defense Virtual 仮想マシンに最大 10 Gbps の接続を提供できます。このセクションでは、VMware 環境で VF を設定する方法について説明します。
SR-IOV をサポートする物理 NIC があれば、SR-IOV 対応 VF または仮想 NIC(vNIC)を ASAv インスタンスにアタッチできます。SR-IOV は、BIOS だけでなく、ハードウェア上で実行しているオペレーティング システム インスタンスまたはハイパーバイザでのサポートも必要です。KVM 環境で実行中の ASAv 用の SR-IOV インターフェイスのプロビジョニングに関する一般的なガイドラインのリストを以下に示します。
このセクションでは、KVM システム上の SR-IOV インターフェイスのプロビジョニングに関するさまざまなセットアップ手順と設定手順を示します。このセクション内の情報は、Intel Ethernet Server Adapter X520 - DA2 を使用した Cisco UCS C シリーズ サーバ上の Ubuntu 14.04 を使用して、特定のラボ環境内のデバイスから作成されたものです。
注:システム メーカーによっては、これらの拡張機能がデフォルトで無効になっている場合があります。システムごとに BIOS 設定にアクセスして変更する方法が異なるため、ベンダーのマニュアルでプロセスを確認することをお勧めします。
1. "root" ユーザ アカウントとパスワードを使用してシステムにログインします。
2. Intel VT-d が有効になっていることを確認します。
最後の行は、VT-d が有効になっていることを示しています。
3. /etc/default/grub 設定ファイル内の GRUB_CMDLINE_LINUX エントリに intel_iommu=on パラメータを付加することによって、カーネル内の Intel VT-d をアクティブにします。
注:AMD プロセッサを使用している場合は、代わりに、amd_iommu=on をブート パラメータに付加する必要があります。
4. iommu の変更を有効にするためにサーバをリブートします。
5. 次の形式を使用して sysfs インターフェイス経由で sriov_numvfs パラメータに適切な値を書き込むことによって VF を作成します。
サーバの電源を入れ直すたびに必要な数の VF が作成されることを保証するには、 /etc/rc.d/ ディレクトリに配置されている rc.local ファイルに上記コマンドを付加します。Linux OS は、ブート プロセスの最後で rc.local スクリプトを実行します。
たとえば、ポートあたり 1 つの VF を作成するケースを以下に示します。お使いのセットアップではインターフェイスが異なる可能性があります。
VF を作成したら、PCI デバイスを追加するのと同様に、VF を Firepower Threat Defense Virtual に追加できます。次の例では、グラフィカル virt-manager ツールを使用して、イーサネット VF コントローラを Firepower Threat Defense Virtual に追加する方法について説明します。
1. Firepower Threat Defense Virtual を開いて、[Add Hardware] ボタンをクリックし、新しいデバイスを仮想マシンに追加します。
2. 左ペインの [Hardware] リストで [PCI Host Device] をクリックします。
VF を含む PCI デバイスのリストが中央ペインに表示されます。
3. 使用可能な仮想機能のいずれかを選択して、[Finish] をクリックします。
PCI デバイスがハードウェア リストに表示されます。デバイスの記述が Ethernet Controller Virtual Function になっていることに注意してください。