ESXi上にMikroTik CHR(Cloud Hosted Router)をセットアップする
MikroTikのルーターは日本ではあまり利用実績はありませんが、価格の割に機能が豊富であったり性能が良く、私もそのファンの一人です。残念なことに日本での実機の入手性がかなり悪く、日本語の解説等もかなり限られるので、導入にはややハードルが高いですが、ルーターファンなら是非MikroTikルーターを一度は触って下さい。必ずやその洗練されたGUIや、機能に惚れ込むことでしょう。
興味がある方は、実機と同様の機能を持つソフトウェアアプライアンス(CHR : Cloud Hosted Router)も用意されているので、まずはこちらを利用してみることをオススメします。60日間のお試しなら無料で使うことができ、また仮想マシン用のイメージが用意されているので簡単にセットアップ出来ます。以下、CHR(Cloud Hosted Router)を、ESXiにセットアップする方法を解説します。ここではESXi6.7を使ってセットアップを行います。
CHRをダウンロードする
CHRはMikroTikのダウンロードページからダウンロードすることが出来ます。ページ中央にあるCloud Hosted Routerとある場所がダウンロードリンクの場所です。今回はESXiにセットアップするので、VMDK imageをダウンロードします(Long-term、Stable、Testingの3つがありますがお試しなら最新機能・安定版のStableが良いでしょう)。
仮想マシン用のイメージ準備
ESXiのWeb Clientにログインし、データストアブラウザを開きます。
仮想マシン用のディレクトリを作成するため、「ディレクトリの作成」をクリックします。
「ディレクトリ名」に仮想マシン名を入力します。ここでは「CHR」を仮想マシン名とし、この名前でディレクトリを作成します。
ディレクトリの一覧から今作成したディレクトリを選択(クリック)し、「アップロード」をクリックし、先ほどMikroTikのサイトからダウンロードした「chr-6.44.3.vmdk」をアップロードします。
正しくアップロードされれば、上記画面になります。正しくアップロードできれば、「閉じる」で閉じて下さい。
次にESXiマシンにSSHでログインします。デフォルトではESXiにはSSH出来ませんので、「SSHの有効化」をしてなければ有効化をして下さい。SSHでログインした後、以下のコマンドにて仮想マシン用のイメージファイルを作成します。
# cd /vmfs/volumes/datastore1/CHR # 先ほど作成したディレクトリに移動 # vmkfstools -i chr-6.44.3.vmdk chr.vmdk -d thin # 仮想マシンのコピー # rm chr-6.44.3.vmdk # 不要ファイルの削除
以下のように、「chr.vmdk」「chr-flat.vmdk」が作成されていればOKです。
# ls -al # ファイルの確認 total 39040 drwxr-xr-x 1 root root 73728 May 22 12:20 . drwxr-xr-t 1 root root 73728 May 22 11:55 .. -rw------- 1 root root 67108864 May 22 12:18 chr-flat.vmdk -rw------- 1 root root 488 May 22 12:18 chr.vmdk
仮想マシンの作成
ESXiのWeb Clientにログインし、仮想マシンの作成/登録を行います。
「新規仮想マシンの作成」を選択し、「次へ」をクリックします。
「名前」には仮想マシンの名前を入れます。ここではCHRにしていますが、好きな名前で結構です。「互換性」は初期値の「ESXi 6.7 仮想マシン」のままとし、「ゲスト OS ファミリ」には「Linux」、「ゲスト OS のバージョン」には「Ubuntu Linux (64 ビット)」を選択します。「次へ」をクリックします。
「次へ」をクリックします。
デフォルトで作成されるハードディスクは使いませんので、×をクリックして削除します。
「ハードディスクの追加」をクリックし、「既存のハードディスク」を選択します。
先ほど作成した「chr.vmdk」を選択します。
標準の「SCSIコントローラー」だと正常に動作しないので、「IDE コントローラー 0」に変更します。
メモリは512MBもあれば十分でしょう。ネットワークアダプタはご自身の環境に合わせて適宜設定をします。なお、ルーターとして動作するためにはネットワークアダプタは最低限2つは必要となるので、ESXiが稼働するマシンにLANポートが1つしかないといった場合には、LANカードを増設するか、USBのLANアダプタを装着します。
ここでは、WAN用とLAN用の2つのアダプタを選択することとします(WANやLANという名前は各々の環境で異なります)。ここで、注意しなければいけないのは、もともと存在していたネットワークアダプタ1にはWANのポートグループを、新規に追加したネットワークアダプタにはLANのポートグループを指定するようにして下さい。
上記のように設定すると、ESXiがアサインするMACアドレスがWANのものがLANのものより小さい値となります。CHRではMACアドレスが小さい順にether1、ether2と命名し、またether1をMikroTik流儀ではWANとして使うことになっていますので、後で設定がスムーズに行くようになります。まあ、後でも入れ替えることはできるのでそこまで神経質にならなくてもいいですが。
「次へ」をクリックします。
「完了」をクリックします。これでCHRが稼働する仮想マシンの作成は完了です。次にCHRを稼働させて初期セットアップを行っていきます。
CHRの初期設定
WinBoxによる接続
先ほど作成した仮想マシンを実行します。起動してしばらくするとログイン画面が表示されます。
このままログインしてCLI(コマンドライン)で各種設定を行っていくことも可能ですが、MikroTikではWindowsからGUIで操作できる素晴らしいアプリケーションWinBoxを用意してくれているので、こちらを使うのがオススメです。WinBoxはMikroTikのダウンロードページの一番上にリンクがありますので、そちらからダウンロードして下さい。
仮想マシンで指定したアダプタと同一LANのPCからWinBoxを起動します。
「Neighbors」のタブをクリックすると、同一LAN上に存在するMikroTikのルーターやCHRが一覧表示されますので、接続するCHRのMAC Address又はIP Addressを「Connect To」に入力します。入力する代わりに、下のリストのMAC Address欄や、IP Address欄をクリックしても、「Connect To」に入力されるようになっています。初回ログインは、admin、パスワードなしで入れますので、そのまま「Connect」をクリックします。
InterfaceとMACアドレスの確認
ESXiで仮想マシンの設定を再度開いて、WANやLANとして割り当てたネットワークアダプタのMACアドレスを確認します。ここでは
- WAN 00:0c:29:83:fa:73
- LAN 00:0c:29:83:fa:7d
となっています。一方、立ち上がったWinBoxから以下のようにether1とether2のMACアドレスを確認します。
WinBoxの左のメニューから「Interfaces」をクリックすると、「Interface List」が表示されます。「ether1」「ether2」をそれぞれダブルクリックし、MACアドレスがWAN用のものがether1、LAN用のものがether2になっていることを確認します。これまでの説明に従って設定していればここで齟齬はないかと思いますが、万が一逆になっていれば、ether1とether2の名前をこの画面で逆に付け替えて下さい。次に行うQuick Setによる簡易セットアップではether1をWANとして扱いますので。
IPアドレス・DHCP・NAT・Adminパスワードの設定
WinBoxが起動できたら、左のメニューから、「Quick Set」をクリックします。簡易セットアップウィザードが起動するので、必要なパラメータを入力します。
赤線で囲まれたあたりを適宜入力してください。Internetと見出しがある部分の設定はether1の設定となり、Local Networkと見出しがある部分の設定はether2に関しての設定となります。WANのIPアドレス取得がDHCPであればAutomatic、PPPoE接続であればPPPoEを選択します。入力後「OK」を押します。これで最低限の設定がされ、CHRからインターネット接続ができるようになっているはずです。
「Tools」→「Ping」からPing画面を開いて、GoogleのDNSサーバーである8.8.8.8に、pingが通るか試してみます。これでインターネットに接続できていることが確認できました。次にファイアーウォールの設定を行っていきます。
ファイアウォールの設定
「IP」→「Firewall」を開きます。
初期状態では何も設定されていないので、WAN側からの通信を含めてすべての通信が許可されるという極めて危険な状態です。順次フィルターの設定を行っていきますが、Filterは上から順に評価されることに注意し、以下のフィルターの設定を行って下さい。Filter Rulesの下にある「+」ボタンをクリックするとルールを追加できます。
Generalタブ | Actionタブ | 説明 | |||
Chain | Protocol | In. Interface | Connection State | Action | |
input | established,related | accept | (1) | ||
input | invalid | drop | (2) | ||
input | icmp | accept | (3) | ||
input | ether1 | drop | (4) | ||
forward | established,related | accept | (5) | ||
forward | invalid | drop | (6) | ||
forward | ether1 | drop | (7) |
用語の意味等はLinuxで使われるiptablesと一緒です。inputチェインは、ルーターそのものに向かう通信(ルーターへのping・WinBoxのアクセス・Web管理画面へのアクセス等)に対してのルール、forwardチェインは、ルーターを通る通信(WANからLANや、LANからWAN)に対してのルールを記載します。
既に接続が確立済み(established)、またはそれに関連するもの(related)は、input、forward共に許可します(1)(5)。一方、不正な通信(invalid)は破棄します(2)(6)。
ルーターへのicmp通信(ping)は許可します(3)。
その他WANからの通信は全て破棄します(4)(7)。
全て設定できれば以下の画面になります。
これで必要最低限のファイアウォールの設定完了です。
試用ライセンスの登録
試用ライセンスの登録をしなくても、基本全機能を使うことが出来ますが、各インタフェースからの出力速度が1Mbpsに制約されてしまいますので、MikroTikのサイトでアカウントの登録(無料)を行って下さい。アカウントが登録できましたら、「System」→「License」を開きます。
注 以下の作業中にMikroTikのサイトへの接続が行われますのでこの作業にインターネット接続は必須です
「Renew License」をクリックします。
登録したメールアドレスとパスワードを入力し、「Start」をクリックします。
正常に試用ライセンスが登録されれば、上記のような表示になり、1Mbpsの制約がはずれ、60日間試用することができるようになります。
すごく知りたい情報が検証されて感激しています。
CisocはIPsecの指標を一般には公開していないので、すごく参考になりました。
クラウドホステッドルータですか・・・すごいですね。。。。
購入したいと、ネットを軽く漁りましたが・・・直販はしていないんですね
ほしい!!と物欲が爆発しています。
どこで購入できるんですか? よろしければご教授いただきたく!
見ていただいてありがとうございます。
PCやパーツの消費電力や、ルーターの性能を測定するのが好きで色々データを持っていますが、
ひょっとして誰かの役に立つのではと思いサイトを最近立ち上げた次第です。
MikroTikのCould Hosted Routerは、
https://mikrotik.com/products
にあるような実機のルーターではなく、同等の機能のソフトウェアとなります。
ここでの説明ではESXi上で稼働させている例になりますが、
私は試してませんが無料のVMWare等でも動作させることが出来るので興味があれば試してみて下さい。
Cloud Hosted Router自体は
https://mikrotik.com/download
から無料でダウンロードすることができ、無料アカウントの登録が必要ですが、60日間なら無料でお試しすることが出来ます。
ライセンス自体は同サイトから購入することが出来、最大1GbpsのスループットのライセンスでUSD 45となっているようです。
(すみません私は買ってません)
ちなみにMikroTikの実機ルーターは米Amazonとかでも売ってますが、
https://www.eurodk.com/en/products/routers
のEuroDKさんが一番安いかと思います。私もここから買ってます。
Could Hosted RouterのライセンスもEuroDKさんから買うほうが安いみたいです。