ルータ兼ファイアウォール OPNsense

以前使っていたFreeBSDベースなルーター兼ファイアウォールのpfSense は結構気に入ってたんだけど、新しいバージョン(Ver2.2)でIPSec VPNが正常に使えなくなってしまい、普通のFreeBSDをPPPoEルーターにすると共にsoftetherでVPNサーバにして現在に至っている。

pfSenseは現在も開発が続いているんだけどその速度が遅く不具合対応もいつまでたってもという感じなのがちょっと。と思っていたらそのpfSense(とm0n0wall)からフォークしてOPNsenseというものが登場した。出たばっかだと未完成だろうからと使わないまますっかり忘れていたんだけど、久しぶりに見たら開発が活発でずいぶんバージョンも進んでいたのでちょっと試してみた。

インストール

まずはOPNsenseのウェブサイトからOPNsenseのイメージファイルをダウンロードする。タイプがCDROM, VGA, Serial, Nanoと4種類あるがCDROMを選ぶのが無難。それ以外はUSBメモリ用のイメージでSerial, Nanoはモニタを繋いでいないPCにシリアル通信で別PCから操作してインストールするためのメディア。i386が32bit, AMD64が64bitのCPU用。

書き込み先はハードディスクでも良いが、もったいないので4GB以上の容量のUSBメモリ,MicroSD / SDカード,を使う方が安上がり。今どき4GBなら普通に買って500円以下だし。

CDROMに焼いてCDドライブでブートしてインストールするが今どきのLinuxのように簡単にはいかない。ほぼほぼpfSenseのインストールと同じ部分でひっかかる筈。というかpfSenseのインストールそのもの。

インストール自体が完了するとCLIでログインIDとパスワードを求められる。

ID: root
Password: opnsense

CLIのメニュー画面が表示されるので[1]を押して、2つ(以上)存在するNICのそれぞれのどれにWAN側とLAN側を割り当てるか指定する。
[2]を押してLAN側のIPアドレスとサブネットマスクとデフォルトゲートウェイ(任意)を指定する。DHCPサーバがLAN内にあってそれを使うのか、IPv6を使うのかも指定。
CLIメニューの上にWANとLANの指定状態が表示されるのでLAN側が正しく指定されたらLAN内の他のPCのブラウザでOPNsenseに割り当てたIPアドレスをURL欄に指定して表示する。
これ以降はブラウザでOPNsenseの管理画面を操作。

管理画面で設定

OPNsense 1
今回は試用のため192.168.0.160というIPアドレスでOPNsenseをセットアップしている。
OPNSenseのログイン画面が表示される。
Usernameに root とPasswordに opnsense を入力し[Login]を押す。

OPNsense 2
インストール後の初回はシステムのセットアップウィザードが表示されるので順に進める。
[Next]を押す。

OPNsense 3
ホスト名、ドメイン、DNSサーバ2つを指定する。
[Next]を押す。

OPNsense 4
タイムサーバを指定する。よく利用するところを指定するか知らなければ触らずそのまま。
Timezoneは日本ならAsia/Tokyoを指定する。
[Next]を押す。

OPNsense 5
セットアップウィザードで一番キモになる部分。
SelectedTypeでこのルーターのタイプを決める。例えばフレッツ回線のルーターにするならPPPoEを選ぶ。用途によって適切なものを。
選んだタイプによって入力できる欄が変わる(入力できない欄は灰色になる)ので必要な項目を埋める。
フレッツ回線でPPPoEならMTUは1454、MSSは1414など。ISPから貰ったPPPoE接続用のIDとパスワードも入力する。
Static IPタイプならそんなのは無くて自身のIPアドレスと対向のIPアドレスを入れる程度。
[Next]を押す。

OPNsense 6
LAN用IPアドレスとサブネットマスクの指定画面。既にCLIメニューで指定したので触る必要はない筈。
[Next]を押す。

OPNsense 7
管理者用パスワードを入力する。初期値はopnsenseだが当然そのまま使い続けるのはダメなので誰にも予想されないような複雑なものでこの世に1つだけのものにする。他所の何かのパスワードを使い回すのはダメ。
[Next]を押す。

OPNsense 8
セットアップウィザードは終わり。
[Reload]を押すとセットアップウィザードで指定した内容が適用される。

OPNsense 9
設定が適用されたら表示される画面。
画像の赤枠のhereをクリックする。

OPNsense 10
初回はダッシュボードが表示される。
ルーターの状態の概要が表示される。
上の画像は横幅800ドットの狭いブラウザで未カスタマイズのダッシュボードを表示したものなので寂しくツマラナイ画面になっているが横幅広い画面でウィジェットを追加すると華やかになる。

ここからは左サイドのメニューから項目を選択して設定や確認を行うことになる。

OPNsense 11
左サイドの[System]から[Settings]→[General]を選択する。
Languageの項目があるのでjapaneseを選択し[Save]を押す。

OPNsense 12
全てではないが日本語表示になる。

OPNsense 13
[サービス]→[DHCP]→[サーバ]を選択する。LANにDHCPサーバが無くてDHCPサーバにしたいならこの画面で設定。(上の画面は何も指定していない)

OPNsense 14
[ファイアウォール]→[ルール]を選択。
ファイアウォールのWANの初期値はこんなの。RFC1918,bogonを拒否というシンプルなもの。

OPNsense 15
ファイアウォールのLAN側の初期値はIPv4,IPv6共に全て許可。

OPNsense 16
[システム]→[ルート]→[ステータス]でルーティングテーブルを表示。IPv6の情報があるので行数が多いがLANの情報以外特に無い。(WAN未接続で画像取ってるので)

OPNsense 17
[システム]→[健全性]でパケット/システム/トラフィックの状態を見ることができる。

OPNsense 18
OPNsenseのシステムの停止と再起動は何故か[システム]→[診断]の中にある。
うちの環境だとシステム停止を実行しても何故かPCが再起動になって再度OPNsenseが立ち上がってしまう。
どうやってもシャットダウンにならない謎。

ほとんどpfSense。pfSenseを焼き直して管理画面をモダンにした感じ。ルーターとファイアウォールとVPNについては普通に使えそう。
pfSenseのようにプラグインが使えるようになったら最強っぽい。(目が節穴なので既に使えるならスミマセン)