Zscalerで始めるリモートワーク

目次

  1. はじめに
  2. Zscalerとは
  3. アクセス機能
    3.1. ZPA(Zscaler Private Access)
     3.1.1. 概要
     3.1.2. 構成イメージ
     3.1.3. 通信経路
    3.2. ZIA(Zscaler Internet Access)
     3.2.1. 概要
     3.2.2. 構成イメージ
     3.2.3. 通信経路
    3.3. ZIAの接続元IP固定化
     3.3.1. 概要
     3.3.2. 構成イメージ
     3.3.3. 通信経路
  4. 必要な設定事項
    4.1. ZPAの設定
    4.2. ZIAの設定
    4.3. ZIAの送信元IP固定化の設定
  5. 運用上の注意点
  6. まとめ

1. はじめに

お久しぶりです。今回再び記事を書かせていただくMKです。

近年、ゼロトラストという言葉をよく聞くようになったと思います。

ゼロトラストとは、「何も信頼しない」ことが前提のセキュリティモデルです。

従来のセキュリティは社内外を分けて、社内であれば安全という考え方でした。

しかし、近年のクラウドサービスの普及やリモートワークの拡大により、社内外の境界が曖昧になってきており、その境界を意識しない新たなセキュリティモデルが必要となりました。

今回はそのゼロトラスト下のリモートワークを推進するためにZscalerというサービスを導入しました。Zscalerの機能について、簡単な概要と社内で利用している構成や、運用する上で苦労した点等を踏まえてご紹介します。

2. Zscalerとは

Zscalerは、米国Zscaler社が提供する、ゼロトラストの基盤となる様々な機能を備えたセキュリティプラットフォームのサービスです。

アプリケーションへのセキュアなアクセスや、ウイルス対策・URLフィルタリング等の脅威対策、データ保護、トラフィックやログ分析によるリスク管理等が利用できます。

Y2Sでは主に、リモートワークで使用するプライベートアクセスとインターネットアクセス機能を利用しています。

Entra ID等の組織管理サービスと連携でき、社内では利用者となるユーザ・グループをEntra IDと同期させて管理しています。

今回は、Y2Sで導入したアクセス管理機能についてご紹介します。

3. アクセス機能

3.1. ZPA(Zscaler Private Access)

3.1.1. 概要

ZPAは、社内で管理するサーバやサービスに接続するための、VPNに代わる新しいリモートアクセス方法です。

脆弱性のあるVPN機器を不要とし、アプリケーションのIPを端末上で取得せずに直接接続することで安全で効率的にリモートアクセスが可能です

そして、ネットワークを公開せず、ユーザごとにアプリケーションへの許可を制御することでゼロトラストを実現できます。

利用には、利用者人数分のZPAライセンスとApp Connectorを構築できるサーバ1台以上(AWS,Azure等のクラウドでも可能)、ZPAコンソールでの細かい設定が必要です。

また、利用者側では利用端末へのClient Connectorの導入が必要です

3.1.2. 構成イメージ

ZPAの社内で利用している構成は以下の通りです

ZPAを使用するためには、上記構成図に記されたいくつかの構成要素が必要です

各要素について説明します。

  1. Client Connector
    Zscalerを利用する端末にインストールするエージェントアプリケーション
    Zscalerクラウドを介してインターネットやプライベートのアプリケーションへのアクセスやセキュリティ保護、監視等を行う
  2. ZPA
    ZPAに設定されたアプリケーションセグメント・サーバーグループにて、プライベートアクセスをするために必要となる接続先のIP・ドメイン設定情報を定義
    この設定内容に従い、どのアプリケーションに対してどのような通信を行うか決定する
  3. App Connector
    アプリケーションに接続するために必要となる、社内に設置するプロキシのような役割のサーバ
    アプリケーションにはApp Connectorに紐づいたプライベートIPが使用される
    必要CPU・メモリの条件を満たしたLinuxサーバにApp Connectorサービスを導入することで利用可能となる
  4. トンネル
    端末からApp Connector間に確立されるTLSトンネル
    端末からZPAに対して及び、App ConnectorからZPAに対しての2か所においてアウトバウンド通信のみで確立しているため、従来のVPN装置と異なりApp Connector側でインバウンド通信を許可する必要がない

3.1.3. 通信経路

通信経路は、以下の通りです。

  1. 利用端末に導入されたクライアントコネクタ(ZCC)が接続先をチェックし、ZPAのセグメントに該当する場合、通信をZPAまでトンネルを確立して転送する
  2. ZPAが最適なApp Connectorを選定して、App Connectorとの間にトンネルを確立して転送する
  3. App ConnectorのプライベートIPを使用して、社内の接続先アプリケーションへアクセスする

これにより、利用者の端末にZscaler Client Connector(ZCC)を導入し、
ZPAでIPやドメイン等のアプリケーションセグメントを設定することで、端末からセグメントに含まれる接続先への通信を安全に転送します。

3.2. ZIA(Zscaler Internet Access)

3.2.1. 概要

ZIAは、インターネット・SaaS等へのアクセスを安全で快適に利用するためのサービスです。

URLフィルタリングやウイルス対策等のセキュリティを利用できる他、世界各地に存在するZscalerのサービスエッジを経由することで離れた場所でも快適にアクセスすることができます。

3.2.2. 構成イメージ

ZIAの社内で利用している構成は以下の通りです。

ZIAを使用するためには、ZPA同様Client Connectorの導入が必要ですが、App Connectorは使用しません。そのため、インターネットアクセスのみの利用であれば専用サーバーの構築は不要です。

ここでの構成要素について、ZPAで触れたClient Connectorは省いて説明します。

  1. ZIA
    ZIAによるアクセスに対し、URLフィルタリングや転送ルール、セキュリティ対策等様々な設定を追加できる
    通信は世界各地に配置されたサービスエッジのパブリックIPが使用される

3.2.3. 通信経路

通信経路は、以下の通りです。

  1. 利用端末に導入されたクライアントコネクタ(ZCC)が接続先をチェックし、インターネット公開ドメインもしくはZPAのアプリケーションセグメントでプライベートアクセスをする設定に該当しない場合、通信をZIAまでトンネルを確立して転送する
  2. ZIAのパブリックIPから接続先サービスに対しインターネットアクセスする

これにより、利用者の端末にZscaler Client Connector(ZCC)を導入し、
ZIA及びZPAで転送ルールやフィルタリングを設定した上で、社外のサービスに対して安全に接続できます。

しかし、ZIAを利用する上で、目に見える問題が挙がります。

一般的なSaaSには、接続元IPを制限するような設定が組み込まれています。

ZIAではサービスエッジのIPを経由して接続しますが、そのIPは範囲が広く、SaaS側の制御で穴あけすることは推奨されません。

その問題を解決するために、接続元のIPを固定化する方法を紹介します。

3.3. ZIAの接続元IP固定

3.3.1. 概要

インターネットアクセスの接続元IPを固定化することで、IP制限されたサービスにアクセスすることができます。

実装方式は3通りあり、社内の環境とコストを考慮して選定します。

  1. 顧客が管理する専用IPを利用(SIPA)
    App Connectorを介したソースIPアンカリング機能による固定化方式
    App Connectorに紐づけられた顧客が所有するグローバルIPを使用する
  2. Zscalerが管理する専用IPを利用(DedicatedIP)
    グローバルIPを所有していなくとも、Zscalerの所有するグローバルIPを使用できる固定化方式
    Zscalerが所有するApp Connectorに紐づけられたグローバルIPを使用する
  3. Zscalerから払い出されたIPを利用(Egress NAT)
    ZIAが組織専用のIPアドレスを割り当てる方式
    App Connectorの管理が不要で、Zscalerの所有IPでも顧客所有のIPでも利用可能

※③のEgress NAT方式は2025年にリリースされたばかりの機能であるため、Y2Sで固定化を実装した当時は検討できませんでした。

Y2SではグローバルIPに紐づけられたApp Connectorを所有していたこと、また様々な既存サービスで所有するグローバルIPの許可設定をしていたことから、そのIPをそのまま利用することが最適と判断し、①のSIPA方式を選定しました。

3.3.2. 構成イメージ

IP固定化を利用した際のZIAの構成は以下の通りです。

IP固定化機能を利用するに当たり、ZIAとZPAの両方が必要ですが、構成要素はあまり変わりません。

条件として、各要素に下記の設定が必要です。

  1. ZIA
    IPを固定化したいアプリケーションの通信を、ZPAゲートウェイに転送するようなポリシー設定が必要
  2. ZPA
    ZIAからの通信をApp Connectorに転送するためのZPAゲートウェイと転送ポリシー設定が必要
    また、Application Segmentにて、IP固定化する該当セグメントのIP固定化機能を有効にする
  3. App Connector
    グローバルIPが紐づいていること

3.3.3. 通信経路

通信の流れは、以下の通りです。

  1. 利用端末に導入されたクライアントコネクタ(ZCC)が接続先をチェックし、ZIAに転送された通信から接続先セグメントがIP固定化を有効にされたものであるか識別する
  2. IP固定化対象である場合、転送ポリシーに従いZPAゲートウェイに転送する
  3. ZPAゲートウェイがZIAから転送された通信をApp Connectorに転送する
  4. App ConnectorのグローバルIPを使用して、接続先のサービスへアクセスする

これにより、利用者の端末にZscaler Client Connector(ZCC)を導入し、
ZIA及びZPAで転送ルールやフィルタリングを設定した上で、社外のサービスに対して安全に接続できます。

4. 必要な設定事項

本稿では詳細な設定手順までは記載しませんが、どのような設定項目が必要か、またどのような設定をするとリモートアクセスを実現できるかについて概要を説明します。

4.1. ZPAの設定

ZPAによるプライベートアクセスを実現するには、ZPAコンソールにて下記の設定が必要です。

① Servers/Server Groups

Serversでは、接続先となるアプリケーションをホストするサーバを定義します。

各サーバには名前とIPもしくはFQDNを指定します。

Server Groupsでは、Serversのグループを作成します。

どのサーバがどのApp Connectorを利用するか等を指定します。

アプリケーションセグメントを構成する際に、アプリケーションをホストするサーバが含まれるサーバグループの登録が必要です。特定のサーバを指定する必要のないアプリケーションの場合は、サーバグループのみの作成でよいです。

② Application Segments/Segment Group

アプリケーションの接続方法を定義します。

1つ以上のアプリケーションのIPまたはドメインと、接続で使用するポート、Server GroupsとSegment Groupを指定します。

Segment Groupでは、Application Segmentsのグループを作成します。

③ Access Policy

接続の許可/拒否とその条件を定義します。

許可/拒否のポリシー選択と、どのApplication Segments/Segments Groupsに所属しているか、どの組織に所属しているか等の条件を指定できます。

4.2. ZIAの設定

ZIAによるインターネットアクセスは、デフォルトの設定でも利用できますが、接続先の制御をするには下記の設定が必要です。

① URL/クラウドアプリケーションコントロール

接続を制限したいURLやアプリケーションを設定します。

② ファイアウォールコントロール

接続ルールを定義します。

指定したポート、IP、ドメインのみを許可することができます。

4.3. ZIA送信元IP固定化の設定

送信元IP固定化を適用した通信を行うには、ZPA,ZIA両方の設定が必要です。

ZPA:
ZPAのプライベートアクセスで設定する内容と被るため、追加で必要な設定のみ記載します。
ZPAの設定をベースにZIAと連携する設定を加えるイメージです。

① Application Segments

Source IP Anchor機能を有効にします。

② Access Policy

アプリケーションセグメントの接続先がIPかFQDNかで設定が異なります。
 (1) IPの場合:許可条件に対象セグメントとZIAサービスエッジを指定
 (2) FQDNの場合:許可条件に対象セグメントを指定

③ Client Forwarding Policy

アプリケーションセグメントの接続先がIPかFQDNかで設定が異なります。
IPの場合:許可条件に対象セグメントを指定し、アクセスポリシーで許可された通信のみ転送する
FQDNの場合:下記2つ
 (1) ZIAから転送されていて、対象セグメントを指定した条件でZPAへ転送する
 (2) クライアントコネクタから連想されていて、対象セグメントを指定した条件でZPAをバイパスする

ZIA:

① Zscaler Private Access

1つ以上のサーバグループとアプリケーションセグメントを含んだZPAゲートウェイを作成します。

② 転送コントロール

転送方法にZPAを指定し、宛先にアプリケーションセグメントとZPAゲートウェイを指定します。

5. 運用上の注意点

Zscalerを導入し、社内で運用していく上で苦労した点を注意点として記します。

セグメント設定の管理

まず、ライセンスによってはアプリケーションセグメント数に20という制限があります。

Zscalerの導入にあたり、しっかりとした設計を組む前に、試験的に少しずつ設定を加えていく方式で導入しました。

そのため、接続先のサービス毎にセグメントを導入していったのですが、運用していく上で次々と新しい接続先を追加していくため、すぐに20の制限に達することとなってしまいました。

そこで設計を見直し、接続先ごとにグループ分けを行い、セグメント数を抑えることになりました。

そのため、セグメントをどのような基準でグループ分けするか定義してからセグメント設計をして実装することを推奨します。

ちなみにY2Sでは、現在は踏み台用、M365サービス用、ファイルサーバ用等、大まかな用途ごとに分けていますが、IP固定化を実装したことで固定化の有無を考慮したセグメント分けが必要となりました。

そのため、再度グループ分け設計を見直すつもりです。

※現在Y2S所有のライセンスではその制限はありませんが、管理の煩雑さからどちらにせよグループ設計は見直します。

6. まとめ

以上、Zscalerによるリモートワーク環境構築のご紹介でした。

VPNを使用してリモートワークをしている方や、リモートワーク環境が整っていない方には、手っ取り早く安全な環境を整えられる有用なサービスかと思います。

また、VPN機器やファイアウォール機器等を管理する必要が無く、管理面でも手間を減らすことができます。

今回はプライベートアクセス、インターネットアクセスに焦点を当てて説明しましたが、

実際には単純なアクセス制御以外にも、セキュリティやログ分析等様々な機能があります。

弊社でもまだまだ試行錯誤の段階ですので、新たな機能を導入した際にはまたご紹介できればと思います。

リモートワーク環境を整えたいという方は、是非ともZscalerの導入を検討してみてはいかがでしょうか。