nokoのブログ

こちらは暫定のメモ置き場ですので悪しからず

FortiGateコマンド集

はじめに

  • 昔FortiGateを触っていたときのメモをたまたま発掘したので、載せます。

コマンド集

基本コマンド

# シャットダウン
$ execute shutdown
# 再起動
$ execute reboot
# 設定箇所を探す
$ show | grep -f "internal"
# 設定解除
* 引数は項目のみ(Ciscoと違い、値はいらない)
$ unset
# 設定削除
* 依存関係のある設定箇所を洗い出し、下から順番に消していくこと
$ delete
# インターフェース情報確認
$ get system interface physical
# ルーティングテーブル確認
$ get router info routing-table details
# 拡張ping設定
* ping実行前に設定。CUIからログアウトすると解除される。
$ execute ping-options source 192.168.1.10
# ping実行
$ execute ping 192.168.1.20

デバッグコマンド

# pingの確認
# コンソールで確認できるようにする
$ diagnose debug flow show console enable
# プロトコル1番(ICMP)に絞る
$ diagnose debug flow filter proto 1
# 項目数は10とする
$ diagnose debug flow trace start 10
# GUI設定がどのようなコマンドで設定されているか確認
$ diagnose debug cli 7
# リソース状況確認
$ diagnose sys top
# パケットキャプチャ
$ diagnose sniffer packet any "" 6
$ diagnose sniffer packet any 'host 172.16.0.10 and icmp' 1
$ diagnose sniffer packet any "icmp" 1
# トラブルシューティングの流れ
* 接続できないとき
1.インターフェイスはUPしているか(ケーブルつながっている?)
2.ルーティングテーブルは想定通りか
3.ACLは許可されているか
4.その他
    * ユーザ、パスワードは合っているか(半角スペースとかないか)
    * サブネットは揃っているか
    * 戻りの通信は考えているか
    * 既存NW環境がルーティングできる条件が整っているか(送信元nat等)
    * tracert
    * 間にバカハブを挟む
    * ARP確認

設定コマンド

# 設定例
    edit "internal2"
        set vdom "root"
        set ip 192.168.1.10 255.255.255.0
        set allowaccess ping https ssh snmp fgfm radius-acct capwap
        set type physical
        set description "LAN(管理_FALAN)"
        set fortiheartbeat enable
        set snmp-index 6
    next
# WANインターフェイス
* ユーザは、ユーザ名@企業識別子
# nat
# dnat作成
# vip作成
* ポリシー&オブジェクト
* →バーチャルIP
* External:見せるIP(WAN側)
* マップ:紐付けたいIP(LAN側)
# ポリシー設定(忘れないこと)
* ポリシー&オブジェクト
* 宛先を、バーチャルIP

# snat作成
# IPプール作成(1対1だと1サーバしか通信できない)
* プール
* オーバーロード
* 192.168.10.10
# ポリシー設定(忘れないこと)
* 入力:IPsec(内) 出力:internal(外) all all
* NAT
* IPプール
# IPsec
# IPsec設定
* IPアドレス:対向のIP
* 出力IF:トンネルを張っている物理IF
* ローカルアドレス、リモートアドレス:どこからどこのセグメントの通信を暗号化したいか(0.0.0.0/0.0.0.0でいい)
* →トンネル設定後、トンネルインターフェイスの設定が可能になる(このIPを設定すると、Greが通る)

# トラブルシューティング
* まず拡張ping
* pingは失敗するが、upする
* http://docs.fortinet.com/uploaded/files/1881/fortigate-ipsec-52.pdf
# OSPF
# OSPFの設定(概要)
* エリア定義
* →ネットワーク設定
* →ルータID設定

# OSPFの設定(エリア定義)※10進数でエリア0
$ config router ospf
$ config area
$ edit 0.0.0.0
$ end

# OSPFの設定(ネットワーク設定)※プロセスID1
* Gre over IPsec越しのときは、物理IFでなくトンネルIFのIPを指定する
$ config network
$ edit 1
$ set prefix 192.168.10.0 255.255.255.0
$ set area 0.0.0.0
$ end

# OSPFの設定(ルータID変更)
$ config router ospf
$ set router-id 192.168.1.10
$ end

# 確認
$ get router ospf
$ get router info ospf neighbor
$ get router info ospf database router lsa

# トラブルシューティング
$ diagnose ip router ospf all enable
$ diagnose ip router ospf level info
$ diagnose debug enable
$ diagnose debug disable

$ diagnose sniffer packet any "proto 89" 4

$ Get router info ospf status
# PPPoE
# トラブルシューティング
* デフォルトルート0.0.0.0/0.0.0.0は閉域網のデフォゲに持って行かれるので注意(個別にルートを切ること)
$ diag debug application pppoe -1
$ diag debug application ppp -1

# 注意点
* HAで切り替わると、そのタイミングでIPを取得しにいく
# HA
# HA設定
* Fortigateの『起動時の設定』(internal解除まで)(スレーブ)
* →管理ポート、ハートビートポートの設定(マスタ/スレーブ)※CLIでHA管理ポート用のデフォルトゲートウェイを設定すること
* →HAの設定(マスタ/スレーブ)
* →スタティックルートの設定(マスタ/スレーブ)
* →ハートビートインターフェイスをケーブルでつなぐ

# 確認
$ get system ha
$ get system ha status

# マスタ選定基準
* HAを構成する際、どの機器がマスターとなるかは以下の順序で選定されます。
1. リンクアップしているモニタポートの多い機器
2. HAアップタイムの長い機器
3. HAのプライオリティの高い(数値が大きい)機器
4. シリアルNo.の大きい機器

# 解除
* FortiGateの冗長構成を解除する際、WebUIのHA管理画面でクラスタの切断を行うと、
切断したFortiGateのインタフェースのIPとサブネットマスクがすべて0.0.0.0/0.0.0.0となり、WebUIにアクセスする事ができなくなります。そのため、冗長構成の解除を行う場合、HAのモードをスタンドアローンにする事で、インタフェースのIPを消す事無く解除が可能です。

# 手動フェールオーバーしたいとき
* オーバライド無効時は下記のコマンドをマスター側にて実行してください。
* マスター側のHAアップタイムをリセットすることで、手動でのフェールオーバーが実施できます。
$ diagnose sys ha reset-uptime

# マスタからスレーブにログインしたいとき(ID確認⇒ログイン)
$ execute ha manage ?
<id>    please input peer box index.
<0>     Subsidary unit FGT70D6Z16199999
?execute ha manage 0

# Remote link failover
* (参考)http://help.fortinet.com/fos50hlp/54/Content/FortiOS/fortigate-high-availability-52/HA_failoverRemoteLink.htm
* (参考)https://forum.fortinet.com/tm.aspx?m=134527
$ set pingserver-slave-force-reset enable
$ diagnose sys link-monitor status
# VRRP
# VRRP設定
FGT_A#config system interface
FGT_A(interface)#edit internal3
FGT_A(port1)#set vrrp-virtual-mac enable
FGT_A(port1)#config vrrp
FGT_A(vrrp)#edit 1
FGT_A(1)#set priority 200
FGT_A(1)#set vrip 172.16.0.240
FGT_A(1)#end
FGT_A(port1)#end

# fail-detect設定
FGT_A#config system interface
FGT_A(interface)#edit wan1
FGT_A(port1)#set fail-detect enable
FGT_A(port1)#set fail-detect-option link-down
FGT_A(port1)#set fail-alert-interfaces “internal3”
FGT_A(port1)#end

起動時にやること

# GUIアクセス
* 1ポート
* 192.168.1.99
* admin/パスワードなし

# 日本語設定
* システム→設定

# ホスト名変更
* ダッシュボード

# 時間変更
* ダッシュボード

# インターフェイス設定(internal解除)
* インターフェイス→internal→internal1以外をメンバーから外す

おわりに