【注意】FortiGate ver.7.4.5 からすべてのモデルでファームウェア自動更新機能がデフォルト有効になりました> Membership

FortiGate 設定変更発生時のアラートメール送信設定ガイド

目次

本記事について

本記事では、Fortinet 社のファイアウォール製品である FortiGate に関して、設定変更が発生した際に管理者のメールアドレスにアラートメールを送信するための設定方法を説明します。

この設定を行うことで万が一悪意のある攻撃者に不正に FortiGate にアクセスされ設定変更が行われたとしても早期に気付く事ができるといった効果が期待できます。

動作確認環境

本記事の内容は以下の機器にて動作確認を行った結果に基づいて作成されています。

  • FortiGate-60F
    • バージョン 7.4.4

アラートメール送信のための2つの設定方法

設定変更発生時にアラートメールを送信するための設定方法としては以下の2つがあります。

  • アラートメール機能を利用する方法
    • アラートメール機能は、指定したイベント発生時に指定したメールアドレス宛にアラートメールを送信する機能
    • 用意されているイベントの中にコンフィグ変更イベントがあるためこれを有効化する
    • 設定はシンプルだがメール件名や本文のカスタマイズはできない
    • メール内容としてはコンフィグ変更のイベントログがそのまま記載されている
    • メールの送信間隔を設定でき、一定間隔内でコンフィグ変更が複数発生した場合は一つのメールにまとめて送信される
  • オートメーション機能を利用する方法
    • オートメーション機能は、トリガーとアクションを定義しそれらを組み合わせたステッチと呼ばれる定義を行う
    • イベントログをトリガーにできるため、コンフィグ変更ログをトリガーとしてメールを送信するアクションを実行するよう設定する
    • メール件名や本文の内容を自由にカスタマイズできる
    • トリガーとなるイベントログの選定が若干難しい
    • トリガーインターバルを設定することもできるが、インターバル時間中は設定変更が発生してもメールが送信されない

2つの方法はそれぞれ上記の特徴があるため要件に合わせて設定方法を選んでください。例えばメール内容は単純で良いので設定を簡単にしたいのであればアラートメール機能を使用するのが良いかもしれないし、メール内容を分かりやすいようにカスタマイズしたいのであればオートメーション機能を使う必要があります。

メール送信で使用する SMTP サーバについて

アラートメールを送信するためにはメール送信サーバ(SMTPサーバ)が必要です。

使用するSMTPサーバとしては以下の2パターンから選択できます。

  • クラウドの Foritinet の SMTP サーバを利用する
    • Foritinet 社が提供するクラウドの SMTP サーバ
    • デフォルト設定ではこの SMTP サーバを使用する設定になっている
    • この SMTP サーバを使用するためには FortiCare ライセンスが有効である必要がある
  • ローカルにある SMTP サーバを利用する
    • ローカルネットワーク内に存在する SMTP サーバを利用することも可能

■クラウドの Foritinet の SMTP サーバを利用する場合の構成イメージ

Foritinet の SMTP サーバのドメインはバージョン 7.4.3 以前では notification.fortinet.net ですが、バージョン 7.4.4 からは fortinet-notifications.com に変更されました。

■ローカルにある SMTP サーバを利用する場合の構成イメージ

利用する SMTP サーバの設定方法

まずアラートメール送信のために利用する SMTP サーバの設定方法を説明します。

設定は「システム > 設定」画面の「Eメールサービス」欄で行います。デフォルトでは以下画像のようにクラウドの Foritinet の SMTP サーバを使用する設定になっています。

CLI コンフィグではconfig system email-serverが該当します。

config system email-server
    set server "fortinet-notifications.com"
    set port 465
    set security smtps
end

ローカルの SMTP サーバを利用する場合の設定

ローカルの SMTP サーバを利用する場合は以下のように「カスタム設定を使用」のトグルを有効化し、表示される各項目を設定します。

  • SMTPサーバ:指定」を選択し、SMTP サーバの IP アドレスまたは FQDN を入力します
  • ポート: デフォルト(25) を選択するか、「Specify」を選択し SMTP サーバのポート番号を入力します
  • 認証: ユーザ認証を行う場合はトグルを有効化してユーザ名とパスワードを入力します
  • セキュリティモード: 使用するプロトコルを選択します

CLI で設定する場合は以下のようになります。

config system email-server
    set type custom
    set server "192.168.179.17"
    set port 25
    set authenticate enable
    set username "mailuser01"
    set password <パスワード>
    set security none
end

方法① アラートメール機能によるメール送信設定方法

アラートメール機能により、設定変更発生時にアラートメールを送信するよう設定する方法を説明します。

アラートメール機能は CLI からのみ設定可能です。該当コンフィグ項目はconfig alertemail settingです。

設定項目としては以下があります。

config alertemail setting
    set username ''
    set mailto1 ''
    set mailto2 ''
    set mailto3 ''
    set filter-mode category
    set email-interval 5
    set IPS-logs disable
    set firewall-authentication-failure-logs disable
    set HA-logs disable
    set IPsec-errors-logs disable
    set FDS-update-logs disable
    set PPP-errors-logs disable
    set sslvpn-authentication-errors-logs disable
    set antivirus-logs disable
    set webfilter-logs disable
    set configuration-changes-logs disable
    set violation-traffic-logs disable
    set admin-login-logs disable
    set FDS-license-expiring-warning disable
    set FSSO-disconnect-logs disable
    set ssh-logs disable
end

考慮すべき設定項目は以下です。

設定項目意味デフォルト値備考
usernameメール送信元アドレス設定無しSMTPサーバとドメインを
合わせるのが無難
mailto1~mailto3メール宛先アドレス設定無し3つまで設定可能
email-intervalメール送信間隔5 (分)
configuration-changes-logsコンフィグ変更ログをトリガーとする
アラートメール送信の有効化
disable

コンフィグ変更発生時にアラートメールを送信するためにはconfiguration-changes-logsenableに設定します。一度設定変更が発生してメールが送信された直後に再度設定変更が発生した場合、email-intervalで設定した時間が経過するまで次のメールは送信されません。次のメールが送信されるまでに発生した設定変更ログはまとめて次のメールの本文に記載されます。

以下は設定例です。

config alertemail setting
    set username "mailuser01@mysmtpserver.test.com"
    set mailto1 "mailuser01@shadowgarden.org"
    set email-interval 5
    set configuration-changes-logs enable
end

アラートメール機能で送信されるメールの内容は以下のようになっていて、件名は「Message meets Alert condition」となります。

方法② オートメーション機能によるメール送信設定方法

オートメーション機能により、設定変更発生時にアラートメールを送信するよう設定する方法を説明します。

オートメーションは「セキュリティファブリック > オートメーション」画面で設定します。

オートメーションには「ステッチ」「トリガー」「アクション」の3つの要素があります。

  • アクション
    • FortiGate が実行するアクションの定義です
    • メール通知、Slack通知、CLIスクリプト実行、クラウドサービスへのクエリ実行などがあります
  • トリガー
    • アクションを実行するトリガーとなるイベントの定義です
    • FortiOS のイベントログ、時間によるスケジュール、ファブリックコネクタイベントなどがあります
  • ステッチ
    • トリガーとアクションを組み合わせた設定です
    • ステッチを設定することでトリガーの監視とアクションの実行が行われます

設定変更発生時にアラートメールを送信するようにするためには以下のように設定します。

  • トリガー
    • コンフィグ変更のイベントログをトリガーとして設定
  • アクション
    • Eメール通知を行うアクションを設定

トリガーの設定方法

STEP
トリガー作成画面の表示

オートメーション画面でトリガータブを表示し、「新規作成」をクリックします。

STEP
FortiOSイベントログの選択

以下のような画面が表示されるため「FortiOSイベントログ」をクリックします。

STEP
イベントログ内容の設定

以下のような画面が表示されるため、トリガーとするイベントログを指定します。

  • 名前: 任意のトリガー表示名を入力します
  • イベント: トリガーとするイベントログ種別を指定します。イベントログのリストから指定します。フィルタでリスト表示されるイベントログ種別を絞り込むことができます。コンフィグ変更関連のイベントログ種別については後述の「設定変更関連のイベントログ種別」の項目を参考にしてください
  • フィールドフィルタ: 必要に応じてフィールド値でフィルタすることも可能です。フィルタに一致する場合にトリガーされます

設定できたら「OK」をクリックします。

STEP
設定確認

トリガーリストに設定したトリガーが表示されていることを確認します。

トリガー設定は CLI コンフィグではconfig system automation-triggerに該当します。

config system automation-trigger
    edit "ConfigChanged"
        set description ''
        set trigger-type event-based
        set event-type event-log
        set logid 44546 32102 44547 44545 44544 43527
    next
end

上記コンフィグ例の通りイベントログの指定が数値となるため、CLI で設定するのは難しいです。

アクションの設定方法

STEP
アクション作成画面の表示

オートメーション画面でアクションタブを表示し、「新規作成」をクリックします。

STEP
Eメールアクションの選択

以下のような画面が表示されるため「Eメール」をクリックします。

STEP
Eメール内容の設定

以下のような画面が表示されるため、Eメールの内容を指定します。

  • 名前: 任意のアクション表示名を入力します
  • 最小インターバル: アクションを実行した後、次のアクションを実行するまでの間隔です。インターバル時間中はトリガーの監視が行われません。デフォルトは 0 秒(インターバル無し)です
  • From: メールの送信元アドレスです
  • To: メールの宛先アドレスです。任意の数まで増やせます
  • サブジェクト: メールの件名です
  • 本文: メールの本文です。「%%log%%」でトリガーとなったイベントログの内容を表示できます

設定できたら「OK」をクリックします。

STEP
設定確認

アクションリストに設定したアクションが表示されていることを確認します。

アクション設定は CLI コンフィグではconfig system automation-actionに該当します。

config system automation-action
    edit "EmailForConfigChanged"
        set description ''
        set action-type email
        set forticare-email disable
        set email-to "mailuser01@shadowgarden.org" "mailuser02@shadowgarden.org" "mailuser03@shadowgarden.org"
        set email-from "mailuser01@mysmtpserver.test.com"
        set email-subject "【アラート】FortiGateで設定変更発生"
        set minimum-interval 0
        set message "FortiGateで設定変更が発生しました。

◆コンフィグ変更ログ内容
%%log%%"
        set replacement-message disable
    next
end

ステッチの設定方法

トリガーとアクションを設定できたらステッチを設定します。

STEP
ステッチ作成画面の表示

オートメーション画面でステッチタブを表示し、「新規作成」をクリックします。

STEP
ステッチ内容の設定

以下のような画面が表示されるため、ステッチの内容を設定します。

  • 名前: 任意のステッチ表示名を入力します
  • アクションの実行: アクションが複数設定されている場合の実行方式です。シーケンシャルだとアクションを一つずつ順次実行、パラレルだとすべて同時実行します
  • トリガー: クリックすると右側にトリガー一覧が表示されるため、あらかじめ作成しておいたトリガーを指定します

トリガー設定ができたら次はアクションを設定します。「Action」をクリックすると右側にアクション一覧が表示されるため、あらかじめ作成しておいたアクションを指定します。

アクションも設定できたら画面下の「OK」をクリックします。

STEP
設定確認

ステッチリストに設定したステッチが表示されていることを確認します。

アクション設定は CLI コンフィグではconfig system automation-stitchに該当します。

config system automation-stitch
    edit "ConfigChangeMail"
        set description ''
        set status enable
        set trigger "ConfigChanged"
        config actions
            edit 1
                set action "EmailForConfigChanged"
                set delay 0
                set required enable
            next
        end
    next
end

メール内容

上記設定例でのメール内容は以下のようになります。

ステッチがトリガーされると以下のようなイベントログが生成されます。

デフォルトで存在する Configuration Change トリガーについて

デフォルトで以下のようなトリガー設定が存在します。

  • 名前: Configuration Change
  • 説明: An administrator’s session that changed a FortiGate’s configuration has ended.

これはイベントログの「Configuration changed」がトリガーになっていて、このイベントログは設定変更が行われた後その管理セッションが切断されたときに生成されるため、セッションが切断されたタイミングでアラートメールが送信されます。

ログ内容は以下のようになっているため、設定変更内容まではこのログからは分かりません。

date=2024-06-22 time=23:29:51 devid=”FGT60FXXXXXXXXXX” devname=”FortiGate-60F” eventtime=1719066591646519150 tz=”+0900″ logid=”0100032102″ type=”event” subtype=”system” level=”alert” vd=”root” logdesc=”Configuration changed” user=”admin” ui=”https(10.10.10.11)” msg=”Configuration is changed in the admin session”

アラートメールでは設定変更が行われたことのみが分かれば良く、設定変更内容が分からなくても良い場合はこのデフォルトのトリガーを利用することもできます。

設定変更関連のイベントログ種別

設定変更が行われたセッションが切断されたときに生成されるイベントログは以下です。

  • Configuration changed

設定変更が実施されたタイミングで生成され、設定変更内容を含むイベントログとしては以下があります。

  • Attribute configured
  • Object attribute configured
  • Object configured

また、以下も「configured」と付いているので設定変更関連のログの可能性がありそうです。

  • Path configured
  • Rogue AP status configured

メール内容では設定変更が行われたことのみが分かれば良ければ「Configuration changed」をトリガーにすれば良く、設定変更内容までメール内容で分かるようにしたければ上記5つの設定変更内容を含む(、及び含む可能性がありそうな)イベントログをトリガーにすれば良いかと思います(ただし上記5つですべての設定変更がカバーできていない可能性もあるため注意してください)。

このようにオートメーション機能で対応する場合、トリガーとなるイベントログの設定に難しさがあります。方法①のアラートメール機能であれば確実にすべての設定変更をトリガーにでき、メール内容としても設定変更内容を含むログが本文に含まれるため場合によってはアラートメール機能を使用したほうが安心できるかもしれません。

補足

こちらのコミュニティ情報の設定例によると、コンフィグ変更時にメールアラートを出すためのトリガーとなるイベントログ種別としては以下3つが設定されていました。

  • Attribute configured
  • Object attribute configured
  • Object configured

これら3つを設定しておけば十分なのかもしれません。

参考資料

あわせて読みたい
あわせて読みたい
Technical Tip: How to configure Email Alert when there's a configuration change on FortiGate Description This article describes how to configure Email Alert when there is a configuration change on FortiGate. Scope FortiGate. Solution Configure Email Ser...

【おすすめ】FortiGate の設計構築中なら以下の記事も役立つかもです

Amazon アフィリエイトリンク

以下は Amazon アフィリエイトリンクです。インフラエンジニアにそこそこおすすめなアイテムです。

note メンバーシップへの参加もお待ちしています!

note(ノート)
陰の構築者たちのメンバーシップ|シェイド@陰の構築者 ネットワーク設計構築をする人に役立つメンバーシップです。 独自ブログ(https://shadowgarden.org/)にてネットワークエンジニア向け情報を発信しており、その活動を応援...

【アフィリエイト】おすすめ WordPress テーマ【SWELL

当サイトでは WordPress テーマとして SWELL を使用しています。以前は無料・高機能テーマとして知られる Cocoon を使用していて Cocoon も使いやすかったのですが、SWELL を使い始めてからは SWELL のほうが圧倒的に使いやすいなと思いました。そして何より読み込み速度が速い。SWELL を使い始めてから、過去の Cocoon のブログを見直したときに「あれ、こんなに表示遅かったっけ?」という感覚になりました。

また SWELL はデフォルトでもオシャレなデザインですが柔軟にカスタマイズすることもでき個性のあるサイトを作成できます。さらにブログパーツや広告タグといった再利用可能なブログの「部品」も作成することができ、ブログ作成効率も高いです。

技術ブログやアフィリエイト等での収益化を見据えたブログの作成に SWELL は最適です。初見では価格が高いなと思うと思いますが、私としては SWELL を採用して良かったしそれ以上の価値があると感じています。
ブログの新設やテーマ変更を考えている人は一度 SWELL を検討してみてください。
以下の画像リンクから詳細な情報を確認できます。

レンタルサーバーを探している人には安定性に定評のあるエックスサーバーをお勧めします。
当サイトもエックスサーバーを使用しています。WordPress のインストールも簡単にできます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次