FortiGateの運用において、正確な時刻設定は見落とされがちですが、ログ解析やHA構成の安定性に直結する重要な要素です。本記事では、NTPサーバー設定の基本から、時刻同期がうまくいかない場合のトラブルシューティングまで、実機での経験をもとに解説します。

👷 現場での体験談

セキュリティインシデント発生時、FortiGateのログ時刻が5時間ずれていたため、他システムとの時系列照合に苦労したことがあります。タイムゾーン設定とNTP同期の両方が正しく設定されていなかったことが原因でした。

また、HA構成のペア機で時刻が30秒以上ずれていたため、フェイルオーバー時に予期しない動作が発生したケースもありました。NTP設定は初期構築時に必ず確認すべき項目です。

NTP設定の重要性

FortiGateにおける正確な時刻設定は、単なる表示上の問題ではありません。以下のような重要な機能に直接影響します。

表1: 時刻設定が影響する主要機能

影響範囲問題の内容重要度
ログ管理インシデント対応時の時系列分析が困難になる
SSL証明書証明書の有効期限判定エラーが発生
HA構成時刻ずれによる同期障害・切り替え失敗
スケジュール機能ポリシーの時間帯制限が正しく動作しない

図1: NTP設定が必須となるケース

HA構成環境
95%
SIEM連携
90%
SSL-VPN運用
80%
監査要件対応
85%
GUI/CLIでのNTP設定手順
GUIでの基本設定

FortiGateのGUIから設定する場合、以下の手順で実施します。

1
システム設定へアクセス

System > Settings へ移動し、System Time セクションを開きます

2
タイムゾーン設定

Timezone で「(GMT+9:00) Tokyo」を選択(日本の場合)

3
NTPサーバー指定

Enable NTP にチェックを入れ、NTP Server欄に「ntp.nict.jp」などを入力

CLIでの詳細設定

CLIでは、より柔軟な設定が可能です。複数のNTPサーバーを指定し、優先順位を設定できます。

config system ntp
    set ntpsync enable
    set type fortiguard
    set syncinterval 60
    config ntpserver
        edit 1
            set server "ntp.nict.jp"
            set ntpv3 enable
        next
        edit 2
            set server "ntp1.jst.mfeed.ad.jp"
            set ntpv3 enable
        next
    end
end

config system global
    set timezone 26
end
⚠ 注意

タイムゾーン番号はFortiOSバージョンによって異なる場合があります。「get system global」コマンドで現在の設定を確認してから変更してください。

時刻同期の確認コマンドと正常動作の見分け方

NTP設定後、正しく動作しているかを確認するコマンドをいくつか紹介します。

基本的な確認コマンド
# 現在の時刻とNTP同期状態を確認
get system status | grep -i time

# NTP設定を表示
show system ntp

# NTPサーバーとの同期状態を確認
diagnose sys ntp status

# 詳細な同期情報を表示
execute date

正常に同期している場合の出力例:

# diagnose sys ntp status
synchronized: yes
server: ntp.nict.jp
stratum: 2
reference time: Thu Jan 16 15:30:45 2025
system time: Thu Jan 16 15:31:12 2025
offset: 0.002 sec
round trip delay: 0.015 sec

表2: NTP同期状態の判定基準

項目正常値異常の兆候
synchronizedyes と表示されるno または表示なし
stratum1〜4程度(小さいほど正確)16(未同期状態)
offset±0.1秒以内1秒以上のずれ
round trip delay0.1秒以内(LAN内はさらに小)1秒以上
よくあるトラブル事例と対処法

図2: NTP同期トラブルの発生頻度

通信経路問題
45%
設定ミス
30%
NTPサーバー障害
15%
その他
10%
トラブル1: NTPサーバーに到達できない

最も多いのがネットワーク経路の問題です。FortiGateからNTPサーバー(UDP 123番ポート)への通信が許可されていない場合に発生します。

# NTPサーバーへの疎通確認
execute ping ntp.nict.jp

# NTPポートへの到達確認(別の方法)
diagnose sniffer packet any "host ntp.nict.jp and port 123" 4 0 a

対処法:管理用インターフェースまたはWAN側インターフェースから、NTPサーバーへのアウトバウンド通信を許可するポリシーを作成します。特にLocal-outポリシーの確認が重要です。

トラブル2: 時刻が大きくずれている場合

初期設定時や長期間電源を切っていた場合、時刻が大幅にずれていることがあります。NTPは通常、徐々に時刻を調整するため、大きなずれがあると同期に時間がかかります。

# 手動で時刻を設定(yyyy-mm-dd hh:mm:ss形式)
execute date 2025-01-16 15:30:00

# その後NTP同期を有効化
config system ntp
    set ntpsync enable
end

# 即座に同期を試行
execute ntp sync
トラブル3: タイムゾーン設定が正しくない

NTPで正しい時刻を取得していても、タイムゾーン設定が間違っているとログの時刻表示がずれます。日本の場合はGMT+9:00を設定する必要があります。

# 現在のタイムゾーン確認
get system global | grep timezone

# タイムゾーンを日本時間に設定
config system global
    set timezone 26
end
社内NTPサーバーを使う場合の設定例

企業環境では、セキュリティポリシー上、インターネット上の公開NTPサーバーへの直接アクセスが制限されている場合があります。その場合は社内NTPサーバーを経由する設定が必要です。

社内NTPサーバー指定の設定
config system ntp
    set ntpsync enable
    set type custom
    set syncinterval 60
    config ntpserver
        edit 1
            set server "192.168.1.10"
            set ntpv3 enable
            set interface "internal"
        next
        edit 2
            set server "192.168.1.11"
            set ntpv3 enable
            set interface "internal"
        next
    end
end
必要なポリシー設定

社内NTPサーバーへの通信を許可するポリシーが必要です。特にLocal-outポリシーの設定が重要になります。

config firewall local-in-policy
    edit 1
        set intf "internal"
        set srcaddr "all"
        set dstaddr "all"
        set service "NTP"
        set schedule "always"
    next
end
⚠ 注意

社内NTPサーバーを使用する場合、そのサーバー自体が正確な時刻源(上位NTPサーバーやGPS)と同期していることを確認してください。階層構造が深くなるほど精度が低下します。

まとめ

FortiGateのNTP設定は、ログ管理やHA構成の安定運用に不可欠です。初期構築時に正しく設定し、定期的に同期状態を確認することで、トラブルを未然に防げます。特にHA構成では両機器の時刻同期が重要なため、初期設定時の確認を忘れないようにしましょう。

  • タイムゾーンとNTPサーバーの両方を正しく設定する
  • 「diagnose sys ntp status」で同期状態を定期確認
  • 社内NTPサーバー利用時はLocal-outポリシーの設定が必須