
関連するソリューション

セキュリティサービス

セキュリティ製品
サイバー・セキュリティ・ソリューション(CSS)部
エバンジェリスト 内山 史一
こんにちは。サイバー・セキュリティ・ソリューション部エバンジェリストの内山です。
前回
【エバンジェリスト・ボイス】柔軟な働き方を支える、エンドポイントセキュリティとは
にて、テレワークのような柔軟な働き方を実現するための一要素として、最近のエンドポイントセキュリティ(
NGAV+EDR
)をご紹介しました。
今回は、テレワーク環境にはなくてはならない
リモートアクセス
をテーマに取り上げようと思います。
リモートアクセスの方式には幾つかありますが、本社やデータセンターに配置した
VPN
機器を経由し、社内リソースにアクセスする方式が主流ではないかと思っています。
この
VPN
機器を経由したリモートアクセスには幾つか課題があるのはご存知でしょうか。
リモートアクセス
VPN
は今の時代にマッチしているのだろうか
クラウドの積極的な活用、そしてモバイル端末を活用したテレワークが浸透しつつあります。
特に新型コロナウイルスの対応により、平日の業務を自宅で行うことが推奨されるようになりました。
これにより、リモートアクセス
VPN
の利用ユーザー数が増加し、情報システム担当者にとって、パフォーマンスやユーザーエクスペリエンスの面で頭を悩ます事態が生じることもあろうかと思います。
ここで、リモートアクセス
VPN
の課題を整理してみましょう。
図
1
:リモートアクセス
VPN
の課題
リモートアクセス
VPN
には、大きく分けて
「パフォーマンス」 「セキュリティ」 「複雑さとコスト」
に課題があります。
【パフォーマンス面の課題】
例えば、リモートユーザーがクラウドにアクセスするトラフィックは、
VPN
機器を経由して本社もしくはデータセンター内のセキュリティスタックで検査された後にインターネットへルーティングされ、クラウドから同様のルートを経てリモートユーザーに戻ってきます。
クラウドへのアクセスルートが遠回りしてしまっていると言えますが、このようなネットワークトラフィックの非効率性と、増加するリモートユーザーによって、レイテンシ(遅延)が発生しやすい状況にあると考えられます。
【セキュリティ面の課題】
VPNによってリモートユーザーまで企業ネットワークが延伸されました。
VPN経由で内部ネットワークに接続されたリモートユーザーは、自身の権限において自由に社内リソースにアクセスできる便利な環境です。
でも、マルウェア(
WannaCry
等)に感染した
PC
を
VPN
経由で内部ネットワークに接続した場合、この便利な環境は一変してラテラルムーブメント(水平展開)が可能な環境になってしまいます。
リモートユーザーの増加と相まって、攻撃者にとってはアタックサーフェス(攻撃対象可能な領域)が拡大している状況にあると言えます。
また、少し横道に逸れてしまいますが、国内において
VPN
機器の脆弱性を狙った攻撃通信が観測されていること
[1][2]
、新型コロナウイルス対策を受けて、攻撃者が組織の脆弱性を探る動きが活発化される懸念がありますので、今一度、自組織の対策状況
[3]
を見直してみるべきでしょう。
【複雑さとコストの課題】
リモートユーザーの接続規模やレイテンシによっては、
VPN
機器の負荷分散や故障対策を考慮した構成にする必要がでてきますので、ネットワーク構成の複雑さとコストや管理リソースの増大が見込まれます。
また、
VPN
機器は導入して終わりではなく、前述のような脆弱性を解消するアップデート対応といった保守メンテナンス作業をなくすことができず管理負荷がかかります。
前述のような課題を解消することが、クラウドの積極的な活用をより促し、働く環境の柔軟性の維持・拡張につながっていくことでしょう。
個人の考えではありますが、パフォーマンスやセキュリティ、そしてユーザーエクスペリエンスの面で、リモートアクセス
VPN
は今の時代にそぐわない部分があり、そこが今後ますます無視できなくなると考えています。
シンプルにパフォーマンスとセキュリティを実現する一つの解
では、どうすれば良いのでしょうか。
このパフォーマンスとセキュリティを実現する一つの解があります。
今回、ご紹介するのは
Cloudflare Access
[4]
というソリューションです。
Cloudflare はご存知の方もいらっしゃると思いますが、コンテンツデリバリネットワークや
DDoS
攻撃対策等のインターネットセキュリティサービス、そして
DNS
サービス
(1.1.1.1)
[5]
を提供する企業です。
フリーミアムモデルの提供サービスが特徴的ですね。
さて、
Cloudflare Access
ですが、一言で言えばオンプレミスや
IaaS
の社内リソースに対し、
VPN
を利用せずにどこからでも安全なアクセスを実現するソリューションです。
昨今、「ゼロトラストセキュリティ」というキーワードが脚光を浴びていますが、この
Cloudflare Access
は企業や組織の「ゼロトラストセキュリティ」を実現するための一つの手段になりうるものです。
図
2
:
VPN
に代わり社内リソースにアクセスするアプローチ
では、図
3
をもとに
Cloudflare Access
の仕組みを見ていきましょう。
図
3
:
Cloudflare Access
の仕組み
1.リクエスト
リモートユーザーが
Cloudflare Access
で保護された社内リソースの
URL
へブラウザでアクセスします。クライアント
PC
にはエージェントは不要です。(後述の
RDP
接続にはエージェントが必要)
2.IDプロバイダー認証
リモートユーザーが選択した
ID
プロバイダーで認証します。自分のメールアドレス宛に
One-Time Pin
を発行する
OTP
認証も選択することができます。
3.識別と認可
認証が成功すると、
ID
プロバイダーはアクセストークンを発行し
Cloudflare
へ共有します。
Cloudflare
は、アクセストークンを使用しユーザー情報(メールアドレス、名前など)を取得します。次に
Cloudflare Access
は、ポリシーを適用しリモートユーザーのリクエストを許可するか判定します。
4.リクエストの中継
リクエストが許可されると、
Cloudflare Access
はリバースプロキシとして社内リソースにリクエストをリダイレクトします。リモートユーザーのリクエストが社内リソースへ到達します。
ここでリモートアクセス
VPN
の課題がどのように解消されているか、
Cloudflare Access
のメリットを以下のとおり整理してみました。
【パフォーマンスの向上】
・
Cloudflare
を経由したダイレクトなアクセスになりシンプルなネットワークが実現
・
Cloudflare
の分散ネットワークとインテリジェントなルーティングにより、ユーザーのパフォーマンスが向上
【セキュリティの強化】
・ユーザーが社内ネットワークに接続することなく、社内リソースへアクセス
・ラテラルムーブメントによる他の社内リソースへのアクセスを排除
・ポリシー制御により許可されたユーザーだけが社内リソースへアクセス
・社内リソースを
Cloudflare Access
の背後に配置し攻撃者から隠蔽
・複雑なネットワークセグメンテーションを必要とせず、社内リソース単位のセグメンテーションが可能
【複雑さとコストの解消】
・リモートアクセス
VPN
の代用とすることで
VPN
機器のコストを削減
・
VPN
機器の利用を必要最小限に縮小し、オンプレミスの管理コストを抑制
ポイントは自組織で所有・管理する
VPN
機器やインバウンドのセキュリティスタックの機能を、スケールする
CLoudflare
の分散ネットワーク基盤に任せることによって、コストを削減しつつパフォーマンスやセキュリティの向上を図ることにあります。
如何でしょうか。
Cloudflare Access
がリモートアクセス
VPN
の代替手段になりうることがご理解いただけたかと思います。
社内リソースへシンプルに、そしてスマートにアクセスしてみる
それでは、
Cludflare Access
を使って社内リースへ如何に簡単にアクセスできるか見ていきましょう。
シンプルかつスマートをイメージしてもらうには
Web
アプリケーションへのリモートアクセスが最適なのですが、本稿では社内ネットワークにある
Windows
ホストへの
RDP
接続を例に挙げて紹介します。
まず、必要なものは
Cloudflare
のアカウントとドメインです。
ドメインは新規で取得するか、既存ドメインを
Cloudflare
の
DNS
に権限移譲します。
本稿ではドメインを
Cloudflare
の
DNS
に権限移譲しサイト登録が終わっていること、ならびに
Argo Smart Routing
[6]
が有効化されている前提でお話しを進めていきます。
それでは、
Cloudflare
のダッシュボードにログインします。
図
4
のダッシュボードは英語表示ですが、日本語表示もありますので英語に不慣れな方にも安心です。
図
4
:
Cloudflare
ダッシュボード
ダッシュボード上部の
[Access]
をクリックし、
Windows
ホストにリモートアクセスするためのポリシーを作成します。
図
5
:
Access Policy
の作成
図
5
では
[Outside office] Group
の
Everyone
を許可にしていますが、
e-mail
や
IP
レンジ等で制御することも可能です。
次に、リモートアクセス先の
Windows
ホストにて、
Cloudflare
のサイトから
Cloudflared
をダウンロードします。
[7]
Cloudflaredは、この
Windows
ホストが
Argo Tunnel
を使って
Cloudflare
ネットワークにセキュアに接続するためのサービス(またはデーモン)です。
Argo Tunnel は、
Windows
ホストとの通信を暗号化し、外部の攻撃から安全に保護するためのトンネルです。
図
6
:ダウンロードした
cloudflared.exe
Windowsホストにて、以下コマンドを実行し
Argo Tunnel
を起動します。
図
7
:
Argo Tunnel
の起動
ブラウザが立ち上がってきますので、
Cloudflare
にログインします。
ブラウザが自動で立ち上らない場合、図
7
のコマンドラインにある
URL
をブラウザにコピーして起動します。
Cloudflareにログイン後、
Argo Tunnel
を接続するドメインを選択します。
図
8
:
Argo Tunnel
に接続するドメインの選択
[Authorize] をクリックし、
Argo Tunnel
の接続承認を行います。
図
9
:
Argo Tunnel
の接続承認
リモートサクセス先の
Windows
ホストに
Argo Tunnel
の証明書がダウンロードされますので、
C:\Users\
ユーザー名
\.cloudflared
に格納します。
図
10
:
Argo Tunnel
の証明書
都度、
Argo Tunnel
を起動するのも手間ですので、
Cloudflared
の自動起動を行います。
以下コマンドを実行し、
Cloudflared
のサービスをインストールします。
図
11
:
Cloudflared
のインストール
以下コマンドを実行し、インストールしたサービスを起動します。
図
12
:
Cloudflared
のサービス起動
サービスの自動起動が終わりましたので、以下コマンドで
Argo Tunnel
を起動します。
今回は
Windows
ホストへ
RDP
接続しますので、
RDP
の標準ポート
3389
を指定します。
(
RDP
ポートを変更している場合、変更したポートをコマンドで指定します。)
図
13
:
Argo Tunnel
の起動
複数の冗長化されたトンネルが
Cloudflare
ネットワークに接続されました。
さて、ここからはリモートアクセスするクライアント
PC
の準備です。
まずは、リモートアクセス先の
Windows
ホストと同様、
Cloudflare
のサイトから
Cloudflared
をダウンロードします。
以下コマンドを実行し、
Cloudflare
に接続します。
コマンドでは
localhost:2020
と指定していますが、ポートは任意のもので構いません。
図
14
:
Argo Tunnel
の
Cloudflare
ネットワークへの接続
コマンドを実行すると、クライアント
PC
は
localhost
で指定したポート
2020
で
listen
状態になります。
それでは、いよいよ
Windows
ホストに
RDP
接続します。
リモートデスクトップを起動し、クライアント
PC
の
localhost
のポート
2020
を指定し
[
接続
]
をクリックすると、リモートアクセス先の
3389
へポートフォワードされます。
図
15
:
RDP
接続
ブラウザが起動し、
ID
プロバイダーの選択画面が表示されます。
今回は
One-Time Pin
の認証を選択します。
One-Time Pin 発行先に自分の
email
を指定し、
[Send me a code
→]をクリックします。
図
16
:
ID
プロバイダーの選択
なお、既存の
ID
プロバイダーを活用し、
CLoudflare
ネットワークで認証を行うこともできます。
Google、
G Suite
、
Facebook
、
Okta
、
Onelogin
、
AzureAD
等、主要
ID
プロバイダーをサポートしています。
即座に
One-Time Pin
が発行され、メールで送られてきますので、メールにある
One-Time Pin
をコピーして、認証画面に貼り付けて
[Sign in]
をクリックします。
図
17
:
ID
プロバイダーの認証
ブラウザが起動し、
One-Time Pin
による認証が成功したことを示す画面が表示されます。
このブラウザ画面自体は閉じてもリモートアクセス先の
Windows
ホストの認証に影響はありません。
図
18
:認証成功の通知
上記ブラウザ画面の表示と同時に、リモートアクセス先の
Windows
ホストから認証を求められるので、資格情報を入力し認証を行います。
図
19
:リモートホストの資格情報入力
リモートアクセス先の
Windows
ホストに
RDP
接続ができました。
リモートデスクトップ起動後、体感的に全くストレスを感じることなく、高速かつ安全に
Windows
ホストにアクセスすることができました。
図
20
:リモートホストのデスクトップ
一般ユーザーが社内リソースへ
RDP
接続することは殆どないかもしれませんが、実運用では一般ユーザーがクライアント
PC
でコマンドを実行しなくても済むようにショートカット化するといった工夫が必要でしょう。
本稿では
RDP
接続を例にご紹介しましたが、
Cloudflare Access
経由で社内
Web
アプリケーションにアクセスする際が、最も利便性とユーザーエクスペリエンスの高いアクセスを実感できると思います。
社内
Web
アプリケーションの場合、クライアント
PC
に
Cloudflared
をインストールする必要がなく、ブラウザのみで高速かつ安全なアクセスができます。
図
21
:
Access App Launch
ちなみに、このようなAccess App Launch もあり、これをブラウザの
bookmark
に登録しておくことで、ブラウザからスマートに社内
Web
アプリケーションにアクセスすることもでき、とても便利です。
他にも、
SMB
経由でのファイル共有、
SSH
や任意のプロトコルでも社内リソースへ安全にアクセスすることができます。
本質的な課題を解決する手段として
昨今の情勢でテレワークのリモートユーザーが多くなり、リモートアクセス
VPN
経由による社内リソース(オンプレミス、仮想インフラ、クラウド)へのアクセスに不満を感じる方も多くいらっしゃるでしょう。
本稿では、
Cloudflare Access
を紹介しましたが、これはあくまでも一つの手段です。
リモートアクセスを通じて実現したい目的に対し、本質的な課題を解決する手段としてソリューションを選択して頂きたいと思います。
そのソリューションとして、本稿でご案内した
Cloudflare Access
を選択し、パフォーマンスとセキュリティの良さを実感いただけると幸いです。
それでは、次のエントリーでお会いしましょう!
------------
脚注および参考情報
[1]
JPCERT/CC:複数の
SSL VPN
製品の脆弱性に関する注意喚起
[2] JPCERT/CC: Pulse Connect Secure の脆弱性を狙った攻撃事案
[3] Cybersecurity and Infrastructure Security Agency: Enterprise VPN Security
[4] Cloudflare: Cloudflare Access
[6] Argo Smart Routing
Cloudflare のプライベートネットワークを使用し、混雑の回避と信頼性の高いパスでルーティングをすることにより、ネットワーク配信の高速化を図る
[7]
Cloudflare:
cloudflared
のバイナリ・パッケージの格納先
当サイトの内容、テキスト、画像等の転載・転記・使用する場合は問い合わせよりご連絡下さい。
エバンジェリストによるコラムやセミナー情報、
IDグループからのお知らせなどをメルマガでお届けしています。