FortiGateの設計/設定ガイド

FortiGateの設計・設定方法を詳しく書いたサイトです。 FortiGateの基本機能であるFW(ファイアウォール)、IPsec、SSL‐VPN(リモートアクセス)だけでなく、次世代FWとしての機能、セキュリティ機能(アンチウイルス、Webフィルタリング、SPAM対策)、さらにはHA,可視化、レポート設定までも記載します。初期化方法やバージョンアップなどの管理面も書いています。標的型攻撃を守るためのゲートウェイとしても導入されることが多いので、セキュリティ機能に関しては充実した記載を心がけます。

8.1 管理設定

1.FortiGateの要塞化

FortiGateそのもののセキュリティを高める(要塞化)

・パスワードポリシーの強化
 システム > 設定 > パスワードポリシー ここで、最低文字数や大文字小文字などの要件を強化しておく
・送信元IPの制限
 システム > 管理者 にて、管理者の「信頼されるホストにログインを制限」を有効にし、
接続するIPアドレスやセグメントを限定する。
・二要素認証
 システム >  管理者 にて、管理者の「二要素認証」を設定する。emailの場合はCLIから設定する。
 →ログイン時にトークンの入力が求められる
・管理者アカウントを使いまわししない →パスワード管理が雑になることを防ぐ、内部不正を防ぐ、何かあったときの追跡が困難
・管理者ごとに権限を変更する
 システム > 管理者プロファイルにて、利用を許可するプロファイルを決める。そして、「管理者」のところで、プロファイルを適用する
・各IFの設定で、WebUIなどの設定を最低限にする。
 ネットワーク > インターフェース で該当するIFを選択
 管理者アクセスで、許可するサービスをチェックするが、基本的にはLAN(Internal)以外はOFFでいい。pingも通信テスト時以外は不要であろう。

2.FortiManager

1.FortiManegerとは

FortiManegerは複数の FortiGate、FortiAPなどのデバイスを管理する製品です。
とくにポリシーや Version、シグニチャなどの UTM機能で利用するデータベースを共通管理し、運用者にかかる工数を軽減させる手助けを行います。

UTM機能におけるパターン(データーベース)管理が出来ることで、もっとも弱くなるセグメント(拠点、とくに出先、又は取引先)に対し有効なポリシー管理を提供できます。

・FortiManagerのデータシート
https://www.fortinet.co.jp/doc/FortiManager_DS.pdf

2.機能

FortiGateを勉強する女性SE (18) 

画面を一元的に見ることができるだけですね。
だったら、FortiGateに一つ一つログインして確認すればいいと思います。


台数が少なければそれでもいいでしょう。でも、台数が増えると、管理工数が増えますよ!
FortiManagerの代表的な機能を整理すると、以下になります。

①複数のFortiGateを1つの画面で集中管理できる

②複数のFortiGateの設定を一元的に変更できる
 基本全ての設定変更が可能です。

 設定は 
 ・基本設定部分 (DNS、NTP、Log管理など)
 ・Firewall Policy部分(アドレスオブジェクト、グループ、UTMプロファイル等)
 ・VPN設定部分(IPSecVPNのスター構成など)

 上記を一元的に変更したり、各 FortiGateの設定情報の Backupをしたり
 できます。

③設定ファイルやシグネチャの一元配信
 FortiGateから UTMシグニチャの配信を受ける宛先を FortiManagerで
 請け負うことができます。言い換えれば FortiManagerがシグニチャ配信や
 Web、SPAM DBの Proxyをするイメージです。

 例えば、
 ・インターネットアクセスさせない環境下だがシグニチャの配信は受けたい
 ・シグニチャ、パターンファイルの Versionを完全に管理したい
 場合に利用します。

3.導入構成

導入構成は、1台、冗長と様々な形で導入できます。
また製品にはハード(物理)、仮想化(VM版)の両方があります。

これは導入パターンの幅を広げる柔軟性を提供していることを意味します。

※余談ですが Fortinet製品はハード、仮想化と両パターンを提供する製品が多いです。

4.価格

価格については管理デバイス数によりますが、最小 30台を管理するとして、
約 100万円からのスタートになります。

5.管理画面

管理画面は複数のデバイスを管理しやすい GUI構成となっています。
また日本語化されており、とくに FortiGateでは CLI操作で設定する内容をFortiManagerは GUIで全て設定を行うことができます。 

トップ画面)
FortiManager-Top 

3.管理系の設定

1.FortiCloudでの認証エラーの不具合について

FortiCloudで無料アカウントを作成したのですが、すこしトラブったので記載します。

以下にログインおよびアカウント作成のページがあります。
https://login.forticloud.com/servicelist
a













ここでログインに成功するアカウントで、何度FortiGateでログインしてもエラーになりました。
※アカウントはダミー
c
日本専用のJPサーバでのアカウントと、別のようでした。
https://jplogin.forticloud.com/login
b
こちらでログインできるアカウントであれば、無事に成功しました。

2.時刻設定(タイムゾーン、NTP)

時刻設定の方法を解説します。
❶タイムゾーンの設定
 ①「ダッシュボード」「システム情報」から「システム時間」の「変更」をクリックします。
timezone

 ②時刻設定の画面が開きます。
 ここの「タイムゾーン」で「GMT+9:00」を選びます。
time

❷NTPサーバとの時刻同期の設定
 デフォルトで、FortiGateのNTPサーバと同期する設定になっています。
 NTPサーバを手動で設定する場合は、上記画面の「マニュアル設定」で実施します。

❸FortiGate自らをNTPサーバとして動作させる
 上記の「デバイスをローカルNTPサーバとして設定」をクリックする。
ntp
以上

3.管理アクセス(443接続)のポート番号の変更

デフォルトでは管理画面へのWebアクセスは443番である。これを、変更する。たとえば、SSL-VPNによる接続を、FWなどので閉じられている可能性もあるので、443で接続させたりする場合だ。

システム>設定>管理者設定>HTTPSポートで行う。

4.諸々の管理設定

1.WebUIのタイムアウト時間を延ばす

WebUIの画面ですが、しばらくすると自動でログアウトされます。
この時間を延長するには、システム ‐> 設定 項目にある 管理者設定)アイドルタイムアウト の値を変更することで延長することが出来ます。

FortiGate-GUI-TiimeOut

初期値は 5分になっており、5分間経過するとログアウトします。
最大 480分まで延長することが可能です。

2.バージョンアップ

FortiGateのファームウェア―をアップするには

① GUIからの方法
② CLIから TFTP、USBメモリを介する方法

があります。

①の GUIから行う方法が利用頻度が多いと思います。

GUIからアップする方法)
システム->ダッシュボード より、システム情報のウィジット より、
赤枠 「アップデート」 を選択します。

FortiGate-Upgrade2

アップデート選択後、下記 Update Firmware を選択します。

FortiGate-Upgrade3

PCに保存している Firmwareを選択し、ファームアップ処理を行います。
※ファームアップは再起動が実行されることに注意してください。

ファームアップを行う際に、2つの選択ができます。

① ダウングレードを行う場合
② Disk Formatを実行した後、新規にファームをインストーるする

必要に応じて、下記赤枠より選択、実行してください。
FortiGate-Upgrade5

3.インターフェースへの管理アクセスの設定

FortiGateを勉強する女性SE (はてな)
WANインターフェースからもGUIログインはできなのですか?
デフォルトではできません。第三者が不正にログインされるのを防ぐために、LAN側だけで許可しています。
今の設定を見てみましょう。

if

ここにありますように、WAN側では、PingとFMG-Accessしか許可されていません。
一方のLAN側では、HTTPS通信が許可されています。
では、設定の変更方法を解説します。インターフェースを開き、有効にしたいアクセスのチェックボックスを入れるだけです。
access
・FortiTelemetry:FortiClient(エンドポイント制御)のやりとりの通信など
・FMG-Access:FortiManagerにて集中管理したい場合の通信
・CAPWAP:主に無線の集中管理の通信
・RADIUSアカウンティング:RADIUSアカウンティングの通信?

4.telnetの有効化
telnet はコマンドで設定します。
※CLIコンソールでも可能。

FGT # config system interface
FGT (interface) # edit internal

 

FGT (internal) # set allowaccess
ping              PING access.
https             HTTPS access.
ssh               SSH access.
snmp              SNMP access.
http              HTTP access.
telnet            TELNET access.
fgfm              FortiManager access.
auto-ipsec        IPsec auto-configuration.
radius-acct       RADIUS Accounting access.
probe-response    Probe access.
capwap            CAPWAP access.

 

※必要な管理アクセス設定を行います。

 

FGT (internal) # set allowaccess https pign telnet
FGT (internal) # end (これで保存)
 
※参考
セキュリティの観点からSSHが推奨される。そういうのもあって、IFの画面ではTelnetを有効にするチェックボックスが表示されない。CLIから有効にすると、GUIでも表示されるようになる。 
5.REST API

(1)REST API概要
REST APIは、http(またはhttps)プロトコルでFortiGateの管理ができます。GUIだと、ログインしてクリックして遷移してという不便さがありますが、コマンドラインのように一括処理ができるので便利です。

やり方は以下を参照しました。
「システム」>「管理者」のところにREST API管理者というのも設定できるのですが、どうやら関係ないようです。

以下のサイトにまとめがあり、その通りにやればできました。素晴らしい!
https://blog.aimless.jp/archives/2017-04-01-manageing-fortigate-by-rest-api

(2)REST APIの設定手順
❶Adminユーザを作成する。user1/ pass としました。

❷認証情報を取得します。今回、FortiGateのIPアドレスは10.10.10.1です。httpsで接続します。機器はFortiOS6.02です。
Windows10からは標準でcurlコマンドが使えるので便利です。

curl https://10.10.10.1/logincheck --data "username=user1&secretkey=pass" --insecure --dump-header - -c cookie.txt

❸Config情報を取得しました。
以下はFirewallポリシーです。
curl https://10.10.10.1/api/v2/cmdb/firewall/policy -b cookie.txt --insecure

以下、抜粋ですが、json形式でSSHのポリシーが取得できたことを確認できます。マウスでポチポチクリックするより楽ですよね。

  {
      "q_origin_key":3,
      "policyid":3,
      "name":"SSH",
      "uuid":"9f067464-86e4-51ec-a1e5-a1fb0b983925",
      "srcintf":[
        {
          "q_origin_key":"internal",
          "name":"internal"
        }
      ],
      "dstintf":[
        {
          "q_origin_key":"wan1",
          "name":"wan1"
        }
      ],
      "srcaddr":[
        {
          "q_origin_key":"all",
          "name":"all"

5.システム管理者の設定

(1)管理者の設定

・管理者アカウントを使いまわししないようにする。パスワード管理が雑になる。また、不正があったときに、誰がやったかもわからない。ログを見ても、不審なログインを気づけない。

・管理者を作成するときは、必要最低限の権限に限定して作成する。
・管理者プロファイルにprof_adminとsuper_adminがある。どちらもほぼ同じであるが、super_adminだけは、他の管理者のパスワードをリセットできる。

### 読み取り専用ユーザの作成する方法

①システム>管理者プロファイル>新規作成
ここで、名前を付け、与えたい権限をチェックしてプロファイルを作成

②システム>管理者>新規作成
 管理者を作成するが、タイプはローカルでいい。プロファイルを先ほど作成したものを選択する。

→このユーザでログインすると、編集権限などが与えられていない。


### 送信元IPアドレスを限定してログインさせる

システム>管理者にて該当ユーザを選んで編集

信頼されるホストにログインを制限のところに、グローバルIPを入れる。
最大10個まで

(2)ローカルログインの二要素認証

必要なものは、認証の設定情報を送るメールアドレスと、スマホなどに入れたForiTokenのアプリ。
❶メールサーバの設定

アクティベーションコードをメールで送るために、メールサーバの設定が必要である。社内のメールサーバがあればそれを使う。FortiGateのメールサーバを使う方法もある。検証などではこちらがおすすめ。

【方法】Fortigateのメールサーバを利用する

以下のサイトからコピペ

https://www.open-circuit.ne.jp/isp/settei/fortigate-ssl-vpn-email.html

config system email-server
set reply-to "noreply@notification.fortinet.net"
set server "notification.fortinet.net"
set port 465
set security smtps
end

設定の確認は以下
show system email-server

❷管理者の設定

システム > 管理者 から管理者を追加する。その際、Eメールアドレス(トークンにおける Activation Codeを受信するため)を入れ、二要素認証をONにする。無料で2つのトークンが付いてくるので、1つ選び、「アクティベーションコードを送信」でEmailを選ぶ。

❸スマホにて、FortiToken Moblieアプリを入れ、Activation Codeを設定

FortiToken Mobile

FortiToken Mobile

  • Fortinet
  • ビジネス
  • 無料

apps.apple.com

そして、先ほど設定したメールに、以下のようなメッセージとともに、Activation CodeやQRコードが送られてくる。
Welcome to FortiToken Mobile - One-Time-Password software token.
Please visit http://docs.fortinet.com/ftoken.html
for instructions on how to install your FortiToken Mobile application on your
device and activate your token.
You must use FortiToken Mobile version 2 or above to activate this token.
Your Activation Code, which you will need to enter on your device later, is

それを、FortiToken Moblieアプリに入れる。Activation Codeを入れるのはなぜか失敗したが、QRコード読み取りで成功した。

❹ログイン
作成したIDでログインすると、トークンを入れるように指示が出る。スマホのFortiToken Moblieアプリで、コードを入れるとログインが成功する。

その他、トークンの情報は、ユーザ&デバイス>FortiTokenから確認できる。

6.ライセンスやステータス

1.ライセンスやステータスの確認(FOS5.6の場合)

ログイン後の画面でもありますが、「ダッシュボード」の「Main」からライセンスの状態を確認できます。

ライセンス-簡易
※緑のチェックはライセンスが有効。破線は、ライセンスが無効を意味します。

ステータスの詳細を見るには、「システム」「FortiGuard」から確認をします。
ライセンス-詳細1
以下がその画面です。
ここで、ライセンスの状態に加えて、ライセンスの有効期限、各バージョン情報を確認できます。
ライセンス-詳細2
CLIの場合以下でもバージョン情報を確認できる。
FGT # diagnose autoupdate versions
FortiGateを勉強する女性SE (21)

バージョンの更新日は分かりますか?
上記において、バージョンにマウスを近づけると、更新日がわかります。

2.ライセンス情報の確認(FOS5.4の場合)

「ダッシュボード」「ライセンス情報」から確認できます。
license











各項目で緑のチェックマークだと、契約期間内を意味し、
赤のマークだと、契約をしていない・契約が切れている事を意味します。

3.ライセンスの登録

FortiGateで確認できるライセンス情報は大きく分けて、

・サポート契約(ハード・ソフト)
・FortiGuard(UTMライセンス)

の2種類があります。

① サポート契約(ハード・ソフト)で FortiGateのサポート契約の状況を確認できます。
  ※OSの VersionUP権利であったり故障したハード交換の権利です。

② FortiGuard(UTMライセンス)の UTM機能が利用できる状態かを確認できます。

またライセンスの登録作業はご購入される時点で、必要な登録を済ませた状態になります。

7.出力メッセージの編集

ここではユーザーにブロック、検知、認証等のメッセージないしブラウザ上に
表示されるメッセージの編集方法について説明します。

メッセージは 設定 > 警告メッセ―ジ で編集できます。

Fortigate-message1

編集画面で 「イメージのアップロード」、簡易、拡張表示を選択することで詳細なメッセージの内容を
確認することができます。

※完成図書が必要な際はこの画面キャプチャで作業を終えることができるかもしれません。

拡張表示への変更は以下で行います。
Fortigate-message2

メッセージの編集例)
HTTPプロトコルでウィルスを検知した際に出力されるメッセージに日本語を追加した例です。
黄色のマーカーラインが追記した文字列です。
Fortigate-message3

メッセージフォーマットを編集すると、表示画面もリアルに変換されます。

このメッセージ内容を編集することで多言語のメッセージを出力させることも可能です。

8.IPSやAVの更新状況

1.IPSやAVの更新状況

先に解説した通りで、ステータスの詳細を見るには、「システム」「FortiGuard」から確認をします。
ライセンスの状態に加え、ライセンスの有効期限、各バージョン情報を確認できます。

2.インターフェース(IF)の状態

「ネットワーク」「インターフェース」を選択します。すると、以下のように、FortiGateのイメージが表示されます。
同時にポートも表示されます。
インターフェース-1

ココで、グリーンは UPしている状態を示します。
FortiGateのイメージから各ポートにマウスをドラッグすると、Up状態、Speed状態を示す windowsが出力します。
インターフェース-2

9.Configの保存とリストア

1.Configの保存とリストア(FOS 5.6)

❶Configの保存
画面右上の「admin」のプルダウンから「設定」「バックアップ」を選択します。
・スコープは、全体のConfigを保存するのか、現在のVDOMのConfigを保存するかを選択します。
・バックアップ先をどこにするかを選択します。
・暗号化はConfigファイルの中身を暗号化するか。

OKでConfigファイルを保存します。

55







❷Configのリストア
画面右上の「admin」のプルダウンから「設定」「リストア」を選択します。
・Fileの「アップロード」でConfigファイルを選択し、OKを押します。
58









2.Configの保存とリストア(FOS5.4)

❶バックアップ
・ダッシュボード > システム情報 を開き、「システム設定」の「バックアップ」 
backup

・「システム設定をバックアップ」の画面が開きます。
backup2
・「暗号化」をクリックすると「パスワード」入力が求められます。ファイルの暗号化もされます。
・「OK」を押すと、保存されます。
backup3

❷リストア
・上記と同じ画面の「リストア」ボタンからリストアができます。
・「システム設定リストア」の画面が開きます。
restore
・Fileの「アップロード」を押してファイルを選択し、「OK」を押します。
・「確認」画面が出ますので、OKを押すとリストアが始まり、システムが再起動されます。
restore2