夜明け前の最も暗いとき

技術的なやったことをメモするブログ

Intel NUCとVMware ESXi 6.5上にSophos XG Firewallを構築する

仮想化技術の勉強のため新しくIntel NUCを購入しました。業務用サーバのようなデカくてうるさいやつはさすがに自宅に置けないので、省スペースなNUCを選びました。

この機種を選定した理由として、Core i5の4コアHT対応で論理コアが8コアあるからです。仮想環境で動かすホスト数によってはCPUリソースが足りなくなるかもしれないと考えたためです。

また、ゲストとしてSophos XG Firewall Home Editionを導入し、ネットワーク機器として運用します。このFWの最低動作条件以下の通りです。

  • x86064 (64 bit) CPU
  • 2 Network Card Interface (NIC)
  • 2GB RAM
  • 10GB HDD/SDD

動作させるにはNICが2つ必要となります。

NUCキットはメモリとSSDは別売りなので別途購入する必要があります。メモリはDDR4-2400のノートPC用を2つ購入し16Gにしました。

ストレージは、SSDとM2をに対応しています。今回はSSDのみにしました。

SanDisk 内蔵SSD 2.5インチ / 480GB / SSD PLUS / SATA3.0 / 3年保証 / SDSSDA-480G-J26

SanDisk 内蔵SSD 2.5インチ / 480GB / SSD PLUS / SATA3.0 / 3年保証 / SDSSDA-480G-J26

また、電源ケーブルは付いてこないので買う必要があります。

NUCにはNIC(Network Interface Card)が1つしかないため、ネットワーク機器として運用するにはUSB有線LANアダブターが必要となります。今回は2つ購入し合計3ポートにします。

BuffaloのLANアダブターはLinuxに対応しているか明記されていませんが、動きました。もし不安であれば100MになりますがPlanexのLANアダブターがLinux対応です。

 ESXiのインストールイメージはVMware社の公式サイトからダウンロードできます。今回はVMware vSphere Hypervisor 6.5.0 Update 2 - BinariesからVMware vSphere Hypervisor (ESXi ISO) image (Includes VMware Tools)をダウンロードしました。

起動用USBはRufusでセットアップし、ESXiをインストールします。インストールは使用するディスクやrootパスワードを設定する程度です。リブート後にIPアドレスを設定します。別PCからpingで疎通ができればOKです。設定したアドレスにブラウザでアクセスするとVMware Host Clientの画面が表示されます。

f:id:jianlan:20190407221957j:plain
(普段はFirefoxなのですがなぜか上手く動かないのでIEを使ってます)

ログイン後、ライセンスの設定をします。デフォルトでは60日間の試用期間となっていますが無償版の機能しか使わないのでダウンロード時に表示されていた無償版のライセンスコードを適用します。また、SSHがオフになっているので一旦オンにします。

USB有線LANアダブターを使うためESXi 6.5 USB Ethernet Adapter Driver VIBを入手します。(参考)

teratermのscp機能などを使ってvibファイルをアップロードし、esxcliコマンドでインストールします。

[root@localhost:/tmp] esxcli software vib install -v ./vghetto-ax88179-esxi65.vib -f
Installation Result
   Message: Operation finished successfully.
   Reboot Required: false
   VIBs Installed: virtuallyGhetto_bootbank_vghetto-ax88179-esxi65_6.0.0-1.0.0
   VIBs Removed: 
   VIBs Skipped: 

[root@localhost:/tmp]

続いて、デフォルトのUSBドライバを無効にし、再起動します。

[root@localhost:/tmp] esxcli system module set -m==vmkusb -e=false

起動後にUSB有線LANアダブターを認識しているか確認します。

[root@localhost:~] esxcli network nic list
Name    PCI Device    Driver        Admin Status  Link Status  Speed  Duplex  MAC Address         MTU  Description                                     
------  ------------  ------------  ------------  -----------  -----  ------  -----------------  ----  ------------------------------------------------
vmnic0  0000:00:1f.6  ne1000        Up            Up            1000  Full    94:c6:91:**:**:**  1500  Intel Corporation Ethernet Connection (6) I219-V
vusb0   Pseudo        ax88179_178a  Up            Up             100  Full    18:c2:bf:**:**:**  1500  Unknown Unknown                                 
vusb1   Pseudo        ax88179_178a  Up            Down             0  Half    18:c2:bf:**:**:**  1500  Unknown Unknown                                 

NUCとUSBで合計3つのNICが認識されています。

NICを認識させることができたのでネットワークの設定をします。今回は管理用、外部、DMZ、内部という4つのセグメントを作成しました。

f:id:jianlan:20190407224955j:plain

次に、Sophos XG Firewallをインストールします。これは無償評価版でもIPSやアンチウイルスVPN機能などが使える優れた製品です。Sophosは主にBtoBがメインらしく、法人向けの案件で見かけることがあります。isoイメージは公式サイトからダウンロードできます。ダウンロードしたisoイメージはESXiホストのデータストアに配置します。

続いて、仮想マシンを作成します。無償評価版はCPU4コア、メモリ6Gに制約されるので次のように設定しました。

f:id:jianlan:20190407231236j:plain

ストレージは余裕をもって80GBぐらいあればいいかと思って設定しましたが、半分の40GBでも十分だと思います。CD/DVDドライブにインストールisoを指定したあと、仮想マシンを起動します。

f:id:jianlan:20190410200833j:plain

フォーマットしてよいか尋ねられるのでyを入力します。

f:id:jianlan:20190410200934j:plain

インストール完了後リブートします。このあと、https://172.16.16.16:4444にアクセスしWeb上で初期設定をします。そのため、PCに172.16.0.0/16のセグメントのIPを振り、適切なポートに接続する必要があります。

ただし、設定次第ではポート番号とESXi上のネットワークアダプタ番号が一致しないことがあります。そのときは、ESXiのブラウザコンソールからログインします。

f:id:jianlan:20190410202329j:plain

パスワードはadminです。

f:id:jianlan:20190410202413j:plain

コンソールメニューから「5. Device Management」を選び、「3. Advanced Shell」を選択することでLinuxのシェルを使うことができます。ここで、ip aなどを使うことでポートのMACアドレスを確認することができます。初期設定ではPort1のみIPアドレスが設定されているため、ここが違っているとIPレベルでアクセスできません。

f:id:jianlan:20190410202713j:plain

また、IPアドレス自体を変更したいときは、コンソールメニューから「1. Network Configuration」を選び「1. Interface Configuration」から設定することができます。

f:id:jianlan:20190410202822j:plain

ブラウザから接続すると初期設定画面が表示されます。

f:id:jianlan:20190410205744j:plain

右上のドロップダウンリストから日本語を選択できます。セットアップでは、Adminユーザのパスワード設定やネットワークなど設定していきます。

f:id:jianlan:20190410210004j:plain

途中、FWをルータモードとブリッジモードのどちらにするか聞かれます。ネットワークの構成にもよりますが、今回はFW兼PPPoEを終端するルータとして使う予定なのでルータモードを選択しました。

インストールの完了後に自動的に再起動します。再度、Web画面に接続します。

f:id:jianlan:20190410222708j:plain

ユーザ名adminと設定したパスワードでログインします。

インターネットに接続するためPPPoEの設定を行います。左のメニュから「ネットワーク」を選択し、PPPoEを設定するポートを選びます。

f:id:jianlan:20190410222737j:plain

チェックボックスから「PPPoE [DSL]」を選択しユーザ名とパスワードを入力します。「保存」ボタンで設定を適用すると自動的にIPアドレスが取得され、インターネットにつなげることができます。

LAN側のIPアドレス設定実施し、PCからインターネット側への疎通やHTTP接続ができていればセットアップは完了です。