清水理史の「イニシャルB」

実売2万6000円のIPS/IDS付きエッジルーター、Ubiquiti「UniFi Security Gateway(USG)」

 米Ubiquiti Networksから発売されている「UniFi Security Gateway(以下、USG)」は、IPS/IDSや「DPI(Deep Packet Inspection)」などの機能を備えた小規模環境向けのセキュリティゲートウェイだ。正規代理店での販売価格は2万6000円程度と安価な上、ライセンスも不要で、しかも高度なファイアウォールに加え、サイト間VPNの構築なども可能な製品となっている。DS-LiteのIPoE IPv6回線環境で実際に使ってみた。

コストパフォーマンスは抜群、ソフトのライセンス費用は不要

 今までの感覚なら、中小規模環境向けのモデルであれば、ハードウェアが5~8万円程度、製品によっては、これにプラス年額数万~十数万円(契約内容による)ほどのライセンス費用が掛かるのが、この手のセキュリティ製品の相場だった。

 これに対してUSGは、小規模環境向けのモデルとなる3ポートのモデルで、国内代理店であるソネット株式会社の直販サイト「Sonet Direct」での実売価格は、税込で2万6244円。Amazon.co.jpではもっと安価に販売されている場合もある。

 「UniFi Elite」と呼ばれる高度なサポート(ディストリビューターによる電話サポートや延長保証など)を契約しない限りは、ライセンス費用は不要で、2万円台の初期費用だけで利用できる製品となっている。なお、ラックマウントタイプの上位モデル「Ubiquiti Unifi Security Gateway Pro(USG-PRO-4)」もラインナップされている。

Ubiquiti Networksのセキュリティゲートウェイ「USG」。本体価格が安く、コントローラーソフトのライセンスなども不要で利用できる

 現状、セキュリティ機能の中核を成すIPS/IDSがベータ版での提供となっており、これが正式リリースされた場合、コスト面での変化があるかどうかは不明だ。しかし、Ubiquiti製品はWi-Fi製品や管理用のコントローラーソフトなどを含め、ライセンス費用が掛からないのが特徴となっているので、その伝統は守られるのではないかと、個人的には予想している(IPSのシグネチャに無料版と有料版が提供されることは考えられるが……)。

 というわけで、数名から数十名規模のオフィスであれば、非常に少ない投資でネットワークのセキュリティ対策が可能となるのが、このUbiquitiのUSGということになる。

スペックはEdgeRouter Lite相当

 それでは製品を見ていこう。

 本体は、ホワイトを基調としたUniFiシリーズ共通のデザインだ。全体的にシンプルながら、上部のロゴ周辺がLEDで点灯するようになっており、この点灯状況で起動中、エラー発生といった本体の稼働状態をチェックできるようになっている。

上面
前面
背面

 インターフェースは、背面に電源、前面にEthernetポートという構成になっており、前面左から、設定用のコンソールポート、WAN1ポート、LAN1ポート、WAN2/LAN2ポートという構成になっている。

 とは言え、これらはあくまでも識別するための便宜上のもので、実際にどのポートをどの用途に使うかは、後述するコントローラーソフトウェアやコマンドで、自由に設定可能となっている。

 ちなみに電源だが、筆者がAmazon.co.jpから購入した製品は、電源アダプターが別売りの簡易包装仕様モデルだった。同様の製品を購入する場合は、DC12V1A、内径2.1mm/外径5.5mmのACアダプターが必要となる。

 このタイプのACアダプターは、無線LANルーターで広く使われているものなので、探すのはさほど難しくない。筆者は、自宅に余っていたプラネックス製ルーターのもので代用した。

Amazon.co.jpで購入した簡易包装版。ACアダプターが別売りになっている
代用したプラネックスのACアダプター

 スペックは次の表の通りで、ハードウェアとしては、以前の連載でレビューした「EdgeRouter LITE(ERLite-3)」相当ではないかと考えられる。

USGERLite-3ER-X
CPUコア数222
動作クロック500MHz500MHz880MHz
メモリ512MB512MB256MB
ストレージ2GB2GB256MB
コンソールポート11
Ethernetポート335
スループット(512byte以上)3Gbps3Gbps1Gbps

 EdgeRouterは高機能なルーターとして知られているが、USGには、こうしたEdgeRouterの特徴に加え、セキュリティ関連の機能が追加されている。

 冒頭で触れたDPIに関しては、EdgeRouterでも実装可能だが、これに加え、通過するパケットを検査し、脆弱性を悪用する攻撃などについて、検知や遮断ができるIPS/IDSも搭載されている点が異なる。

 さらに、EdgeRouterシリーズにはないUniFiシリーズの特徴として、「UniFi Controller」によるGUIでの統合管理と、クラウド管理が可能(要CloudKey)という点がある。

 なお、UniFiではUniFi Controllerでの設定が基本だが、EdgeRouterシリーズと同じコマンドを用いたコマンドラインによる設定も可能だ。また、JSON形式のコンフィグファイルによる構成も可能となっている。

結局、設定にはコマンドラインを使わないと厳しい

javaベースのコントローラーソフト「UniFi Controller」をPC上で稼働させる

 設定や構成は、前述したように「UniFi Controller」を利用する。JavaベースのサーバーアプリをPC上で稼働させ、ブラウザー経由でローカルホストに接続することで設定を行うスタイルになる。

 コンシューマー向けWi-Fiルーターなどとは異なり、複数台の管理が基本となるため、GUIとは言え、設定には慣れが必要になる。だが、インターネット接続などの設定は簡単に実行できる。こうしたあたりはEdgeRouterに比べ、やはり使いやすい印象だ。

「UniFi Controller」の画面。UbiquitiのUniFiシリーズ(USG、Wi-Fi、スイッチなど)を統合管理できる
基本的な設定はブラウザーから管理画面にアクセスしてGUIで行える
ただし、込み入った設定にはコマンドラインが必要だ

 しかしながら、GUIで用意されている項目は、USGの機能を全て網羅するものではないため、少し外れた設定を使おうとすると、コマンドラインを使わざるを得なくなる。

 代表的なのが、IPv4 over IPv6(DS-Lite)の設定だ。IPoE IPv6に関してはGUIでの設定が可能となっているため、単にWANポートでIPv6を有効にすれば済むのだが、IPv6上でIPv4を使うには、コマンドラインでの設定が必要になる。

 幸いなことに、コマンドの体系はEdgeRouterと同じだ。EdgeRouterでDS-Liteに接続するための記事などを検索して参考にすれば、設定にはさほど苦労しないだろう。とりあえずは、以下のように設定することでDS-Liteでの接続ができることを確認した。

  1. GUIでIPv6を有効化(WAN→PREFIX 60で取得、LAN→PD)
  2. SSHでUSGに接続
  3. IPv6アドレスを確認(show interfaces)
  4. configureで設定モードに移行
  5. 以下のように確認したIPv6アドレスを使ってIPv6トンネルを作成し、ルートを構成
      set interfaces ipv6-tunnel v6tun0 encapsulation ipip6
      set interfaces ipv6-tunnel v6tun0 local-ip [IPv6アドレス]
      set interfaces ipv6-tunnel v6tun0 remote-ip 2404:8e00::feed:101
      set interfaces ipv6-tunnel v6tun0 mtu 1500
      set interfaces ipv6-tunnel v6tun0 multicast disable
      set interfaces ipv6-tunnel v6tun0 ttl 64
      set protocols static interface-route 0.0.0.0/0 next-hop-interface v6tun0
  6. commitとsaveを実行

 これで、とりあえずインターネット接続は可能だが、ここで注意しなければならないのがUniFi Controllerの存在だ。USGは、UniFi Controller経由での設定が基本となるため、当然ながらいくらコマンドラインで本体側を設定しても、再起動するとUniFi Controllerに保存された設定が読み込まれるので、本体側の設定は無効になってしまう。

 このため、コマンドで設定を行った場合には、それをJSON形式のファイルとして取り出し、そのJSONファイルをUniFi Controllerに保存して、起動時に読み込ませるようにする必要がある。

 具体的には、上記の設定をした後、「mca-ctrl -t dmp-cfg」を実行する。これで、画面上にJSON形式の設定情報が表示されるので、これをファイルとして取り出し、以下に示したIPv6トンネル部分とスタティックルートの部分のみをファイルとして保存するわけだ。

{
        "interfaces": {
                "ipv6-tunnel": {
                        "v6tun0": {
                                "encapsulation": "ipip6",
                                "local-ip": "[IPv6アドレス]",
                                "mtu": "1454",
                                "multicast": "disable",
                                "remote-ip": "2404:8e00::feed:101",
                                "ttl": "64"
                        }
                }
        },
        "protocols": {
                "static": {
                        "interface-route": {
                                "0.0.0.0/0": {
                                        "next-hop-interface": {
                                                "v6tun0": "''"
                                        }
                                }
                        }
                }
        }
}

 最終的に、このファイルをUniFi Controllerを実行しているPCの「C:Users%username%Ubiquiti UniFidatasitesdefault」に保存しておけばいい。これで、再起動時にJSONファイルが読み込まれて設定が本体側に反映され、DS-LiteのIPoE IPv6で正しく接続できるようになる。

 なお、長くなるので省略するが、実際には、上記方法ではIPv6のアドレスを取得するまでに時間が掛かるため、再起動後、十数分しないと接続できないケースが起こる。これを回避するには、IPv6のアドレスを固定で設定し、IPv6の「::/0」のルートもスタティックとしてルーターのIPv6アドレスに指定しておくようにする。

 このあたりも、ネット上にいくつもあるEdgeRouterでDS-Lite接続する方法が参考になるので、参考にしながら設定するといいだろう。

 なお、IPv6をGUIで有効化しておけば、IPv6関連のファイアウォールの設定などは自動的に構成される。すべてをコマンドラインで設定しなくて済むのも、本製品の魅力だ。

DPIやIPSの効果とデメリット

 DPIについては、標準で有効になっているので、普通に使っていれば次第に解析結果が蓄積されていき、その結果を参照できるようになる。

 例えば、iPhoneを接続して、しばらくの間使っていた状態が、次の画面だ。Appleへの接続やIMAP4のメール、LINEの通信など、アプリケーションごとに通信状況が分かるようになっている。

DPIによって、どのような通信がされているかを把握できる

 また、クライアントごとの統計なども表示できるので、例えば大量に通信しているユーザーや心当たりのないP2P通信などを、ここから探し出すことなどができる。

 なお、DPIは解析だけでなく、通信の遮断も可能となっている。例えばP2Pを指定して通信をブロック(グループごとにルールを使い分け可能)することもできるようになっている。

DPIによってカテゴリーを指定して通信をブロックすることも可能

 一方、IPS/IDSは、標準では無効になっているので有効にしていずれかを選択し、稼働させる必要がある。IDSは検知と通知、IPAは検知と通知に加えて通信の遮断ができるので、有効化した後、「Malware」や「Exploit」などのカテゴリーを設定すれば、動作可能となる。

IDS/IPSは標準では無効になっているので有効化する。ただし、スループットが低下するので注意

 試しに、Ubiquiti Networksのウェブページでテスト方法として紹介されている方法を利用し、ネットワーク内のPCから「nslookup @8.8.8.8 blacklistthisdomain.com」とコマンドを実行してみたところ(DNSカテゴリの有効化が必要)、「A Network Trojan was Detected.」とIPAが検知したアラートを確認できた。

 そのまましばらく動作させてみたが、ちょうどテストしていたNASからのBitTorrentの通信が検出された。テストでファイルダウンロード用の追加パッケージをインストールしていたので、この通信を検知していたようだ。

NASのテストをしていたため、ちょうどBitTorrentの通信を検知できた
テスト環境のスループット。IDS/IPSの影響もあるが、IPv6トンネルそのものが遅いようにも思える

 このように、何もしなければ見逃してしまう通信も、USGがあれば検知可能となるわけだ。ネットワークを見える化する方法としてだけ考えても、この価格なら安いだろう。

 ただし、DPIとIPSは便利だが、IPSの設定画面にも記載されている通り、IPSを有効にすると、インターネット接続の速度は85Mbps前後にまで低下するとされている。実際に試してみたが、DS-Liteの環境で下りで60Mbps前後となった。ただし、IPSをオフにしても、この値は変わらなかったため、どちらかというとIPv6トンネルの速度が遅いのではないかと疑っている。

 とは言え、数人のユーザーで使う分には、実用上はあまり意識せずに済むため、許容範囲という印象だ。

EdgeRouterの面白さ+α

 以上、Ubiquiti NetworksのUSGを試してみたが、やはりこの価格は魅力的だ。環境によっては設定にコマンドラインを使う必要があるなど、それなりに苦労する可能性がある。このため、実際にオフィスへ導入するには、ある程度決断をする必要があるとは言えるが、個人でアレコレといじって楽しむには、なかなか奥が深い製品と言える。EdgeRouterとしての面白さだけでなく、UniFi Controllerを使う面白さも堪能できる。この手の製品をいじることが苦痛でなく、むしろ楽しいと感じる方には、お勧めできる製品だ。

 なお、UniFiコントローラーについては、今回はPC上で動作させたが、すでにCloudKeyを購入済みなので、追ってクラウドでの管理についてもレビューしていく予定だ。

清水 理史

製品レビューなど幅広く執筆しているが、実際に大手企業でネットワーク管理者をしていたこともあり、Windowsのネットワーク全般が得意ジャンル。最新刊「できる Windows 10 活用編」ほか多数の著書がある。