【FortiGate】URLフィルタで特定URLのみ許可~除外と許可,シンプルとワイルドカード/正規表現の違い~

FortiGateのWebフィルタとURLフィルタ

FortiGate には http/https に特化したフィルタリング機能があります。

「薬物」や「アダルト」などのカテゴリベースでの制御を行いたい場合は『Webフィルタ』という機能を使いますが、URLドメインベースでフィルタリングしたい(例えば yahoo.co.jp ドメインのみ許可したい)、という場合はその中の『Static URL フィルタ』という機能を使えます。

カテゴリベースの制御は『Webフィルタライセンス』が必要ですが、URLベースの制御だけならライセンスは不要です

『Static URL フィルタ』の設定手順

手順としては以下の 2 ステップです。

  1. セキュリティプロファイルの『Webフィルタ』プロファイルでURLフィルタルールを作成
  2. ACL ポリシーの中でURLフィルタリングを行いたいポリシー ( http/https 許可ポリシー) に『Webフィルタ』プロファイルを適用する。

1.セキュリティプロファイルの『Webフィルタ』プロファイル編集

GUI にログインし、『セキュリティプロファイル』の『Webフィルタ』をクリックすると、下図の中央ペインのような画面が表示されます。

上図の通り、『FortiGuardカテゴリーによるフィルタ』をOFFにし、『URLフィルタ』をONにし、『+新規作成』をクリックします。

すると、下図のように新規URLフィルタ登録画面が表示されます。yahoo.co.jp ドメインおよびそのサブドメインを全て許可する場合は以下のように記述し、「OK」を押下します。

その他許可が必要なドメインがあればどんどん追加していきます。最後に『全ての URL をブロック」するルールが必要です。下図ではワイルドカードで「*」としていますが、正規表現で「.*」としても構いません。

そして下図のようになっていることを確認し、『適用』を押下します。

2.ACL ポリシーへ先ほど編集した『Webフィルタ』プロファイルを適用

『IPv4ポリシー』を押下し、Webフィルタを適用したいポリシーの編集画面で、下図のように『Webフィルタ』をONにします。

すると『SSLインスペクション』プロファイルも自動で ON になります。この SSL インスペクションは証明書や SNI による宛先検査をします。これにより https の暗号化通信も URL による検査ができるのです。

上図のようになったことを確認し、『OK』を押下します。

ポリシーも以下のように表示されます。

これで完成です。

動作確認するときは (ブラウザ再起動だけでなく) PC 自体を再起動してから試したほうが確実です。(前のセッションやキャッシュが残っているためか、中途半端な挙動をすることがありました。)

シンプルとワイルドカード/正規表現の違い

ワイルドカードや正規表現はパターンマッチによるドメイン指定で、柔軟性を持つことができます。

例えば example.com や example.org 等のドメインを一律許可したい場合は以下のように記述します。

ワイルドカード:example.*
正規表現:example\..*

一方、シンプルの場合はドメインは完全一致ではあります。ただし、サブドメインについては全て含まれます。例えば以下のように記述した場合、

シンプル:yahoo.co.jp

これだけ記述すれば、yahoo.co.jp だけでなく www.yahoo.co.jp や mail.yahoo.co.jp もこのルールに合致します。ですが、wwwyahoo.co.jp や mailyahoo.co.jp は合致しません。あくまで、yahoo.co.jp ドメインおよびそのサブドメインが対象になります。

もし yahoo.co.jp で終わるドメインおよびサブドメインすべてを合致させたい場合はワイルドカードで

ワイルドカード:*yahoo.co.jp

と記述します。ただ、例えば mailyahoo.co.jp ドメインなどは(空いていれば)個人で簡単に取得できるため、詐欺サイト等に使われやすく、そこへの許可が為される可能性もありますので個人的には推奨できません。

除外(Exempt)と許可の違い

アクションとして『除外(Exempt)』を選択すると、そのURLへの通信は許可され、アンチウィルスや Data Loss Prevention 等のセキュリティ機能を通過させません。これにより負荷を軽減することができます。

一方、『許可』を選択すると、そのURLへの通信はURLフィルタとしては許可されますが、アンチウィルス等のセキュリティチェックが行われますので、その結果にも依ります。

CLI での設定

CLI での config サンプルを以下に示します。

# config webfilter urlfilter
# edit 1
# set name "default"
# config entries
# edit 1
# set url yahoo.co.jp
# set type {simple | regex | wildcard}
# set action allow
# set status {enable | disable}
# end
# end
# end

以上、FortiGate での URL フィルタの使い方でした。

【厳選 4 冊】ネットワークセキュリティを学ぶための本

サイバー攻撃に対抗せよ。UTMを使った企業LANの構築/管理を徹底解説。ファイアウォールやアンチウイルスなどによる防御。拠点間を安全につなぐインターネットVPN。Office365などのクラウド利用に役立つSD‐WAN。FortiOS6対応。ネットワークエンジニア必読!
本書では、セキュリティエンジニアとして押さえておきたい知識や技術などを、体系的に、わかりやすく解説しています。セキュリティ業務に関わる2~3年目のエンジニアはもちろん、一般社員のセキュリティリテラシー向上にも役立つ1冊です。
【想定する読者層】・セキュリティの初学者・ハッカーにあこがれている人・CTFに興味がある人、または参加している人・WindowsとLinuxの混在環境を構築したい人・コンピュータ愛好家・Linux初心者
Windows(ウィンドウズ)、Linux(リナックス)に始まり、現在主流となっているCloud(クラウド)、Phishing(フィッシング)、そして禁断となっている(マルウェア)に至るまで、具体的な最新情報をそれぞれ選りすぐり解説しています。

IT/インフラエンジニアの地位とスキル向上のために

関連記事

IT 技術の進化はとどまることを知りません。矢継ぎ早に新たな技術が出てきたり、数年前の技術が時代遅れになったりと、IT エンジニアは勉強し続ける運命のようです。 それをどう思うかはあなた次第。 ビジネスの基本は『付加価値を与える[…]

IMG
関連記事

nesuke の考える NW エンジニアの2つの道 ネットワークエンジニアには 2 つの道があります。 1 つはネットワーク構築一筋で、L4 までをひたすらきっちりと構築していく道。 もう 1 つはネットワークを軸として深堀し[…]

IMG