相変わらず安定している事もあってポリシー系ぐらいしか触る事も普段はないのですが。
ただ、時間がまとまってある時に試したい事がいくつか残っていたのも事実で、久々にまともに連休、そして台風襲来中って事でまずはHA(冗長化)を試してみる事に。
まあ、自宅利用で大した環境でもないので冗長構成なんてそこまで必要はないんですが。
ただ、自宅VM環境のディスクがRAID構成でないので吹っ飛ぶとインターネット接続を戻すのに手間がかかるし、ディスクを分けて2台設置しておけば少しは安心かなと。
構成はアクティブ - パッシブで設定しています。
アクティブ - アクティブ構成も組めますが、DHCP、PPPoEインタフェースがある場合はアクティブ - パッシブのみになります。
また、WWAN、WLANを使っているとHA自体組めません。
あくまで、仮想アプライアンス、すでに1台稼働している環境から作成する前提で書いています。
1から作る場合は適当に読み替えて下さい。
プライマリ機のHAリンク作成
HAを組むのにピア用の専用インタフェースを作成する必要があります。物理機なら直結しておくリンクですね。
HA用に使用するリンクが1本というのは珍しいけど。
ESXi側でvNICを足しておきます。(反映にはXG Firewallの再起動が必要。)
vNICのラベルはどれでも構わないですが、専用のラベル作っておいた方が分かりやすいかも。
1対1で通信するだけなので、適当なIPアドレス振る予定だったし、うちではvSwitchも分けて切り離しておきました。
そしてここで注意点ですが、vNIC1~4はXG Firewall側のポートA~Dに順番に割り当てられますが、vNIC5を足すとなぜかポートBに割り当たり、順番がずれます。
後から追加でも、新規マシンに最初からvNIC5個つけても同じ状況だったのでそうゆう仕様のようです。
(vNIC6以降は未検証)
そしてXG Firewall側でポートの設定をしておきます。
まず、割り当てるゾーンは"種類"がDMZである必要があります。
最初から作られているDMZのゾーンを使ってもいいですが、デバイスのアクセスで「SSH」が有効になっている必要がある事もあってこちらも別に作っておいた方が分かりやすいかも。

IPアドレスは何でもいいですが、2台が直接相互アクセスするだけなのでマスクを/30(255.255.255.252)で専用に振った方が分かりやすいかと。
ただし、リンクローカルアドレス(DHCP取れなかった時に振られる169.254.x.x)は設定できませんので注意です。
※サブネット間違ってました。画像は間違ったままだけど気にしない方向で。

セカンダリ機の作成
次はHAに組み込むセカンダリ機の作成。記事を作成した時はメジャーバージョンがv15時代ですが、今も変わりませんので同じようにデプロイします。
おうちでUTM F/W - Sophos XG Firewall仮想マシン作成編
そして、同じようにコンソールからLAN側からアクセスできるようにIPアドレス設定を。
これで準備は完了です。
おうちでUTM F/W - Sophos XG Firewall初期ネットワーク設定編
セカンダリ機の初期セットアップ
1.ブラウザより「https://LAN側に設定したIPアドレス:4444」にアクセスします。v15の時こんな画面あったっけなぁって感じですがWelcom画面が表示されます。
画面は日本語化した後ですが、最初は英語。右上から言語変更できます。
画面上をクリックすれば進みます。

2.新しい管理者アカウントの作成画面になりますが、よく見るとある「HA スペアとして接続する」を選びます。
また、作り直した時はとっておいたコンフィグを使ってその横にある「バックアップを復元する」から復元できます。

3.HAペアを組む為のセカンダリ側としての設定を行います。
各項目を設定し、「適用」を選択します。
なお、注意点としてこの設定をすると以降、なぜかライセンス(シリアル)投入をしてもエラーになります。
アクティブ - パッシブ構成の場合はプライマリ機側のライセンスのみでOK(太っ腹!)で自動で作成されるので不要ですが、アクティブ - アクティブ構成の場合はそれぞれでライセンスが必要になるのでその場合はここで設定せず(通常デバイスとして初期セットアップする)か、初期セットアップ後に一度HAデバイス設定を消してライセンスを通す必要があります。

パラメータ名 | 説明 |
ピアのシリアル番号 | プライマリ機に投入されているシリアル番号を指定します。 |
パスフレーズ | HA用パスワード。プライマリ機側にも同じものを後程入れるので忘れないように。 |
専用 HAリンク | HA接続用のポート指定。プライマリ側と同じポート構成にする必要があるので注意。 |
IPアドレス | プライマリ機側で設定した同じアドレス形態で設定。 |
サブネットマスク | こちらもプライマリ機側にあわせる。 |
4.画面が基本設定に戻り、「HAスペアとして接続しました」と表示され設定値が表示されます。
管理者パスワードを設定し、「設定中に、~」はどちらでもOK(デフォルトでチェック)、「使用許諾契約に同意する」にチェックを入れ「次へ」を選択します。

5.インターネット接続では、「オフラインで続行」にチェックで「次へ」でOKです。(ライセンス通さないので)

6.設定内容が表示されるので「次へ」を選択します。

7.設定が適用されるので完了するのを待ちます。

8.適用完了後、管理コンソールにログインします。
ファイアウォールの登録でライセンスについて聞かれますが、「今は登録しない」にチェックで「次へ」でOKです。

9.設定 > システムサービス > 冗長化 (HA)で現在の設定の確認・変更が可能です。
(HA組んでしまうと一旦壊さないと変更不可。)

これでセカンダリ機側の設定は終わりです。
プライマリ機のHA設定
それでは最後にプライマリ機側にHAの設定を投入し、構成を完了させます。1.プライマリ機側の管理コンソールにログインし、設定 > システムサービス > 冗長化 (HA)とアクセス。
2.各項目を設定し、「HAの有効化」を選択します。

パラメータ名 | 説明 |
HA設定モード | HAの動作モードを指定します。 |
初期の HAデバイスの状態 | プライマリとして動作するか、補助(セカンダリ)として動作するかを指定。もちろんプライマリを指定 |
パスフレーズ | HA用パスワード。セカンダリ機側でも入れたものを。 |
専用 HA リンク | HA接続用のポート指定。 |
ピア HA リンク IPv4 | セカンダリ機側のHAリンク用IPアドレスを入力。 |
ピア管理ポート | セカンダリ機側の管理インタフェースアクセスに使用するポートを指定。通常はプライマリと同じでいいと思います。 |
ピア管理 IP | セカンダリ機側の管理インタフェースアクセスに使用するIPアドレスを入力。 |
監視対象ポートの選択 | フェイルオーバー条件としてリンクモニターするポートの指定。 |
注意点として、ヘルプを見ると監視対象ポートの選択は仮想アプライアンスでは機能しないようです。
まあ、vNIC接続だけが落ちるなんて事ないし、確かに意味はないですね。
3.HAの有効化確認が表示されるので「OK」を選択します。
再起動され、HA構成が有効になります。

4.有効化後、ステータスを確認するとこんな感じになっています。

HAフェイルオーバーの確認
プライマリ機側のシャットダウンと、手動でのフェイルオーバーを試してみました。通信自体は全く切れずでした。実際にはWAN側へのアクセスはDHCP環境からか、若干の遅延はありましたが、LAN側インタフェースへのPingは全くロストせず。
これは十分実用的ですね。
ただし、管理サービスはどちらも再起動されているのか、管理コンソールへはしばらくアクセスできなくなります。
また、その管理コンソールへのアクセスですが、ここまでの設定でわかる通り、他のファイアウォールでは必ずある個別の管理ポートというものが存在しません。
プライマリ機側は基本的にLAN側のアドレス、セカンダリ機側は「ピア管理 IP」で設定したアドレスが管理用になりますが、フェイルオーバーさせて入れ替わるとこのIPアドレスも逆転して設定されます。
LAN側のインタフェースアドレスはまあフェイルオーバーされて当たり前なので分かりますが、セカンダリ用まで逆に移行されるとは珍しいです。
なので、個体を判別する手段がシリアル番号しかないので、どっちがプライマリで動作しているのか分かり辛くて仕方ないのはちょっと困りものです。
後は「Preempt」の設定やプライオリティの設定もないので、自動フェイルバックはできません。
また、各種ログもデバイス毎で同期されていません。
しかもプライマリ⇒セカンダリになった時点でログが全部消えます。
個人ならまだしも企業利用ではSyslogは必須ですね。
というわけでHAの設定はこれで完了です。
個人で利用する分には十分すぎるレベルになっていますが、癖はありますね。
デバイス固有の設定がないので管理は楽ですけどね。
【関連記事】
おうちでUTM F/W - Sophos XG Firewall Home Edition 関連記事一覧。