はじめに
我が家には Azure Arc や Azure Migrate を評価するための仮想化環境があります。色々あって Minisforum EliteMini HX90 と VMware ESXi の構成から、DESKMEET X300 と Proxmox の環境に変えました。8コア 16 スレッド、128GB メモリ、4TB SSD の環境なので、普通に使う分には十分です。
一方で、この環境のゲートウェイには「これだ!」というものが見つけられていませんでした。私がゲートウェイに求める機能は次の通りです。
- IP アドレスとポート番号による L4 レベルの通信制御、および許可/拒否のログ出力
- FQDN とポート番号による L4 レベルの通信制御、および許可/拒否のログ出力
- FQDN による HTTP の通信制御、および許可/拒否のログ出力
- SNI による HTTPS の通信制御、および許可/拒否のログ出力
- クラウドとの接続
- IPsec VPN
- BGP over IPsec VPN
- PPPoE 終端
- NAPT
エンタープライズなゲートウェイ製品ではおなじみの機能なので、以前はヤフオクで買った FortiGate 2桁番台を使っていました。ですが、脆弱性が多く出てきたあたりから最新ファームウェアを入手できない点を考慮して利用を中止しました。
最新ファームウェアを入手できるサポート付きのエンタープライズ機器は、自宅で使うには高価です。そこで、無償で最新ファームウェアを入手できる SOHO 用のルータに目をつけて Ubiquiti の UDM や Synology RT2600ac を試してみました。ですが「FQDN による通信制御が DNS ベース」「許可/拒否のログが記録されない」「BGP が利用できない」など、かゆいところに手が届きません。
改めてリプレースを目論んでいたところで見つけたのが IIJ が開発している SEIL です。専用ハードウェアに搭載された SEIL/X4 は26万円と手が届きませんが、仮想環境で動作する SEIL/x86 Ayame であればスタンダードエディションのプロダクトキーを5500円で入手できます。なんともお財布にやさしい。安価な Mini PC を proxmox で仮想化して、その上で SEIL/x86 Ayame を動かせば、Mini PC 費用+5,500円で理想のゲートウェイを入手できそうです。
実際に試してみたので、Mini PC が壊れて作り直す将来の自分のために手順をメモっておきます。
Mini PC
ゲートウェイとして動作させるためには、インターネット側ポートと LAN 側ポートで利用する2つの NIC が搭載された Mini PC が必要です。さらに仮想化するとなると、ハイパーバイザの管理ポート用の NIC も欲しくなります。今回は Amazon で見つけた4本 NIC の Mini PC である AIOPCWA Micro Firewall Appliance を利用します。
Proxmox
Mini PC に Proxmox を入れなおします。BIOS に入るボタンはF7です。Proxmox のインストールが済んだら、各物理 NIC に紐づくブリッジを作ります。
SEIL/x86 Ayame 用仮想マシン
SEIL/x86 Ayame の KVM 版は qcow2 形式で配布されています。How to Easily Import Qcow2 Imgae in Proxmox? で説明されている方法に従い、qcow2 から SEIL/x86 Ayame の OS ディスクを作成して仮想マシンを起動します。SEIL/x86 Ayame のスタンダードエディションは 2vCPU までをサポートしているので、最大の 2vCPU を割り当てます。
また、仮想マシンの自動起動をオンにします。自動起動がオフだと Mini PC を再起動したときに SEIL/x86 Ayame が起動しないので、ネットワークが死に続けます。
SEIL/x86 Ayame のプロダウトキー
Amazon で買えます。プロダクトキーが記載された紙が届きます。
SEIL/x86 Ayame
仮想マシンを起動して Proxmox のコンソールでアクセスすると、プロダクトキーの入力を求められます。入力して再起動すれば、無事に SEIL/x86 Ayame の完成です。
IIJ SEIL/x86 Ayame Ver. 3.21 (Release)
#
#
#
# show system
SEIL/x86 Ayame Ver. 3.21 (Release)
SEIL/x86 Ayame BIOS SeaBIOS Ver. rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org (20140401)
CPU : QEMU Virtual CPU version 2.5+
Serial : X86AY-xxxxxxx
DistID : xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx
Host : ""
Bootdev : dk1
Date : 2024/12/24 20:39:11 (JST)
Uptime : 00:05 (since 2024/12/24 20:34:17)
Users : 1 user
Loadavg : 0.99 (1min) 0.66 (5min) 0.31 (15min)
CPU0stat : User 19.1%, Nice 0.0%, System 73.6%, Interrupt 0.4%, Idle 6.9%
CPU1stat : User 1.7%, Nice 0.0%, System 5.7%, Interrupt 0.2%, Idle 92.5%
Memory : Total 4095.47MB, Used 693.85MB (16.94%), Avail 3401.62MB (83.06%)
あとは、管理用ポートに IP アドレスを割り当てて sshd を有効化。さらに SEIL/x86 Ayame 自身のアクセスを制御しているフィルタの送信元 IP アドレスを変更すればリモートで操作できるようになります。
interface.ge0.ipv4.address:192.168.112.254/24
sshd.service:enable
filter.ipv4.100.source.address:192.168.3.0/24
終わりに
複数 NIC の Mini PC を利用して SEIL/x86 Ayame なゲートウェイを作りました。その後色々と設定していますが、今のところ満足度高いです。
Note
- 当サイトは個人のブログです。このブログに示されている見解や意見は個人的なものであり、所属組織の見解や意見を表明するものではありません。
- 公開情報を踏まえて正確な情報を掲載するよう努めますが、その内容の完全性や正確性、有用性、安全性、最新性について一切保証しません。
- 添付文章やリンク先などを含む本サイトの内容は作成時点でのものであり、予告なく変更される場合があります。