Ansible:FortiGate 用モジュール検証結果まとめ

ネットワーク

Ansible の FortiGate 用モジュールについて、FortiGate のベース機能に関するものは大体検証できたのでその結果をまとめます。

前提

作業環境

■ Ansible 側

  • CentOS 8.0
  • Python 3.7.7
  • Ansible 2.9.6

■ FortiGate 側

  • 型番:FortiGate 60E
  • バージョン:v6.0.6 または v6.0.9

その他

  • モジュールは httpapi を使用して実行する

検証結果一覧

項番モジュール設定内容結果
(※)
未解決問題関連
記事
1fortios_system_globalグローバル設定変更OKリンク
2fortios_system_admin管理者アカウント追加/変更OKリンク
3管理者アカウント削除OKリンク
4管理者アカウントパスワードNGパスワード変更不可リンク
5fortios_system_accprofile管理者プロファイル追加/変更OKリンク
6管理者プロファイル削除OKリンク
7fortios_system_ntpNTP同期設定追加/変更OKリンク
8NTP同期設定無効OKリンク
9NTPサーバモード設定変更NG受付インターフェース設定不可リンク
10fortios_system_dnsDNSサーバ設定追加/変更/削除OKリンク
11fortios_system_dhcp_serverDHCPサーバ設定NGip_range 設定不可
12fortios_system_snmp_sysinfoエージェント有効/無効OKリンク
13fortios_system_snmp_communityコミュニティ設定追加/変更events が一つしか指定できないリンク
14コミュニティ設定削除OKリンク
15fortios_router_staticスタティックルート追加/変更OKリンク
16スタティックルート削除OKリンク
17fortios_system_interface物理インターフェース変更allowaccess を空にできない
18VLANインターフェース追加/変更allowaccess を空にできない
19VLANインターフェース削除OK
20fortios_ststen_zoneゾーン追加NG所属インターフェース設定不可
21ゾーン削除OK
22fortios_log_eventfilterイベントログ有効/無効OKリンク
23fortios_log_settingローカルトラフィックログ
有効/無効
OKリンク
24fortios_log_syslogd_settingSyslogサーバ有効/変更OKリンク
25Syslogサーバ無効OKリンク
26fortios_log_syslogd_filterSyslogサーバロギング
フィルタ変更
OKリンク
27fortios_log_memory_settingメモリロギング有効/無効OKリンク
28fortios_log_memory_filterメモリロギングフィルタ変更OKリンク
29fortios_firewall_addressアドレス追加/変更(ipmask)OKリンク
30アドレス追加/変更(iprange)OKリンク
31アドレス追加/変更(fqdn)OKリンク
32アドレス削除OKリンク
33fortios_firewall_addrgrpアドレスグループ追加/変更OKリンク
34アドレスグループ削除OKリンク
35fortios_firewall_service_customサービス追加/変更(tcp/udp/sctp)OKリンク
36サービス削除OKリンク
37fortios_firewall_service_groupサービスグループ追加/変更OKリンク
38サービスグループ削除OKリンク
39fortios_firewall_policyポリシー追加/変更(nat無し)OKポリシー名に “/” を使えない
FortiOS v6.0.9でOK
リンク
40ポリシー追加/変更(nat有り)
41ポリシー削除OKリンク
42fortios_firewall_DoS_policyDoSポリシー追加/変更OK
43DoSポリシー削除OK
44fortios_system_haHA スタンドアロン設定OK
45HA a-p 設定OK
46HA a-a 設定OK
47fortios_system_link_monitorリンクモニタ追加/変更OKリンク
48リンクモニタ削除OKリンク
(※) OK:問題なし、NG:重大な問題あり、△:一部を除き使える、未:未検証

使用してみてわかった点

  • FortiGate のコンフィグ項目(第1階層)ごとにモジュールが用意されている
    • 現状すべてのコンフィグ項目がカバーされているわけではないがベース機能については大体カバーされている
  • モジュールのパラメータと FortiGate のコンフィグ設定項目(第2階層以降)が大体は一対一対応している
    • フルコンフィグで設定項目が多数あるコンフィグ項目についてはモジュールのパラメータも多数になっている
    • モジュールのパラメータ名は FortiGate の設定項目とほぼ同じだがハイフン「-」はアンダースコア「_」になっている
  • FortiGate のオブジェクトを新規作成する場合、Playbook で明示的に指定していない設定項目の値は FortiGate の仕様上のデフォルト値になる
    • デフォルト値で良ければ最低限のパラメータを指定するだけで良い
  • 大体のモジュールについてパラメータが多数あるが、Playbook でどこまで明示的に指定するかは状況によって判断する必要がありそう
  • Ansible 実行結果表示について
    • 設定変更操作については結果的に変更が無くても changed になった
    • オブジェクト削除操作については削除対象が存在しない場合は ok になった

―――――――――――――

タイトルとURLをコピーしました