概要

Google CloudのCompute EngineにEVE-NGをインストールすることができます。CPUやメモリのハードウェアリソースを必要なときに拡張できるので便利です。Google CloudのCompute EngineにEVE-NGをインストールする手順について解説します。

このページで扱っているのは、EVE-NG Community Editionです。Professional Editionでも同様の手順です。

一次情報として、EVE-NGのCookbookもご覧ください。このページの内容はCookbookの内容に基づいてスクリーンショットなどを追加しています。

Google CloudにEVE-NGをインストールする流れ

まず、Google CloudのCompute EngineにEVE-NGをインストールする流れを確認しましょう。

  1. Google Cloudプロジェクトの作成
  2. EVE-NG用のカスタムイメージ(Ubuntu)の作成
  3. Virtual Machineの作成
  4. EVE-NGのインストール
  5. EVE-NGへのアクセス
  6. ファイアウォールルールの作成

おおよそ20分程度で作業は完了するでしょう。ただし、EVE-NGをインストールするだけでは使えるようにはなりません。EVE-NGインストール後、Cisco IOSイメージなどエミュレートする機器のイメージを登録しなければいけません。

Step1.Google Cloudプロジェクトの作成

まず、新しくGoogle Cloudプロジェクトを作成しましょう。既存のプロジェクト内にEVE-NG環境をインストールすることもできますが、プロジェクトを分けたほうが管理しやすくなります。プロジェクト単位で課金されるので、EVE-NG用のVMにかかる費用もわかりやすくなります。

Google Cloudコンソールにログインして、EVE-NG用のプロジェクトを作成します。画面上部の[プロジェクト名]→[新しいプロジェクト]をクリックしてプロジェクト作成画面に移行します。

適切なプロジェクト名を入力してプロジェクトを作成します。組織/フォルダの指定は特に必要ありません。

Step2.EVE-NG用のカスタムイメージ(Ubuntu)の作成

EVE-NG用にカスタマイズされたUbuntu 20.04のイメージが用意されています。これをもとにしてカスタムイメージを作成します。[ナビゲーションメニュー]→[VMインスタンス]に移動します。カスタムイメージの作成はCLIで行います。Cloud Shellを起動します。

Cloud Shellで以下のコマンドを入力します。コマンドは1行です。途中で改行されないようにしてください。コピー&ペーストするのが確実です。

gcloud compute images create nested-ubuntu-focal --source-image-family=ubuntu-2004-lts --source-image-project=ubuntu-os-cloud --licenses https://www.googleapis.com/compute/v1/projects/vm-options/global/licenses/enable-vmx

Step3.Virtual Machineの作成

カスタムイメージでVirtual Machineを作成します。[Compute Engine]→[VMインスタンス]→[インスタンスを作成]をクリックして、VMインスタンス作成画面に移行します。

以下のようなパラメータでVMインスタンスを作成します。

インスタンス名任意
リージョン/ゾーン適切なリージョン/ゾーン
マシンシリーズN2
マシンタイプ必要なvCPU/RAMサイズ
表示デバイスを有効にするチェックを外す
ブートディスクnested-ubuntu-focal
HTTPトラフィックを許可するチェック

ブートディスクの変更は、[変更]をクリックしてください。

[カスタムイメージ]タブで[イメージ]を[nested-ubuntu-focal]にします。[サイズ]は適切なサイズに変更してください。

以下、作成するVMインスタンスのパラメータのサンプルです。

Step4.EVE-NGのインストール

作成したVMインスタンスにSSHで接続します。

以下のコマンドでrootになります。

sudo -i

rootになったら、以下のコマンドでEVE-NGをインストールします。

wget -O - https://www.eve-ng.net/focal/install-eve.sh | bash -i

EVE-NGのインストールにはおおよそ5分程度かかります。インストールが終わったらEVE-NGをアップデートしておきます。

apt update
apt upgrade

ここまで完了したらいったんUbuntuシステムを再起動します。

reboot

SSH接続が切断されるので、しばらくしてから[再試行]してください。

再起動が完了すると、EVE-NGのセットアップウィザードになります。rootになる必要があるので、いったんCtrl+Cでコマンドラインに戻って以下のコマンドでrootになってください。

sudo -i

その後、セットアップウィザードにしたがって進めます。必要ならrootパスワードを変更します。デフォルトのrootパスワードは[eve]です。

ホスト名およびドメイン名デフォルトのままでよいでしょう。

管理用のIPアドレスは[dhcp]としてください。

必要ならNTPの設定とVMインスタンスからのインターネットアクセスについて指定します。ここではデフォルトのままの例です。

これでEVE-NGのインストールとセットアップが完了です。システムは再起動されます。

Step5.EVE-NGへのアクセス

VMインスタンスの外部IPアドレスへアクセスします。Webブラウザに外部IPアドレスを入力すればEVE-NGのログイン画面が表示されます。

デフォルトのユーザ名/パスワードは以下です。

ユーザ名 : admin
パスワード : eve

これでGoogle CloudでのEVE-NGのインストールは完了です。ネイティブコンソールを利用するのであれば、ファイアウォールルールを作成してください。また、エミュレートしたい機器のイメージファイルを登録する必要があります。

Step6.ファイアウォールルールの作成(オプション)

EVE-NGでエミュレートする機器をPuttyなどのターミナルソフトウェアで扱うためにはネイティブコンソールを利用します。Google CloudにインストールしたEVE-NGでネイティブコンソールを利用するためには、ファイアウォールルールを追加してください。

Ingress/EgressのTCPポートをすべて許可するというちょっと心配なファイアウォールルールです。とりあえず公式のCookbookに記載されている手順通りとしています。

[ナビゲーションメニュー]→[VPCネットワーク]→[ファイアウォール]→[ファイアウォールルールを作成]をクリックします。

Ingress(上り)のファイアウォールルールとして、以下の設定を行います。

項目内容
名前任意
トラフィックの方向上り
一致したときのアクション許可
ターゲットネットワーク上のすべてのインスタンス
ソースフィルタIPv4範囲
送信元IPv4範囲0.0.0.0/0
指定したプロトコルとポート TCP0-65535

Egress(下り)のファイアウォールルールとして、以下の設定を行います。

項目内容
名前任意
トラフィックの方向下り
一致したときのアクション許可
ターゲットネットワーク上のすべてのインスタンス
ソースフィルタIPv4範囲
送信元IPv4範囲0.0.0.0/0
指定したプロトコルとポート TCP0-65535

動画解説

Google CloudにEVE-NGをインストールする様子を動画にもしました。