【香港SIM】中国国内で、AWSサーバにVPN接続してみた
海外出張が発生する関係上、海外から日本のサーバにVPNで接続する必要があるのですが、どうも中国からの接続がうまくいきませんでした。
このソリューションについて書かれているサイトがあまりにも少なくないような気がします。 中国に進出している企業なんてたくさんいるのに。絶対もっと需要ありますよね。
Sophos SSL-VPN Clientを利用して、中国 ←→AWSのVPN接続を検証してみました。
中国は、ご存知の通り国を挙げてネット規制・検閲をしています。 具体的な事例としては、グレートファイアウォールと呼ばれる「壁」を作って、無認可の通信を強制的にシャットアウトしています。
グレートファイアウォールとは
万里の長城(Great Wall)をもじって名付けられた、グレートなファイアウォールのこと。 金盾(きんじゅん)とも呼ばれています。
経緯
以前は別のSSL-VPNクライアントを使用していたのですが、ある日を境に急に使えなくなってしまいました。それが、1年半前のことです。 設定等にも全く変更を加えていなかったので、どうやらグレートファイアウォールの影響らしいということしか分からず、VPN接続できなくてずっと困っていました。
AWSを利用して社内システムを再構築するにあたり、やっぱり中国からも通信できるようにしたい。なんとしてでも中国からのVPN接続を成功させよう!と思いました。
それまでに、国内や他の海外拠点からの接続はうまく行っていました。
海外からもSSL-VPN繋がった☺️
— Meihon@インフラエンジニア (@Engineer_Meihon) 2019年2月8日
やっぱりレイテンシは少し低めだけど、インスタンスタイプ上げてみて様子見かなぁ。設計から構築、テストまで頑張ってよかった。あとはシングルサインオンの仕組みで、ActiveDirectoryのユーザでVPN張れるようにしたいな。 #AWS #VPN #社内SE
VPNクライアントは日本でPC、スマートフォンにインストールしていったので、中国からもできるでしょ!と何も考えずにVPN接続しようとしたところ、失敗。 使用しているSophos SSL-VPNクライアントのログには、以下のような文言が残っていました。
※一部マスクしてます
MANAGEMENT: CMD 'username "Auth" "xxxxx"' MANAGEMENT: CMD 'password [...]' Socket Buffers: R=[65536->65536] S=[65536->65536] MANAGEMENT: >STATE:1550455978,RESOLVE,,,,,, Attempting to establish TCP connection with [AF_INET]xxx.xxx.xxx.xxx:443 [nonblock] MANAGEMENT: >STATE:1550455979,TCP_CONNECT,,,,,, TCP connection established with [AF_INET]xxx.xxx.xxx.xxx:443 TCPv4_CLIENT link local: [undef] TCPv4_CLIENT link remote: [AF_INET]xxx.xxx.xxx.xxx:443 MANAGEMENT: >STATE:1550455980,WAIT,,,,,, Connection reset, restarting [-1]
以後は接続を確立できずにループしています。 ログを読んだことろ、TCPコネクション確立した瞬間、故意にリセットかけられているようでした。
ちなみにSophosのサポートに回避する手立てはないか、ログを送りましたが、答えは「No」とのことでした。 そしてグレートファイアウォールについて書かれた上のサイトを紹介されました。ちくせう。
解決へ
結論からお話すると、VPN接続できてます。できました!
「AWS 中国 VPN」とかで検索すると、ソリューションを提供している企業がいくつかヒットすると思います。 そちらで行っていることは、香港等にあるデータセンターに機器を通信させてから、日本にアクセスするというもの。
それと同じことをすればいいじゃない。という発想で、インターネットの接続を「香港経由」にしてからVPN接続したら繋がりました。 なぜ香港?と思われるかもしれませんが、中国のネット規制において、香港とマカオは対象外となっています。
必要なもの
すること
PCからVPN接続したい場合は、スマートフォンの「ネットワーク共有」をONにして、日本国内と同じようにテザリングすればOKです。
ただ、何も考えずにPCから接続したら30分で通信量が200MB位かかったので、PCに「従量制課金接続」の設定を行っておくことをおすすめします。
「従量制課金接続」とは?
- 毎月のデータ通信量に上限がある場合や、通信量に基づいて課金される接続でデータ通信量を抑制する機能
- Windows 8以降に実装されています
- 設定方法
詳細についてはこちらが詳しく書かれていました。 www.atmarkit.co.jp
最後に
中国政府の意向によっては、いつ通信できなくなってもおかしくないので、ご自身の責任で実施してください。 読んでいただきありがとうございました!