本記事では前後編にわたり、REST APIを使ってFortiGateを監視するまでの流れを紹介します。
前編ではFortiGateのREST APIの紹介と設定方法を、後編ではLogStare Collectorのメトリクス監視を用いて監視するための設定を行っていきます。
目次
REST APIの利用について
旧来、FortiGateの設定変更やログ取得など、FortiGateに対する作業は筐体へ何らかの形でログインをして実施する必要がありました。
しかし、昨今では運用自動化が推し進められ、FortiGateに限らず他社アプライアンスでもAPIの実装が進みました。その結果、APIを用いたリクエストによって、FortiGateへ作用を働かせられるようになりました。
本記事では監視目的だけにREST APIを用いますが、REST APIは監視に限らず現行設定値の取得、設定変更にも用いることができます。
FortiGateのREST API実装手順
以下の資料をもとに設定を行っていきます。
https://docs.fortinet.com/document/fortigate/7.2.4/administration-guide/940602
対象バージョン
FortiOS: 7.0 , 7.2
REST API利用設定
- システム > 管理者プロファイルからAPI管理者用プロファイルを作成します。
※REST APIを用いたリソースの監視値を取得する際の最小限の権限設定について、明確な記載のあるドキュメントは探した限りでは見つかりませんでした。アクセス権限において、「システム」> 「設定」を「なし」に変更すると、本記事で取得を想定しているエンドポイントへのリクエストは失敗することから、最小限の権限設定と判断しています。設定時にはご注意ください。 - システム > 管理者 よりREST API管理者の作成画面に切り替えます。
- 1.で作成したプロファイルを用いて、管理者設定を行います。
「PKIグループ」と「オリジン間リソース共有許可」は必要に応じて設定します。
「信頼されるホストにログインを制限」については、検証目的でない限り設定しましょう。セキュリティ上のリスクを抑えることができます。
- 生成されたAPIキーを保管します。
REST API実行
- リソース使用量を取得できるか確認します。
「REST API管理者」においてアクセスが許可されるIPアドレスを持つデバイスから以下のURLにリクエストを行います。
クエリパラメータ「access_token=」の値は、生成されたAPIキーとなります。https://[FortiGateのアクセス先]/api/v2/monitor/system/resource/usage?access_token=***
- ステータスコード200の応答があれば、取得に成功しています。
それ以外のステータスコードが応答される、あるいはレスポンスがない場合には、設定が妥当であるのかを確認します。
まとめ
前編については以上です。REST API設定について解説しました。
後編では取得されるJSONフォーマットのレスポンスを用いて監視を行う方法を案内します。
後編に続きます。
記載されている会社名、システム名、製品名は一般に各社の登録商標または商標です。
当社製品以外のサードパーティ製品の設定内容につきましては、弊社サポート対象外となります。