HTTP プロキシ経由のみしかインターネットへ出られない環境での Google Cloud IAP の活用

HTTP プロキシ とは

ローカル環境に HTTP プロキシ を設置して、
ローカル環境内にあるパソコンやサーバーの、
すべての HTTP/HTTPS 通信を代理してくれるサーバーです。

昔は HTTP プロキシに貯めたキャッシュを有効に使って WAN 側トラフィック軽減するためでした。
今はインターネットへの出口を1箇所に絞ることで、
セキュリティー監視や管理がしやすくなるメリットとして、
大手のお客様で多く使われています。

セキュリティーとしての HTTP プロキシの利用の場合は、
このプロキシを経由せずにインターネットの外に出られないようにしていることがほとんどです。
ブラウザを使って Webページを見にいったり、
curl アプリケーションなどを使って外部の REST API へリクエストするのは普通にできます。
いわゆるHTTP(ポート80)、HTTPS(ポート443)の通信が HTTP プロキシ 経由で可能になります。

HTTP プロキシ と FileMaker Pro

上記でご紹介したようなローカル環境では、
インターネット上の FileMaker Server へアクセスしたくても、
直接インターネットへ出られないようになっているので、
HTTP プロキシ を経由する必要がでてきます。

しかし、FileMaker Pro が FileMaker Server と通信する場合は、
ポート 5003 番を使って通信しますし、
FileMaker Pro の設定に HTTP プロキシ を経由させる設定はありません。
そのためこれまでは FileMaker Pro を使うのを諦め、
FileMaker WebDirect を使うしかありませんでした。

Google Cloud IAP とは

IAP は Identity-Aware Proxy の略で、
単純に言ってしまうと、Google Cloud 内のリバースプロキシ(踏み台サーバー)です。
昨今 ゼロトラストネットワーク が提唱されるようになり、
VPN による保護よりも簡単(=設定ミスが少ない)で強固にネットワークセキュリティーを高められます。

Cloud IAP はメンテナンスを Google にすべておまかせのフルマネージドサービスなのに、
無料から始められ、ずっと無料でも使い続けられます。
Google Cloud に VPN 接続するぐらいなら、Cloud IAP を使わなきゃ損といえます。

Cloud IAP はゼロトラストネットワーク、
つまりパソコンを出てから、Wi-Fiやローカルネットワーク、危険なインターネット経路、Google Cloud 内に入るまでの経路すべてを SSL 通信で行います。

これを実現するために PC には Cloud IAP のツールをインストールすることで、
どんなプロトコルやポート番号だとしても、
パソコンから出る通信を HTTPSプロトコル にカプセル化し、
Google Cloud 内の Cloud IAP 到達・認証・認可後にカプセル化が解かれ、
本来のサーバーへ本来の通信でリクエストする、
そんな流れになります。

一般的な利用シーンでは、
Google Cloud 内へ外部から直接アクセスできないように VPC ネットワークを構成し、
Cloud IAP からの接続は指定ポートのみ サーバーへアクセスできるようにします。
そうすれば インターネット側に開放するのは危険とされる SSH ポート22 や RDP ポート 3389 を使う場合でも、
Cloud IAP ツール がパソコンから出る通信をすべて HTTPS ポート 443 のセキュアな通信してくれ、
サーバー側ファイヤーウォールに 22 や 3389 などの危険なポートを開けなくて済むようになります。

HTTP プロキシのみインターネットへ接続する環境から FileMaker Pro ポート 5003 通信

Cloud IAP ツールは 22 や 3389 だけでなく、
どんなポート番号でも HTTPS にカプセル化してくれます。
FileMaker Pro ポート番号 5003 であっても同様です。

そのため、ローカル環境に HTTP プロキシ があって FileMaker Pro が外部のサーバーへ接続できない環境でも、
Cloud IAP ツールによって現状のローカル環境に手を加えることなく接続が可能になります!

今回想定している環境では、
社外から Google Cloud 内の FileMaker Server へも直接接続できるようにしたいので、
Google Cloud 内の Gateway からのアクセスはブロックせず接続できるようにしています。
つまり図右の Google Cloud 側だけを見ると、
Cloud IAP の主たる利用シーンから外れ「Cloud IAP 使う意味ないじゃん」なんですけど、
図左の現状のローカル環境に手を加えることなく接続できるようになるのは便利ですよね。

ちなみに、ここまでの話はすべて PC や macOS についてです。
iPhone や iPad の FileMaker Go の ポート 5003 通信を横取りはできないので、
この手法はたぶん無理だと思っています。

KBS クラウド

弊社では Google Cloud を使った FileMaker Server ホスティングサービス を行っております。
ご紹介した Cloud IAP を使い、SSH ポートは常にインターネットから閉じたまま、
弊社の特定 Google アカウントから SSH 接続できるようにしてセキュリティーリスクを軽減しています。

大容量ネットワーク回線、セキュアな環境構築、複数台構成、DR対策、定期監視など、
高品質で安定したサービスを提供中です。

KBS クラウド

 

 

【 余談 】
最近下記リンク先への流入増大したいこともあり、
流入量が多いとブログの価値が高まりますます投稿を加速していきたいと思います。
リンク先を開いていただけると大変助かります。
Claris International Inc. (日本語)
ご協力いただけましたら幸いです。

【 開発者募集中 】
弊社では Claris FileMaker を使った高度な開発力で、モバイルデバイスのビジネス利用を楽しく発展させていく仲間を随時募集しています。
詳しくは採用ページをご覧ください。