本記事について
本記事では、Fortinet 社のファイアウォール製品である FortiGate について、SNMP 監視のための設定を行う方法について説明します。SNMP v1/v2c の場合の設定方法と、SNMP v3 の場合の設定方法について記載します。
動作確認環境
本記事の内容は以下の機器にて動作確認を行った結果に基づいて作成されています。
- FortiGate-60F
- バージョン 7.4.3
SNMP 監視とは
ネットワーク内には、各ネットワーク機器について異常が発生していないかを監視する「監視サーバ」が存在します。監視サーバは機器状態確認用のプロトコルである SNMP を使用し、対象機器からステータス情報を取得します。また逆にネットワーク機器から監視サーバに対して自発的に状態変化を通知する SNMP トラップという仕組みもあります。もし機器ステータスに異常があれば監視サーバはアラートを出し管理者に異常を伝えます。これが SNMP 監視です。
監視サーバにて SNMP で機器監視をするためには、被監視機器にて SNMP 設定を行っておく必要があります。
SNMP にはいくつかバージョンあります。
現在最も利用されているのは SNMP v1 または v2c です。v1 と v2c の基本的な仕組みは同じなので機器での SNMP 設定内容は同じです。SNMP v1/v2c ではコミュニティと呼ばれる文字列によって認証を行います。
新しいバージョンとして SNMP v3 があります。SNMP v3 は過去から続いているネットワークではほとんど使用されていませんが、新しいネットワークでは採用されている場合があります。SNMP v3 では v1/v2c のようなコミュニティは使用せず、代わりにユーザ名とパスワードを使用して認証を行います。また、v1/v2c に無かった暗号化機能をオプションで使用することができます。
SNMP v1/v2c の設定方法
GUI での SNMP v1/v2c の設定方法
GUI にログインし左側のメニューから「システム > SNMP」をクリックします。
以下のSNMP画面が表示されるため、次の通り設定します。
- 「SNMPエージェント」のトグルスイッチを有効化します
- 「説明」「ロケーション」「コンタクト情報」を設定する場合は各項目の値を入力します
- 「SNMP v1/v2c」欄の「新規作成」をクリックします
新規SNMPコミュニティ画面が表示されるため各項目を設定していきます。
- 「コミュニティ名」には監視サーバ側設定と合わせたコミュニティ名を入力します
- 「有効化済み」は有効にします
- 「ホスト」欄の「IPアドレス」には監視サーバのアドレスを入力し、「ホストタイプ」にはクエリとトラップのどれを許可するかを設定します。通常は両方許可する「クエリを受け入れトラップを送信する」を選択します
- ホストは2つ以上設定することも可能です
- クエリ、トラップ欄では、使用する SNMP バージョンとポート番号を指定します
- 使用したくないバージョンがあればそのバージョンはトグルスイッチで無効化します
- ポートは通常は変更する必要はありません
- SNMPイベント欄では、有効化するトラップを指定します。通常はデフォルトで問題ありません
- 以下の画像では一部のイベントのみ掲載しています。すべてのイベントについては後で記載します
以上の設定ができたら画面下部の「OK」をクリックして設定を確定します。
SNMP画面に戻るため、「SNMP v1/v2c」欄にコミュニティ設定が追加されていることを確認します。その後画面下部の「適用」をクリックして設定を確定します。
以上で SNMP v1/v2c の設定は完了です。
CLI での SNMP v1/v2c の設定方法
SNMPエージェントの有効化はコンフィグのconfig system snmp sysinfo
にて行います。
設定項目として以下があります。
set status
- SNMPエージェントの有効/無効設定
set description
- 説明(オプション)
set contact-info
- コンタクト情報(オプション)
set location
- ロケーション(オプション)
最低限set status enable
を設定します。その他はオプションです。
config system snmp sysinfo
set status enable
set description "説明を入力_オプション"
set contact-info "コンタクト情報を入力_オプション"
set location "ロケーションを入力_オプション"
end
SNMP v1/v2c コミュニティの設定はconfig system snmp community
にて行います。
そのコンフィグ構造は以下のようになっています。
config system snmp community
edit 1
set name "shadowgarden"
set status enable
config hosts
edit 1
set source-ip 0.0.0.0
set ip 10.10.11.20 255.255.255.255
set ha-direct disable
set host-type any
next
end
set query-v1-status enable
set query-v1-port 161
set query-v2c-status enable
set query-v2c-port 161
set trap-v1-status enable
set trap-v1-lport 162
set trap-v1-rport 162
set trap-v2c-status enable
set trap-v2c-lport 162
set trap-v2c-rport 162
set events cpu-high mem-low log-full intf-ip vpn-tun-up vpn-tun-down ha-switch ha-hb-failure ips-signature ips-anomaly av-virus av-oversize av-pattern av-fragmented fm-if-change bgp-established bgp-backward-transition ha-member-up ha-member-down ent-conf-change av-conserve av-bypass av-oversize-passed av-oversize-blocked ips-pkg-update ips-fail-open temperature-high voltage-alert power-supply faz-disconnect faz wc-ap-up wc-ap-down fswctl-session-up fswctl-session-down load-balance-real-server-down per-cpu-high dhcp pool-usage ospf-nbr-state-change ospf-virtnbr-state-change
set mib-view ''
next
end
以下のようにconfig system snmp community
の中にedit
項目があります。edit
項目一つが一つのコミュニティ設定に該当します。
config system snmp community
edit 1
...
next
end
以下のようにコミュニティ設定に該当するedit
項目の中にconfig hosts
があります。config hosts
はホスト設定(監視サーバ設定)に該当します。config hosts
の中にさらにedit
項目がありますが、これは個々のホスト設定に該当します。
config system snmp community
edit 1
...
config hosts
edit 1
...
next
end
...
next
end
設定項目が複数ありますが、最低限コミュニティ名とホストアドレスのみ設定し、その他の項目はデフォルトから変えたい場合だけ設定すれば OK です。
例えばコミュニティ名「shadowgarden」、ホストアドレス「10.10.11.20」と設定したい場合の設定コンフィグは以下のようになります。
config system snmp community
edit 1
set name "shadowgarden"
config hosts
edit 1
set ip 10.10.11.20 255.255.255.255
next
end
next
end
ホストを2台設定したい場合は以下のようにconfig hosts
の中のedit
項目を追加します。
config system snmp community
edit 1
set name "shadowgarden"
config hosts
edit 1
set ip 10.10.11.20 255.255.255.255
next
edit 2
set ip 10.10.11.21 255.255.255.255
next
end
next
end
以下、各設定項目について説明します。
コミュニティ名とステータスの設定
コミュニティ名はset name
で設定します。コミュニティのステータスはset status
で設定します。
config system snmp community
edit 1
set name "shadowgarden"
set status enable
next
end
ホスト(監視サーバ)の設定
ホストはconfig hosts
内で設定します。
source-ip
- SNMPトラップ送信時のソースIPアドレス
set ip
- [設定必須] ホスト(監視サーバ)のアドレス
set ha-direct
- HA 構成時に SNMP 関連通信の送信元インターフェースを管理インターフェースにする
set host-type
- ホストタイプ。以下から指定
- any (デフォルト)
- query
- trap
- ホストタイプ。以下から指定
config system snmp community
edit 1
config hosts
edit 1
set source-ip 0.0.0.0
set ip 10.10.11.20 255.255.255.255
set ha-direct disable
set host-type any
next
end
next
end
SNMP バージョンの有効・無効設定
set query-v1-status
- SNMP v1 クエリのステータス設定
set query-v2c-status
- SNMP v2c クエリのステータス設定
set trap-v1-status
- SNMP v1 トラップのステータス設定
set trap-v2c-status
- SNMP v2c トラップのステータス設定
config system snmp community
edit 1
set query-v1-status enable
set query-v2c-status enable
set trap-v1-status enable
set trap-v2c-status enable
next
end
SNMPイベント(トラップ)の設定
SNMPイベントはset events
で設定します。値として有効化するイベントを半角スペース区切りで指定します。
config system snmp community
edit 1
set events cpu-high mem-low log-full intf-ip vpn-tun-up vpn-tun-down ha-switch ha-hb-failure ips-signature ips-anomaly av-virus av-oversize av-pattern av-fragmented fm-if-change bgp-established bgp-backward-transition ha-member-up ha-member-down ent-conf-change av-conserve av-bypass av-oversize-passed av-oversize-blocked ips-pkg-update ips-fail-open temperature-high voltage-alert power-supply faz-disconnect faz wc-ap-up wc-ap-down fswctl-session-up fswctl-session-down load-balance-real-server-down per-cpu-high dhcp pool-usage ospf-nbr-state-change ospf-virtnbr-state-change
next
end
イベントのリストについては後で記載します。
CLI での SNMP v1/v2c の設定については以上です。
SNMP v3 の設定方法
GUI での SNMP v3 の設定方法
GUI にログインし左側のメニューから「システム > SNMP」をクリックします。
以下のSNMP画面が表示されるため、次の通り設定します。
- 「SNMPエージェント」のトグルスイッチを有効化します
- 「説明」「ロケーション」「コンタクト情報」を設定する場合は各項目の値を入力します
- 「SNMP v3」欄の「新規作成」をクリックします
SNMPユーザ設定画面が表示されるため、各項目を設定していきます。
- 「ユーザ名」では認証用ユーザ名を入力します
- 「有効化済み」にて有効化されていることを確認します
- セキュリティレベル欄では認証と暗号化について設定します
- 「認証なし/認証」では、パスワード無しにする場合は「認証なし」を選択し、パスワード有にする場合は「認証」を選択します。「認証」を選択した場合は認証アルゴリズムとパスワードを設定します
- 認証アルゴリズムは MD5、SHA1、SHA224、SHA256、SHA384、SHA512 から選択
- 「非プライベート/プライベート」では、暗号化しない場合は「非プライベート」を選択し、暗号化する場合は「プライベート」を選択します。「プライベート」を選択した場合は暗号化アルゴリズムとパスワードを設定します
- 暗号化アルゴリズムは AES、DES、AES256、AES256 Cisco から選択
- 「認証なし/認証」では、パスワード無しにする場合は「認証なし」を選択し、パスワード有にする場合は「認証」を選択します。「認証」を選択した場合は認証アルゴリズムとパスワードを設定します
- 「ホスト」欄ではホスト(監視サーバ)のアドレスを入力します
- 2台以上のホストを設定することもできます
- クエリ、トラップ欄では必要に応じて無効化、ポートの変更を行います。通常はデフォルトのままで問題ありません
- SNMPイベント欄では、有効化するトラップを指定します。通常はデフォルトで問題ありません
- 以下の画像では一部のイベントのみ掲載しています。すべてのイベントについては後で記載します
以上の設定ができたら画面下部の「OK」をクリックして設定を確定します。
SNMP画面に戻るため、「SNMP v3」欄にユーザ設定が追加されていることを確認します。その後画面下部の「適用」をクリックして設定を確定します。
以上で SNMP v3 の設定は完了です。
CLI での SNMP v3 の設定方法
SNMPエージェントの有効化はコンフィグのconfig system snmp sysinfo
にて行います。
設定項目として以下があります。
set status
- SNMPエージェントの有効/無効設定
set description
- 説明(オプション)
set contact-info
- コンタクト情報(オプション)
set location
- ロケーション(オプション)
最低限set status enable
を設定します。その他はオプションです。
config system snmp sysinfo
set status enable
set description "説明を入力_オプション"
set contact-info "コンタクト情報を入力_オプション"
set location "ロケーションを入力_オプション"
end
SNMP v3 ユーザの設定はshow system snmp user
にて行います。
そのコンフィグ構造は以下のようになっています。
config system snmp user
edit "shadowgarden"
set status enable
set trap-status enable
set trap-lport 162
set trap-rport 162
set queries enable
set query-port 161
set notify-hosts 10.10.11.20
set source-ip 0.0.0.0
set source-ipv6 ::
set ha-direct disable
set events cpu-high mem-low log-full intf-ip vpn-tun-up vpn-tun-down ha-switch ha-hb-failure ips-signature ips-anomaly av-virus av-oversize av-pattern av-fragmented fm-if-change bgp-established bgp-backward-transition ha-member-up ha-member-down ent-conf-change av-conserve av-bypass av-oversize-passed av-oversize-blocked ips-pkg-update ips-fail-open temperature-high voltage-alert power-supply faz-disconnect faz wc-ap-up wc-ap-down fswctl-session-up fswctl-session-down load-balance-real-server-down per-cpu-high dhcp pool-usage ospf-nbr-state-change ospf-virtnbr-state-change
set mib-view ''
set security-level auth-priv
set auth-proto sha
set auth-pwd ENC cGxfbH3wVAmwOeuEfL46uJ8Iv2BkEPMeZdB87OKVoS6uR2MgF0j88rmwqP+q7wOFLNKKN1rkzmDdiEjkIrycuZSVgm/vl8ClS1L9upyUmeDcD0QDMFdfMmv1CA91xfdQlDOV7blqM6fz4vUWamI119WZRkzHi3SwfucoJq4o2NrxPjfi186qVCGONFfzVT6WKnR2yg==
set priv-proto aes
set priv-pwd ENC cGxfbH3wVAmwOeuEfL46uJ8Iv2BkEPMeZdB87OKVoS6uR2MgF0j88rmwqP+q7wOFLNKKN1rkzmDdiEjkIrycuZSVgm/vl8ClS1L9upyUmeDcD0QDMFdfMmv1CA91xfdQlDOV7blqM6fz4vUWamI119WZRkzHi3SwfucoJq4o2NrxPjfi186qVCGONFfzVT6WKnR2yg==
next
end
以下のようにconfig system snmp user
の中にedit
項目があります。edit
項目一つが一つのユーザ設定に該当します。
config system snmp user
edit "shadowgarden"
...
next
end
設定項目が複数ありますが、最低限コミュニティ名とホストアドレスのみ設定し、その他の項目はデフォルトから変えたい場合だけ設定すれば OK です。
以下、各設定項目について説明します。
ユーザ名とステータスの設定
ユーザ名はedit
項目の ID 部分で設定します。ユーザのステータスはset status
で設定します。以下はユーザ名がshadowgarden
でステータスが有効の場合のコンフィグです。
config system snmp user
edit "shadowgarden"
set status enable
next
end
認証と暗号化の設定
まずset security-level
で認証・暗号化の有無を設定します。security-level
の値は以下の何れかにします。
no-auth-no-priv
- 認証と暗号化のいずれも無し
auth-no-priv
- 認証有り、暗号化無し
auth-priv
- 認証と暗号化のいずれも有り
config system snmp user
edit "shadowgarden"
set security-level auth-priv
next
end
認証有りの場合は認証に関わる以下の設定を行います。
set auth-proto
- 認証アルゴリズムを設定
- md5、sha、sha224、sha256、sha384、sha512 から指定
set auth-pwd
- 認証パスワードを設定
認証アルゴリズムを SHA1、認証パスワードを mypassword に設定する場合のコマンドは以下です。
config system snmp user
edit "shadowgarden"
set auth-proto sha
set auth-pwd mypassword
next
end
暗号化有りの場合は暗号化に関わる以下の設定を行います。
set priv-proto
- 暗号化アルゴリズムを設定
- aes、des、aes256、aes256cisco から指定
set priv-pwd
- 暗号化パスワードを設定
暗号化アルゴリズムを AES256、暗号化パスワードを mypassword に設定する場合のコマンドは以下です。
config system snmp user
edit "shadowgarden"
set priv-proto aes256
set priv-pwd mypassword
next
end
ホスト(監視サーバ)の設定
ホストはset notify-hosts
で設定します。複数のホストを設定したい場合は値の部分で半角スペースで複数のアドレスを設定します。
config system snmp user
edit "shadowgarden"
set notify-hosts 10.10.11.20 10.10.11.21
next
end
クエリとトラップの有効・無効設定
set queries
- クエリのステータス設定
set trap-status
- トラップのステータス設定
config system snmp user
edit "shadowgarden"
set queries enable
set trap-status enable
next
end
SNMPイベント(トラップ)の設定
SNMPイベントはset events
で設定します。値として有効化するイベントを半角スペース区切りで指定します。
config system snmp user
edit "shadowgarden"
set events cpu-high mem-low log-full intf-ip vpn-tun-up vpn-tun-down ha-switch ha-hb-failure ips-signature ips-anomaly av-virus av-oversize av-pattern av-fragmented fm-if-change bgp-established bgp-backward-transition ha-member-up ha-member-down ent-conf-change av-conserve av-bypass av-oversize-passed av-oversize-blocked ips-pkg-update ips-fail-open temperature-high voltage-alert power-supply faz-disconnect faz wc-ap-up wc-ap-down fswctl-session-up fswctl-session-down load-balance-real-server-down per-cpu-high dhcp pool-usage ospf-nbr-state-change ospf-virtnbr-state-change
next
end
イベントのリストについては後で記載します。
その他オプションの設定
HA 構成時に SNMP 関連通信の送信元インターフェースを管理インターフェースにして機器別に管理したい場合はset ha-direct enable
を設定します。
config system snmp user
edit "shadowgarden"
set ha-direct enable
next
end
CLI での SNMP v3 設定については以上です。
【参考】SNMP イベント(トラップ)一覧
SNMP イベントを以下に記載します。機種やバージョンによって変わることがありますので参考程度にしてください。
# | GUI 項目名 | CLI 値名 | デフォルト |
---|---|---|---|
1 | CPU負荷の高騰 | cpu-high | enable |
2 | 利用可能なメモリが不足 | mem-low | enable |
3 | 利用可能なログスペースが不足 | log-full | enable |
4 | インターフェースのIPアドレス変更 | intf-ip | enable |
5 | VPNトンネルがアップ | vpn-tun-up | enable |
6 | VPNトンネルがダウン | vpn-tun-down | enable |
7 | HAクラスタのステータスが変化 | ha-switch | enable |
8 | HAハートビートインターフェースの障害 | ha-hb-failure | enable |
9 | IPSがアタックを検知 | ips-signature | enable |
10 | IPSがアノマリを検知 | ips-anomaly | enable |
11 | AVがウイルスを検知 | av-virus | enable |
12 | AVがオーバーサイズファイルを検知 | av-oversize | enable |
13 | AVがパターンに一致するファイルを検知 | av-pattern | enable |
14 | AVが断片化ファイルを検知 | av-fragmented | enable |
15 | インターフェースIPの変更(FMトラップ) | fm-if-change | enable |
16 | 設定変更(FMトラップ) | fm-conf-change | disable |
17 | BGP FSMが Established ステートに移行 | bgp-established | enable |
18 | BGP FSMが高ナンバーから低ナンバーのステートに移行 | bgp-backward-transition | enable |
19 | HAクラスタメンバーがアップ | ha-member-up | enable |
20 | HAクラスタメンバーがダウン | ha-member-down | enable |
21 | エンティティ設定変更(RFC4133) | ent-conf-change | enable |
22 | AVシステムがコンサーブモードへ移行 | av-conserve | enable |
23 | AVバイパスの発生 | av-bypass | enable |
24 | AVがオーバーサイズファイルをパス | av-oversize-passed | enable |
25 | AVがオーバーサイズファイルをブロック | av-oversize-blocked | enable |
26 | IPSパッケージの更新 | ips-pkg-update | enable |
27 | IPSネットワークバッファがフル | ips-fail-open | enable |
28 | snmp-event::temperature-high | temperature-high | enable |
29 | snmp-event::voltage-alert | voltage-alert | enable |
30 | snmp-event::power-supply | power-supply | enable |
31 | FortiAnalyzerから切断 | faz-disconnect | enable |
32 | snmp-event::faz | faz | enable |
33 | APがアップ | wc-ap-up | enable |
34 | APがダウン | wc-ap-down | enable |
35 | FortiSwitchコントローラーセッションがアップ | fswctl-session-up | enable |
36 | FortiSwitchコントローラーセッションがダウン | fswctl-session-down | enable |
37 | ロードバランスリアルサーバがダウン | load-balance-real-server-down | enable |
38 | 新しいデバイスを発見 | device-new | disable |
39 | CPU使用率が高いです。 | per-cpu-high | enable |
40 | DHCPアドレスの制限 | dhcp | enable |
41 | IPプールの利用について | pool-usage | enable |
42 | 仮想OSPF以外のネイバーの状態に変化があった場合、トラップ送信 | ospf-nbr-state-change | enable |
43 | OSPF仮想ネイバーの状態に変化があった場合、トラップを送信 | ospf-virtnbr-state-change | enable |
インターフェースの管理アクセス設定
FortiGate で監視サーバからの SNMP クエリを受け付けるためには、SNMP クエリを受信するインターフェースの管理アクセス設定で SNMP を許可する必要があります。
以下赤枠の SNMP にチェックを入れてください。
CLI で設定する場合は、config system interface
の対象インターフェースの設定内のset allowaccess
でsnmp
を値に含めてください。
config system interface
edit "internal1"
set allowaccess ping https ssh snmp http
next
end
HA 構成時は SNMP 通信の送信元インターフェースに注意
これについては以下の記事にまとめています。
以上です。
【おすすめ】FortiGate の設計構築中なら以下の記事も役立つかもです
- 基礎知識
- HA (冗長構成) 設定
- FortiGate HA モードの Active-Passive と Active-Active の違いを解説します
- FortiGate HA(冗長構成)の概要と設定ガイド【詳しく解説】※note記事
- FortiGate HA 構成時のコンフィグ同期の仕様について解説します
- FortiGate HA 構成時の NTP,Syslog,SNMP 等の送信元インターフェースを解説 [ha-direct 設定]
- FortiGate HA 構成時の仮想 MAC アドレスについて解説します
- FortiGate HA ハートビート送信間隔と障害判定しきい値の設定ガイド
- FortiGate HA 構成時のバックアップ及びリストア実施ガイド
- FortiGate HA 構成でのモニタインターフェースダウン時の通信断時間について解説
- FortiGate HA 構成に関するQ&A 【良くありそうな疑問集】
- VDOM (バーチャルドメイン) 設定
- トランスペアレントモード設定
- システム系設定
- 管理者アカウント設定
- 時刻・NTP 設定
- ロギング・Syslog 送信設定
- SNMP 設定
- DHCP サーバ機能設定
- Proxy サーバ機能設定
- アラートメール送信
- ネットワーク系設定
- インターフェース設定
- ルーティング設定
- DNS 設定
- NAT 及び NAPT 設定
- ファイアウォール系設定
- アドレス設定
- サービス設定
- ファイアウォールポリシー設定
- ゾーンを使用したポリシー設定
- VPN 系設定
- Tips
Amazon アフィリエイトリンク
以下は Amazon アフィリエイトリンクです。インフラエンジニアにそこそこおすすめなアイテムです。
note メンバーシップへの参加もお待ちしています!
【アフィリエイト】おすすめ WordPress テーマ【SWELL】
当サイトでは WordPress テーマとして SWELL を使用しています。以前は無料・高機能テーマとして知られる Cocoon を使用していて Cocoon も使いやすかったのですが、SWELL を使い始めてからは SWELL のほうが圧倒的に使いやすいなと思いました。そして何より読み込み速度が速い。SWELL を使い始めてから、過去の Cocoon のブログを見直したときに「あれ、こんなに表示遅かったっけ?」という感覚になりました。
また SWELL はデフォルトでもオシャレなデザインですが柔軟にカスタマイズすることもでき個性のあるサイトを作成できます。さらにブログパーツや広告タグといった再利用可能なブログの「部品」も作成することができ、ブログ作成効率も高いです。
技術ブログやアフィリエイト等での収益化を見据えたブログの作成に SWELL は最適です。初見では価格が高いなと思うと思いますが、私としては SWELL を採用して良かったしそれ以上の価値があると感じています。
ブログの新設やテーマ変更を考えている人は一度 SWELL を検討してみてください。
以下の画像リンクから詳細な情報を確認できます。
レンタルサーバーを探している人には安定性に定評のあるエックスサーバーをお勧めします。
当サイトもエックスサーバーを使用しています。WordPress のインストールも簡単にできます。
コメント