Alibaba CloudのVPN Gateway(SSL-VPN)を試してみる

Alibaba CloudのVPN GatewayサービスでSSL-VPN接続をやってみる。

https://www.alibabacloud.com/ja/product/vpn-gateway

https://www.alibabacloud.com/help/ja/vpn/product-overview/what-is-vpn-gateway

# SSL-VPN

## まずはVPCを作成する

※ 既存のVPCを使う場合は読み飛ばしてください。

![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/5495bf16-48e6-72af-bf87-959efd9fd73f.png)

![2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/a6829f36-6d43-7264-1314-53471cf20895.png)

## 次にVPN Gatewayを作成する

![3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/47a4b82b-3eec-c475-5756-bb044a061b2a.png)

リージョンやVPC, VSwitchを選択し「今すぐ購入」へ。

![4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/dc2c1ede-b065-3887-212b-4f0096f807ed.png)

※ IPsec-VPNが不要の場合はDisableを選んでください

確定前に料金を明示してくれるのはとてもいい。

![5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/440fd63d-a073-f399-3211-6531c0d0f595.png)

作成完了

![6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/80a2ccb0-fa3a-bfb0-1c2a-11f93c610e09.png)

![7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/372fe69a-3e05-f0f2-6958-654b88eb5fd5.png)

## SSLサーバーを作成する

SSL-VPNを利用する場合はこちらを作成する。

必要な情報を入力してOK。

![8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/54a58305-3f82-5ee5-72a0-c7bca205072c.png)

作成完了

![9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/47e8908d-dc00-edeb-9ced-a51d7afc0e87.png)

## SSLクライアント(証明書)を作成する

ここで接続するために必要なクライアント証明書を作成する。

名前を入力してリソースグループとサーバーを選択するだけでOK。

![10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/043279d0-076b-bd9b-155e-7f03e50cc59b.png)

作成されたら「証明書のダウンロード」をクリックすることでcerts.zipが落ちてくる。

![11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/a516c63e-9b69-729d-e1e8-9ec48e5b8288.png)

# macOSからSSL-VPNで接続してみる

macOSのOpenVPNクライアントとしてTunnelblickが使える。

[Tunnelblick | Free open source OpenVPN VPN client server software for macOS](https://tunnelblick.net/)

`brew install --cask tunnelblick` でインストールし、先ほどダウンロードしたcerts.zipを解凍した中にあるconfig.ovpnを開けばあっという間に接続できてしまう。

![12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/ca347428-968c-8ba0-0bf6-b4fcccce316f.png)

SSLサーバーの一覧では接続数が1/5になっている。

![13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/4371517b-9b47-3c3c-860e-0d983f09114a.png)

各SSLサーバーのページで送受信トラフィックやステータス、接続元など詳細を確認できる。

![14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804814/c0323b3c-363f-24a3-63ba-07533f4cc84b.png)

デプロイ済みのECSへssh接続してみたら難なく繋がった。

```bash
% ssh root@10.0.0.120
The authenticity of host '10.0.0.120 (10.0.0.120)' can't be established.
ED25519 key fingerprint is SHA256:GoLlFX/GurKHH8h3nbkHyYnpIOL2tHgU1ElQ+CbCIME.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '10.0.0.120' (ED25519) to the list of known hosts.
root@10.0.0.120's password: 

Welcome to Alibaba Cloud Elastic Compute Service !

[root@xxxxxxxxxxxxxxxxxxxxxxx ~]# 
```

# おわりに

VPN Gateway作成から実際に接続してみるまで短時間ですんなり完了できてしまったのは驚きだった。

普段はAzureばかり利用しているので、このあたりAlibaba Cloudのほうがわかりやすくてとっつきやすいなという印象を持った。

次回、チャンスがあればIPsec-VPNでの拠点間接続も試してみようと思う。