FortiGateのFortiOSを安全にアップグレードする手順|Upgrade Path・バックアップ・事前確認を解説

ネットワーク

FortiGateを運用していると、脆弱性対応や不具合修正などのためにFortiOSをアップグレードする機会があります。

FortiGateのGUIにはファームウェアをアップグレードする機能があるため、操作自体はそれほど難しくありません。

しかし、

「新しいバージョンがあるから、そのままアップグレードすればいい」

と考えるのは危険です。

途中のバージョンを経由する必要がある場合があります。
FortiOSのアップグレードでは、このUpgrade Pathの確認が特に重要です。

また、本番環境ではアップグレード前に設定バックアップ、リリースノート、既知の問題、HA状態などを確認しておくことも重要です。

今回は、FortiGateのFortiOSをアップグレードするときに私が特に重要だと考えている確認ポイントを、実際の作業の流れに沿ってまとめます。


FortiOSは最新版へ直接アップグレードすればよいとは限らない

最初に確認したいのがUpgrade Pathです。

例えば現在、

FortiOS 7.x.x

を使用していて、目的のバージョンが、

FortiOS 7.y.y

だったとします。

このとき、

現在のバージョン
 ↓
目的のバージョン

と直接アップグレードできるとは限りません。

環境によっては、

現在のバージョン
 ↓
中間バージョン
 ↓
中間バージョン
 ↓
目的のバージョン

というように、複数回のアップグレードが必要になります。

そのため、最初にFortinetが案内しているUpgrade Pathを確認します。


Upgrade Pathを確認する

Upgrade Pathを確認するときには、

  • FortiGateのモデル
  • 現在のFortiOSバージョン
  • アップグレード先のFortiOSバージョン

が必要になります。

Upgrade Pathの仕組みや、中間バージョンを飛ばしてはいけない理由については、
「FortiGateのUpgrade Pathとは?途中のFortiOSを飛ばしてはいけない理由」
で詳しく解説しています。

現在のバージョンはGUIから確認できます。

CLIであれば、

get system status

でも確認できます。

表示されたモデル名とFortiOSバージョンを確認しておきます。

そしてFortinetのUpgrade Path情報から、目的のバージョンまでの経路を確認します。

重要なのは、

自己判断で途中のバージョンを飛ばさないこと

です。

特に古いFortiOSから新しいFortiOSへ移行する場合は、複数回のアップグレードになることがあります。


アップグレード先のバージョンを決める

「最新だから」という理由だけでアップグレード先を決めるのではなく、使用している環境に適したバージョンか確認します。

FortiOSではファームウェアに、

Feature

と、

Mature

という表示があります。

Featureは新機能を含むリリースです。

Matureは新しい主要機能を追加することよりも、不具合修正や脆弱性修正などを中心としたリリースです。

ただし、

Matureだから絶対に不具合がないという意味ではありません。

本番環境では、Feature/Matureだけで判断せず、対象バージョンのリリースノートも確認します。


リリースノートを必ず確認する

アップグレード先を決めたら、対象FortiOSのRelease Notesを確認します。

特に確認したいのは、

  • Known Issues
  • Resolved Issues
  • Upgrade Information
  • Special Notices
  • Changes in default behavior
  • 使用している機能に関する変更

などです。

例えば、自分の環境で、

  • IPsec VPN
  • SSL VPN
  • SD-WAN
  • Web Filter
  • Application Control
  • IPS
  • HA
  • VLAN
  • DHCP
  • BGP
  • OSPF

などを利用しているのであれば、それらに関連した既知の問題がないか確認します。

FortiGate本体のアップグレード自体が成功しても、使用している機能に不具合が発生すれば本番環境では問題になります。


アップグレード前に設定をバックアップする

これは必ず実施しておきたい作業です。

FortiGateの設定ファイルをアップグレード前にバックアップします。

GUIから設定バックアップを取得できます。

バックアップしたファイルは、FortiGateとは別のPCや安全な保存場所へ保管します。

ファイル名も、

fortigate_before_upgrade_YYYYMMDD.conf

など、いつ取得した設定なのか分かる名前にしておくと便利です。

可能であれば、

アップグレード前のFortiOSバージョンも記録しておく

ことをおすすめします。

設定ファイルだけ持っていても、「どのFortiOSで取得した設定なのか」が分からなくなると、障害時に困ることがあります。


現在の状態を記録する

バックアップだけではなく、アップグレード前の正常な状態も記録しておきます。

最低限、

get system status

を取得しておくとよいでしょう。

HA構成の場合は、

get system ha status

なども確認します。

さらに環境によって、

  • インターフェース状態
  • ルーティング
  • VPN状態
  • HA状態
  • CPU使用率
  • メモリ使用率
  • セッション数

などを記録しておくと、アップグレード後の比較に利用できます。

GUI画面をスクリーンショットで残しておく方法でも構いません。

重要なのは、

「アップグレード前はどういう状態だったのか」

を後から確認できるようにしておくことです。


HA構成なら同期状態を確認する

FortiGateをHA構成で使用している場合は、アップグレード前にHAが正常であることを確認します。

例えば、

get system ha status

などで状態を確認します。

アップグレード前からHAに問題がある状態で作業を開始すると、アップグレード時の問題なのか、もともとのHA障害なのか判断しにくくなります。

そのため、

HAが正常に同期していることを確認してからアップグレードする

ことが重要です。


コンソール接続できる準備をしておく

FortiGateのアップグレードでは再起動が発生します。

通常は再起動後にGUIやSSHへ再接続できます。

しかし万一、

  • FortiGateが起動しない
  • 管理GUIへ接続できない
  • SSHへ接続できない
  • 設定に問題が発生した

といった状態になると、リモートから復旧できない可能性があります。

重要な本番機器であれば、

コンソール接続できる手段を準備してから作業する

方が安全です。

遠隔地のFortiGateをアップグレードする場合は、特に慎重に計画します。


メンテナンス時間を確保する

FortiOSアップグレードではFortiGateが再起動します。

そのため、通信影響が発生することを前提としてメンテナンス時間を確保します。

Upgrade Pathによって複数バージョンを経由する場合は、

アップグレード
↓
再起動
↓
状態確認
↓
次のアップグレード
↓
再起動
↓
状態確認

という作業を繰り返すことになります。

「1回再起動するだけ」と考えて短い作業時間を設定すると、想定より時間がかかる可能性があります。

余裕を持った作業時間を確保しておきます。


FortiOSをアップグレードする

事前確認が完了したら、FortiOSをアップグレードします。

大まかな流れは、

1. Upgrade Path確認

2. Release Notes確認

3. 設定バックアップ

4. 現在状態の記録

5. HA状態確認(HAの場合)

6. メンテナンス開始

7. FortiOSアップグレード

8. 再起動

9. FortiGateへの再接続

10. 動作確認

です。

Upgrade Pathに複数のFortiOSが指定されている場合は、指定された経路に沿って進めます。


再起動したら「GUIが開いた」で終わらせない

アップグレード後、

「FortiGateのGUIが表示されたから成功」

で作業を終了するのはおすすめしません。

まず、

get system status

で目的のFortiOSへアップグレードされていることを確認します。

そのうえで実際の通信を確認します。

例えば、

  • インターネット通信
  • 拠点間通信
  • DNS
  • VPN
  • NAT
  • Webアクセス
  • メール通信
  • 公開サーバーへの通信

など、自分の環境で重要な通信を確認します。


ルーティングも確認する

アップグレード後はルーティングテーブルも確認しておくと安心です。

例えば、

get router info routing-table all

などを使用して、必要な経路が存在していることを確認します。

特に、

  • Static Route
  • OSPF
  • BGP
  • SD-WAN

などを利用している環境では確認しておきたい項目です。


HA構成ならアップグレード後も状態を確認

HAの場合は、アップグレード後に再度HA状態を確認します。

get system ha status

などで、

  • Primary/Secondaryの状態
  • メンバーが認識されているか
  • バージョン
  • 同期状態

などを確認します。

「通信できているから問題ない」と判断せず、HAそのものが正常な状態へ戻っているか確認します。


ログも確認する

アップグレード直後はログも確認します。

例えば、

  • System Event
  • HA関連
  • VPN関連
  • Interface関連
  • Routing関連

などです。

アップグレード直後から繰り返し発生しているエラーや警告がないか確認します。


FortiGuardの状態も確認する

FortiOSアップグレード後は、FortiGuard関連の状態も確認しておきます。

例えば、

  • Antivirus
  • IPS
  • Application Control
  • Web Filter

などを使用している場合、定義ファイルが正常な状態になっているか確認します。

FortiOS本体だけ正常でも、セキュリティ機能側が正常でなければ問題があります。


アップグレード後に設定差分を見る

可能であれば、アップグレード前後の設定も比較します。

FortiOSのバージョン変更によって、設定が変換されたり、新しい設定項目が追加されたりすることがあります。

特に大きなバージョンアップでは、

「設定が残っているように見えるが、内部的には変更されている」

可能性も考えておきます。

重要な設定については、アップグレード前後で比較しておくと安心です。


自動アップグレード設定にも注意

FortiOSのバージョンによっては、自動ファームウェアアップグレード機能があります。

計画的にFortiOSを管理している環境では、

意図しないタイミングでアップグレードされない設定になっているか

についても確認しておいた方がよいでしょう。

特に本番環境では、

「自分たちは手動で管理しているつもりだった」

という状態にならないよう、アップグレード後の設定確認項目の一つにしておくと安心です。


私がFortiOSアップグレード前に確認するチェックリスト

実際の作業では、次のようなチェックリストを作っておくと作業漏れを防げます。

□ 現在のFortiOSバージョン確認

□ FortiGateモデル確認

□ Upgrade Path確認

□ Release Notes確認

□ Known Issues確認

□ 設定バックアップ取得

□ 現在状態の記録

□ HA同期状態確認

□ コンソール接続手段確認

□ 作業時間確保

□ アップグレード実施

□ FortiOSバージョン確認

□ HA状態確認

□ インターフェース確認

□ ルーティング確認

□ VPN確認

□ インターネット通信確認

□ 拠点間通信確認

□ FortiGuard確認

□ System Event確認

□ 主要サービスの動作確認

FortiGateの構成によって、必要な項目を追加します。


FortiOSアップグレードで特に重要な3点

いろいろ確認項目がありますが、特に重要だと思うのは次の3つです。

1. Upgrade Pathを確認する

目的のFortiOSへ直接アップグレードできるとは限りません。

必ず現在のFortiOSからのUpgrade Pathを確認します。

2. 設定バックアップを取る

アップグレード前の設定は必ず別の場所へ保存しておきます。

3. アップグレード後の確認項目を先に決める

アップグレードが終わってから、

「さて、何を確認しよう?」

ではなく、作業前に正常性確認項目を決めておきます。

これだけでも作業の安全性はかなり変わります。


まとめ

FortiGateのFortiOSアップグレードはGUIから比較的簡単に実行できます。

しかし、本番環境では単に「Upgrade」を押せば終わりという作業ではありません。

特に重要なのが、

Upgrade Pathの確認

です。

さらに、

Upgrade Path
↓
Release Notes
↓
設定バックアップ
↓
事前状態確認
↓
アップグレード
↓
再起動
↓
通信・HA・ルーティング・ログ確認

という流れで作業すると安全です。

FortiGateはネットワークの重要な位置に設置されていることが多いため、トラブルが発生すると多くの通信へ影響します。

だからこそ、

「アップグレードできるか」ではなく、「問題が起きても確認・復旧できる準備ができているか」

まで考えてから作業することが大切です。

コメント

タイトルとURLをコピーしました