[index] AT-AR4000S-Cloud リファレンスマニュアル 5.5.5

# UTM / エンティティー定義

UTM機能では各種ルールの条件指定時に下記の要素を使います。

- エンティティー（通信主体）
  ゾーン（任意のネットワーク範囲）、ネットワーク（サブネットの集合）、ホスト（単一アドレスの集合）などMAC/IP/IPv6アドレスの集合として表現可能な情報。
  「ゾーン.ネットワーク.ホスト」の階層構造を持つ。
  ファイアウォール、NAT、Webコントロールの各機能において、送信元、宛先の指定に使う。
  （UTM以外では、QoS、ポリシーベースルーティング、OpenVPNでも使います）
- アプリケーション
  SMTP、SSH、HTTP、IMAPSのように、IPプロトコルタイプ、TCP/UDPポート、ICMPタイプ/コードの組み合わせで表現可能な情報。
  ファイアウォール、NATの各機能において、通信の種類（アプリケーション）を指定するために使う。
  （UTM以外では、QoS、ポリシーベースルーティングでも使います）

従来のファイアウォールでは、ルールの適用対象をインターフェース、アドレス、ポート、プロトコルなどで指定していましたが、本製品ではこれらを抽象化した前記の「エンティティー（通信主体）」と「アプリケーション」で指定します。
次に指定方法の違いをまとめます。

従来の指定方法 | 本製品の指定方法
始点MAC/IP/IPv6アドレス | 送信元エンティティー | エンティティー定義
終点IP/IPv6アドレス | 宛先エンティティー
DSCP値 | アプリケーション定義
IPプロトコル番号
始点TCP/UDPポート番号
終点TCP/UDPポート番号
ICMPタイプ/コード

> Note

> > DSCP値はQoSおよびポリシーベースルーティング（PBR）でのみサポートです。各機能については「トラフィック制御」/「Quality of Service」、「トラフィック制御」/「ポリシーベースルーティング」をご覧ください。

ここでは、エンティティー（通信主体）の定義方法について解説します。
アプリケーションの定義方法については「UTM」/「アプリケーション定義」をご参照ください。
また、設定時にエンティティー定義を利用するファイアウォール、NAT、Webコントロール、QoS、ポリシーベースルーティング、OpenVpnの各機能については、「UTM」/「ファイアウォール」、「UTM」/「NAT」、「UTM」/「Webコントロール」、「トラフィック制御」/「Quality of Service」、「トラフィック制御」/「ポリシーベースルーティング」、「VPN」/「OpenVPN」をご覧ください。
さらに、より具体的なエンティティー定義の例については、「設定例集」をご覧ください。

## エンティティー定義のサンプル

次にエンティティー定義の一例を示します。

- ゾーン public
  - ネットワーク internet
    - ppp0インターフェース側の全IPv4サブネット
    - ppp1インターフェース側の全IPv6サブネット
    - ホスト myself
      - IPv4アドレス：10.1.1.1
    - ホスト vpngw
      - IPv4アドレス：10.2.2.2
- ゾーン dmz
  - ネットワーク servernet
    - IPv4サブネット：172.16.10.0/24
    - IPv6サブネット：2001:db8:1000:10::/64
    - ホスト web
      - IPv4アドレス：172.16.10.1
      - IPv6アドレス：2001:db8:1000:10::1
    - ホスト dns
      - IPv4アドレス：172.16.10.2
      - IPv6アドレス：2001:db8:1000:10::2
    - ホスト mail
      - IPv4アドレス：172.16.10.3
      - IPv6アドレス：2001:db8:1000:10::3
- ゾーン private
  - ネットワーク wired
    - IPv4サブネット：192.168.10.0/24
    - IPv6サブネット：2001:db8:10:10::/64
    - ホスト adminpc
      - IPv4アドレス：192.168.10.254
      - IPv6アドレス：2001:db8:10:10::fe
    - ホスト dbserver
      - IPv4アドレス：192.168.10.2
  - ネットワーク wireless
    - IPv4サブネット192.168.20.0/24
    - IPv6サブネット：2001:db8:10:20::/64
  - ネットワーク branch
    - IPv4サブネット192.168.100.0/24
  - ネットワーク vpn
    - IPv4サブネット192.168.254.0/24

ここでは、UTMが識別すべきネットワークを大きく3つに分け、それぞれにゾーン名「public」、「dmz」、「private」を付けています。
各ゾーンには、サブネットの集合として定義された「ネットワーク」が任意の数所属しており、さらに各ネットワークには、IP/IPv6アドレスの集合として定義された「ホスト」が任意の数所属しています。
このように定義したエンティティーは、ルール設定コマンドの条件指定部において、次のような形式で指定できます。
ゾーン、ネットワーク、ホストの階層構造はピリオド（.）で表します。
■ ゾーン「public」から、ゾーン「dmz」内のネットワーク「servernet」内のホスト「web」への通信

    from public to dmz.servernet.web

■ ゾーン「private」内のネットワーク「wireless」からネットワーク「wired」への通信

    from private.wireless to private.wired

■ ゾーン「private」内のネットワーク「wired」内のホスト「adminpc」から、ゾーン「dmz」への通信

    from private.wired.adminpc to dmz

## エンティティー定義の作成

ファイアウォール、NAT、Webコントロールの各機能では、送信元と宛先の指定に「エンティティー定義」を使います。
そのため、UTM機能の設定にあたっては、最初に必ずエンティティーを定義します。
エンティティーは、最初にトップレベルのゾーン（zone）を作成し、
その下にネットワーク（networkコマンド）と対応するサブネット（ip subnet / ipv6 subnet）を、
さらにその下にホスト（host）と対応するアドレス（mac-address / ip address / ipv6 address）を作成することで定義します。

> Note

> > 有効なゾーンには最低1つのネットワークが存在し、また、該当ネットワークには最低1つのサブネットアドレスを関連付けておく必要があります。

> Note

> > エンティティー定義名（ゾーン、ネットワーク、ホスト定義名）は大文字小文字を区別します。

■ ゾーン「public」と配下のネットワーク「internet」、ホスト「myself」、「vpngw」

    awplus(config)# zone public ↓

    awplus(config-zone)# network internet ↓
    awplus(config-network)# ip subnet 0.0.0.0/0 interface ppp0 ↓
    awplus(config-network)# ipv6 subnet ::/0 interface ppp1 ↓

    awplus(config-network)# host myself ↓
    awplus(config-host)# ip address 10.1.1.1 ↓
    awplus(config-host)# exit ↓

    awplus(config-network)# host vpngw ↓
    awplus(config-host)# ip address 10.2.2.2 ↓
    awplus(config-host)# exit ↓
    awplus(config-network)# exit ↓
    awplus(config-zone)# exit ↓

■ ゾーン「dmz」と配下のネットワーク「servernet」、ホスト「web」、「dns」、「mail」

    awplus(config)# zone dmz ↓

    awplus(config-zone)# network servernet ↓
    awplus(config-network)# ip subnet 172.16.10.0/24 ↓
    awplus(config-network)# ipv6 subnet 2001:db8:1000:10::/64 ↓

    awplus(config-network)# host web ↓
    awplus(config-host)# ip address 172.16.10.1 ↓
    awplus(config-host)# ipv6 address 2001:db8:1000:10::1 ↓
    awplus(config-host)# exit ↓

    awplus(config-network)# host dns ↓
    awplus(config-host)# ip address 172.16.10.2 ↓
    awplus(config-host)# ipv6 address 2001:db8:1000:10::2 ↓
    awplus(config-host)# exit ↓

    awplus(config-network)# host mail ↓
    awplus(config-host)# ip address 172.16.10.3 ↓
    awplus(config-host)# ipv6 address 2001:db8:1000:10::3 ↓
    awplus(config-host)# exit ↓
    awplus(config-network)# exit ↓
    awplus(config-zone)# exit ↓

■ ゾーン「private」と配下のネットワーク「wired」、「wireless」、「branch」、「vpn」、ホスト「adminpc」、「dbserver」

    awplus(config)# zone private ↓

    awplus(config-zone)# network wired ↓
    awplus(config-network)# ip subnet 192.168.10.0/24 ↓
    awplus(config-network)# ipv6 subnet 2001:db8:10:10::/64 ↓

    awplus(config-network)# host adminpc ↓
    awplus(config-host)# ip address 192.168.10.254 ↓
    awplus(config-host)# ipv6 address 2001:db8:10:10::fe ↓
    awplus(config-host)# exit ↓

    awplus(config-network)# host dbserver ↓
    awplus(config-host)# ip address 192.168.10.2 ↓
    awplus(config-host)# exit ↓
    awplus(config-network)# exit ↓

    awplus(config-zone)# network wireless ↓
    awplus(config-network)# ip subnet 192.168.20.0/24 ↓
    awplus(config-network)# ipv6 subnet 2001:db8:10:20::/64 ↓
    awplus(config-network)# exit ↓

    awplus(config-zone)# network branch ↓
    awplus(config-network)# ip subnet 192.168.100.0/24 ↓
    awplus(config-network)# exit ↓

    awplus(config-zone)# network vpn ↓
    awplus(config-network)# ip subnet 192.168.254.0/24 ↓
    awplus(config-network)# exit ↓
    awplus(config-zone)# exit ↓
    awplus(config)#

以下、ゾーン、ネットワーク、ホストの階層順に設定方法を詳述します。

### ゾーン

「ゾーン」は「エンティティー」を構成するトップレベル要素であり、zoneコマンドで作成します。
ゾーンの配下には任意の数の「ネットワーク」（network）を定義することができます。

> Note

> > ゾーン定義名は大文字小文字を区別します。

■ ゾーン定義「private」を作成します。

    awplus(config)# zone private ↓
    awplus(config-zone)#

■ ゾーン定義「private」を削除します。指定したゾーン配下のネットワーク定義、ホスト定義も削除される点に注意してください。

    awplus(config)# no zone private ↓

### ネットワーク

「ネットワーク」は「エンティティー」を構成する第2レベル要素であり、networkコマンド（ゾーンモード）で作成します。
ネットワークは1個以上のIPv4/IPv6サブネットアドレス（＋インターフェース名）と関連付けることで機能するようになります（ip subnet/ipv6 subnet）。
また、「ネットワーク」の配下には任意の数の「ホスト」（host）を定義することができます。

> Note

> > ネットワーク定義名は大文字小文字を区別します。

■ ゾーン「private」配下にネットワーク定義「wired」を作成し、IPv4/IPv6サブネットと関連付けます。ネットワーク定義には最低1個のサブネットアドレスを関連付ける必要があります。

    awplus(config)# zone private ↓
    awplus(config-zone)# network wired ↓
    awplus(config-network)# ip subnet 192.168.10.0/24 ↓
    awplus(config-network)# ipv6 subnet 2001:db8:10:10::/64 ↓

■ ゾーン「private」配下のネットワーク定義「wired」を削除します。指定したネットワーク配下のホスト定義も削除される点に注意してください。

    awplus(config)# zone private ↓
    awplus(config-zone)# no network wired ↓

#### GeoIPによるエンティティー定義

GeoIPのIPアドレスデータベースを使用し、国別ゾーンに割り当てられたIPサブネットをネットワークとして定義することもできます。定義されたエンティティーは、UTMの各種機能やNAT、ポリシーベースルーティングで使用することができます。

> Note

> > 本機能はhttps://www.ipdeny.comが提供する国別IPアドレスデータベースを使用します。なお、本データは正確性、信頼性が保証されるものではありません。

##### 基本設定

GeoIPは、ip subnetコマンド、ipv6 subnetコマンドのdynamic geoipに国名コードを指定することで各エンティティーを定義します。国別ゾーン名は、ISO 3166-1 alpha-2 国名コードの表記に従い指定します。
■ ゾーン「private」内のネットワーク「japan」を定義し、IPアドレスゾーン「jp.zone」のIPv4/IPv6サブネットを関連付ける設定例です。

    awplus(config)# zone private ↓
    awplus(config-zone)# network japan ↓
    awplus(config-network)# ip subnet dynamic geoip JP ↓
    awplus(config-network)# ipv6 subnet dynamic geoip JP ↓

■ 以下のように複数のサブネットを一つのゾーンやネットワークに紐づけることも可能です。

    awplus(config)# zone pacific ↓
    awplus(config-zone)# network fiji ↓
    awplus(config-network)# ip subnet dynamic geoip FJ ↓
    awplus(config-zone)# network samoa ↓
    awplus(config-network)# ip subnet dynamic geoip AS ↓
    awplus(config-network)# ip subnet dynamic geoip WS ↓

> Note

> > 一つのゾーンやネットワークに紐づけるサブネットが増えるに従い、メモリー消費やパフォーマンスに対する影響が大きくなりますのでご注意ください。

> Note

> > 本機能で指定可能なエンティティーは、https://www.ipdeny.comに記載のゾーン名で指定可能な国や地域のみとなります。特定の位置情報を指定することはできません。

■ 定義されたエンティティーはshow entityコマンドで確認できます。

    awplus# show entity ↓
    Zone:        private
     Network:    japan
      Subnet:    xx.xx.xx.xx/x
      Subnet:    xx:xx:xx:xx::/xx

■ geoip update-intervalコマンドを使用し、国別IPアドレスデータベースへの問い合わせ間隔を変更することができます。

    awplus(config)# geoip update-interval weeks 1 ↓

■ データベースへの問い合わせ状況は、show resourceコマンドで確認できます。

    awplus# show resource ↓

### ホスト

「ホスト」は「エンティティー」を構成する第3レベル（最下位）要素であり、hostコマンド（ゾーン・ネットワークモード）で作成します。
ホストは1個以上のMAC/IPv4/IPv6アドレスと関連付けて使用します（mac-address/ip address/ipv6 address）。

> Note

> > ホスト定義名は大文字小文字を区別します。

■ ゾーン「dmz」内のネットワーク「servernet」配下にホスト定義「web」を作成し、IPv4/IPv6アドレスと関連付けます。

    awplus(config)# zone dmz ↓
    awplus(config-zone)# network servernet ↓
    awplus(config-network)# ip subnet 172.16.10.0/24 ↓
    awplus(config-network)# ipv6 subnet 2001:db8:1000:10::/64 ↓
    awplus(config-network)# host web ↓
    awplus(config-host)# ip address 172.16.10.1 ↓
    awplus(config-host)# ipv6 address 2001:db8:1000:10::1 ↓

■ ゾーン「dmz」内のネットワーク「servernet」配下のホスト定義「web」を削除します。

    awplus(config)# zone dmz ↓
    awplus(config-zone)# network servernet ↓
    awplus(config-network)# no host web ↓

#### FQDNによる指定

ホストをIPv4/IPv6アドレスではなく、FQDN（ドメイン名）で指定することも可能です。

> Note

> > FQDN指定のホスト定義は、ファイアウォール、NAT、QoS、ポリシーベースルーティング（PBR）、OpenVPNで使用できます。Webコントロールでは使用できません。

##### 前提条件

ホストをFQDNで指定するためには、次の条件を満たす必要があります。

- DNSリレー機能を併用し、配下の端末と本製品自身の両方がDNSリレーを利用して名前解決を行うよう設定すること。

> Note

> > これらの条件を満たしていない状態でFQDNホスト定義を使用することはサポート対象外です。

そのために最低限必要な設定は次のとおりです。

1. DNSリレー機能を有効にします。これには、ip dns forwardingコマンドを使います。

       awplus(config)# ip dns forwarding ↓

2. DNSキャッシュを有効にします。これには、ip dns forwarding cacheコマンドを使います。

       awplus(config)# ip dns forwarding cache size 1000 ↓

3. 本製品自身が名前を解決するときにも、自身のDNSリレー機能を使用するよう設定します。これには、ip domain-lookupコマンドのvia-relayオプションを使います。

       awplus(config)# ip domain-lookup via-relay ↓

その他、必要に応じて以下の設定を行ってください。

- DNSサーバーアドレスを手動設定する場合は、ip name-serverコマンドで設定します。
  PPPやDHCPでDNSサーバーアドレスを動的に取得している場合は手動設定の必要はありません。
- 配下の端末がDNSサーバーとして本製品（DNSリレー機能）を使用するよう設定します。
  端末のIP設定をDHCPで行っている場合は、DHCPサーバーがDNSサーバーアドレスとして本製品のIPアドレスを通知するよう設定してください。
  本製品のDHCPサーバー機能では、通知するDNSサーバーアドレスはdns-serverコマンドで設定します。

##### FQDNホスト定義

ホストをFQDNで指定するときは、ゾーン・ネットワーク・ホストモードのip address / ipv6 addressコマンドの実行時に、IPv4/IPv6アドレスの代わりに dynamic fqdnパラメーターでFQDNを指定します。
■ たとえば、ホスト定義「appsite」に対応するIPv4/IPv6アドレスとして、FQDN「app.example.com」を指定するには次のようにします。

    awplus(config)# zone public ↓
    awplus(config-zone)# network eth1 ↓
    awplus(config-network)# ip subnet 0.0.0.0/0 ↓
    awplus(config-network)# ipv6 subnet 2000::/3 ↓
    awplus(config-network)# host appsite ↓
    awplus(config-host)# ip address dynamic fqdn app.example.com ↓
    awplus(config-host)# ipv6 address dynamic fqdn app.example.com ↓

> Note

> > ここでは ip subnet、ipv6 subnetの両方のコマンドを使用していますが、実際にはルールで使用したいIPバージョン（IPv4、IPv6）に対応するものだけでかまいません。

この状態で、配下の端末が初めて app.example.com にアクセスするときには次のことが起こります。

1. 端末は app.example.com に対するIPv4/IPv6アドレスを知るため、本製品（DNSリレー機能）に問い合わせます。
2. 本製品はDNSキャッシュに app.example.com のIPv4/IPv6アドレスが登録されていないことを確認した上で、リレー先DNSサーバーに app.example.com のIPv4/IPv6アドレスを問い合わせます。
3. 本製品は、DNSサーバーから取得した app.example.com のIPv4/IPv6アドレスをDNSキャッシュに登録するとともに、FQDNホスト定義のアドレスリストに該当IPv4/IPv6アドレスを追加します。
4. 本製品のUTM機能でFQDNホスト定義が使われている場合、同UTM機能は該当ホスト定義のアドレスリストにもとづいて動作します。

> Note

> > 配下の端末が本製品のDNSリレー機能を使わず、他のDNSサーバーに直接問い合わせを行った場合はアドレスリストが作成されないため、FQDNホスト定義を使ったルールは無効（存在しない）状態になります。

### 設定の確認

エンティティーの設定はshow entityコマンドで確認します。
■ すべてのエンティティーを表示する。

    awplus# show entity ↓
    Zone:        dmz
     Network:    dmz.servernet
      Subnet:    172.16.10.0/24
      Subnet:    2001:db8:1000:10::/64
      Host:      dmz.servernet.dns
       Address:  172.16.10.2
       Address:  2001:db8:1000:10::2
      Host:      dmz.servernet.mail
       Address:  172.16.10.3
       Address:  2001:db8:1000:10::3
      Host:      dmz.servernet.web
       Address:  172.16.10.1
       Address:  2001:db8:1000:10::1

    Zone:        private
     Network:    private.branch
      Subnet:    192.168.100.0/24
     Network:    private.vpn
      Subnet:    192.168.254.0/24
     Network:    private.wired
      Subnet:    192.168.10.0/24
      Subnet:    2001:db8:10:10::/64
      Host:      private.wired.adminpc
       Address:  192.168.10.254
       Address:  2001:db8:10:10::fe
      Host:      private.wired.dbserver
       Address:  192.168.10.2
     Network:    private.wireless
      Subnet:    192.168.20.0/24
      Subnet:    2001:db8:10:20::/64

    Zone:        public
     Network:    public.internet
      Subnet:    0.0.0.0/0 via ppp0
      Subnet:    ::/0 via ppp1
      Host:      public.internet.vpngw
       Address:  10.2.2.2
      Host:      public.internet.myself
       Address:  10.1.1.1

■ エンティティー「private.wired」（ゾーン「private」内のネットワーク「wired」）の情報を表示する。

    awplus# show entity private.wired ↓
    Network:     private.wired
     Subnet:     192.168.10.0/24
     Subnet:     2001:db8:10:10::/64
     Host:       private.wired.adminpc
      Address:   192.168.10.254
      Address:   2001:db8:10:10::fe
     Host:       private.wired.dbserver
      Address:   192.168.10.2

■ エンティティー「dmz.servernet.mail」（ゾーン「dmz」内のネットワーク「servernet」内のホスト「mail」）の情報を表示する。

    awplus# show entity dmz.servernet.mail ↓
    Host:        dmz.servernet.mail
     Address:    172.16.10.3
     Address:    2001:db8:1000:10::3

## エンティティー定義の使用

エンティティー定義は、ファイアウォール、NAT、Webコントロール、QoS、ポリシーベースルーティング（PBR）の各機能でルールを作成するときや、OpenVPNクライアントに経路情報を通知するときに使用できます。

> Note

> > アプリケーション定義名は大文字小文字を区別しませんが、エンティティー定義名（ゾーン、ネットワーク、ホスト定義名）は大文字小文字を区別しますので、ルールで指定するときはエンティティー定義名の大文字小文字を間違えないようにご注意ください。

■ ファイアウォールルールは、ファイアウォールモードのruleコマンドで作成します。
ファイアウォールルールでは、from xxxxで送信元のエンティティーを、to xxxxで宛先のエンティティーを指定します。

    awplus(config)# firewall ↓
    awplus(config-firewall)# rule permit any from private to public ↓
    awplus(config-firewall)# rule permit mydb from private to private.wired.dbserver ↓
    awplus(config-firewall)# rule permit ssh from private.wired.adminpc to dmz.servernet ↓
    awplus(config-firewall)# rule permit http from public to dmz.servernet.web log ↓
    awplus(config-firewall)# rule permit isakmp from public.internet.vpngw to public.internet.myself ↓
    awplus(config-firewall)# rule permit esp from public.internet.vpngw to public.internet.myself ↓

ファイアウォールの詳細については、「UTM」/「ファイアウォール」をご覧ください。
■ NATルールは、NATモードのruleコマンドで作成します。
ダイナミックENATルール（masq）では、from xxxxで送信元のエンティティーを、to xxxxで宛先のエンティティーを指定します。
スタティックENATルール（portfwd）では、from xxxxで送信元のエンティティーを、with dst xxxxで転送先のエンティティーを指定します。

    awplus(config)# nat ↓
    awplus(config-nat)# rule masq any from private to public ↓
    awplus(config-nat)# rule portfwd http from public with dst dmz.servernet.web ↓

NATの詳細については、「UTM」/「NAT」をご覧ください。
■ Webコントロールルールは、Webコントロールモードのruleコマンドで作成します。
Webコントロールルールでは、from xxxxで送信元のエンティティーを指定します。

    awplus(config)# web-control ↓
    awplus(config-web-control)# rule permit Work from private ↓
    awplus(config-web-control)# rule deny Blogs from private ↓
    awplus(config-web-control)# rule deny Chat from private ↓
    awplus(config-web-control)# rule deny "Crime, Weapons" from private ↓

Webコントロールの詳細については、「UTM」/「Webコントロール」をご覧ください。
■ QoSルールは、トラフィックコントロールモードのruleコマンドで作成します。
QoSルールでは、from xxxxで送信元のエンティティーを、to xxxxで宛先のエンティティーを指定します。

    awplus(config)# traffic-control ↓
    awplus(config-tc)# rule match photostorage from private to public.cloud policy MYQOS.LOW.A ↓

QoSの詳細については、「トラフィック制御」/「Quality of Service」をご覧ください。
■ ポリシーベースルーティング（PBR）ルールは、ポリシーベースルーティングモードのip policy-routeコマンド、ipv6 policy-routeコマンドで作成します。
PBRルールでは、from xxxxで送信元のエンティティーを、to xxxxで宛先のエンティティーを指定します。

    awplus(config)# policy-based-routing ↓
    awplus(config-pbr)# ip policy-route match highprio from local.net to remote.net nexthop tunnel0 ↓
    awplus(config-pbr)# ip policy-route match lowprio from local.net to remote.net nexthop tunnel1 ↓

ポリシーベースルーティングの詳細については、「トラフィック制御」/「ポリシーベースルーティング」をご覧ください。
■ エンティティー定義に含まれるサブネット、ホストへの経路をOpenVPNクライアントに通知するときは、tunnel openvpn routeコマンドでOpenVPNトンネルインターフェースとエンティティーを関連付けます。

    awplus(config)# interface tunnel0 ↓
    awplus(config-if)# tunnel mode openvpn tun ↓
    awplus(config-if)# tunnel openvpn route ovpn_routes ↓
    awplus(config-if)# ip address 192.168.254.1/24 ↓

OpenVPNの詳細については、「VPN」/「OpenVPN」をご覧ください。

(C) 2022 - 2025 アライドテレシスホールディングス株式会社

PN: 613-003066 Rev.Q