作業環境
- FortiGate 60E
- version 7.0.5
CLI でコンフィグを表示する
FortiGate を設定する際、CLI でコンフィグを表示することが頻繁にあります。
その目的としては以下のようなものがあります。
- 現在の設定値を確認するため
- コンフィグのバックアップやエビデンスとして保存するため
ここでは、CLI でコンフィグを表示する上で役立つ情報を記載します。
show と show full-configuration
コンフィグを表示するコマンドは show
ですが、show
と show full-configuration
の 2 種類があります。
show
- デフォルト値から値が変更されている設定項目のみを表示
show full-configuration
- デフォルト値の項目も含めてすべての設定項目を表示
コンフィグ項目によっては設定項目が非常に多いため、基本的には show
で設定値を表示することが多いかと思いますが、設定値を細かく確認したい場合は show full-configuration
を使うことになります。
現在の階層と show コマンドの出力内容
show
コマンドは、CLI のどの階層において使用するかによって、出力される内容が変わります。
show
コマンドは現在の階層のコンフィグのみを表示します。
CLI にログインした直後の状態(ここではグローバル階層と呼ぶことにします)で show
コマンドを実行すると、FortiGate のすべてのコンフィグが表示されます。
FGT60E # show
#config-version=FGT60E-7.0.5-FW-build0304-220208:opmode=1:vdom=0:user=admin
#conf_file_ver=170643345677100
#buildno=0304
#global_vdom=1
config system global
set admintimeout 100
set alias "FortiGate-60E"
set hostname "FGT60E"
set language japanese
set switch-controller enable
set timezone 60
end
config system accprofile
.
.
.
一方、例えば config system global
階層(config system global
コマンドを実行した状態)で show
コマンドを実行すると、config system global
のコンフィグのみを表示します。
FGT60E # config system global
FGT60E (global) # show
config system global
set admintimeout 100
set alias "FortiGate-60E"
set hostname "FGT60E"
set language japanese
set switch-controller enable
set timezone 60
end
さらに、例えば config system interface
階層の中の edit "wan1"
階層にいる状態で show コマンドを実行すると、config system interface
階層の中の edit "wan1"
階層のコンフィグのみを表示します。
FGT60E # config system interface
FGT60E (interface) # edit wan1
FGT60E (wan1) # show
config system interface
edit "wan1"
set vdom "root"
set mode dhcp
set allowaccess ping https ssh http
set type physical
set role wan
set snmp-index 1
config ipv6
set ip6-send-adv enable
set ip6-other-flag enable
end
next
end
「show
コマンドは現在の階層のコンフィグのみを表示する」という性質から、あるコンフィグ階層で設定変更中に show
コマンドを使って現在の設定値を確認しながら設定変更を行う、といったような活用をすることができます。
コンフィグ項目を指定した show コマンド
show
コマンドでは、以下のような形式でコンフィグ項目を指定して実行することができます。
show <コンフィグ項目名>
<コンフィグ項目名>
にはconfig xxxxx
のうちconfig
を除いたxxxxx
の部分を指定
コンフィグ項目を指定して実行すると、指定したコンフィグ項目のコンフィグのみを表示することができます。
例えば system global
を指定した場合、以下のような出力になります。
FGT60E # show system global
config system global
set admintimeout 100
set alias "FortiGate-60E"
set hostname "FGT60E"
set language japanese
set switch-controller enable
set timezone 60
end
コマンド出力で [–More–] を表示させない
FortiGate のデフォルトの設定では、コマンド出力の行数が多い場合、1ページ分表示されるたびに [--More--
] と表示され、表示が止まります。
[--More--
] が表示された状態での続きの表示方法は以下の通りです。
- Enter を押下 → 次の 1 行を表示
- スペースキーを押下 → 次の 1 ページを表示
例えばグローバル階層で show
コマンドを実行した場合、出力行数が非常に多いため、ひたすらスペースキーを押下しなければなりません。
ここで、FortiGate の設定を変更することでコマンド出力の表示を止めることなく、すべてまとめて表示させるようにすることができます。
コマンド出力をまとめて表示するためには、config system console
内の output
を standard
と設定する。
設定方法は以下のように config system console
内の output
を standard
と設定します。
config system console
set output standard
end
デフォルトでは output
は more
となっています。
config system console
set output more
end
コンフィグ確認を支援するツール
FortiGate のコンフィグは基本的に設定項目が非常に多いです。また、アドレスオブジェクト、ポリシー、スタティックルート、インターフェースなど、オブジェクトが大量になりがちなコンフィグ項目については非常に長いコンフィグになるため、確認が大変です。
当ブログではコンフィグの確認を支援するオリジナルツールを公開しています。
コンフィグを表形式に出力するツール
これはエクセル VBA で作成したツールで、FortiGate のコンフィグを解析して表形式に表示することができます。
例えばポリシー設定を表形式に表示したい場合を考えます。
以下のエクセルシート上で、解析対象のコンフィグファイルと、解析対象のコンフィグ項目を指定し、解析を実行します。

すると、以下のように表形式で各ポリシーの設定値を表示することができます。
※画像クリックで拡大表示できます

このツールは以下のページで公開しています。
コンフィグを Excel シート上で階層別にグループ化するツール
このツールを使用すると、コンフィグを以下画像のようにエクセルシート上で階層別にグループ化することができます。

テキストでコンフィグ確認するよりは確認がしやすいかもしれません。
このツールは以下のページで公開しています。