SORACOM Canal を使用して閉域網で接続する
はじめに
SORACOM Canal (以下、Canal)は、お客様のシステムと SORACOM プラットフォームをクラウドの機能を利用してプライベート接続するサービスです。 Canal が現在サポートするクラウドのプライベート接続機能は Amazon Web Services(AWS) の VPC ピアリング接続と Transit Gateway 接続です。
Canal は SORACOM VPG(Virtual Private Gateway) Type-F を利用します。 VPG は SORACOM Air の通信を仲介するお客様専用のゲートウェイとして SORACOM の管理する Amazon VPC(Virtual Private Cloud) に構築され、 Canal はその VPC とお客様の AWS 環境を接続します。 Canal の通信はインターネットを経由することなく、 IoT デバイスからお客様のシステムまでセキュアなネットワークを構築します。
VPG の詳細は、 VPG 開発者ガイドを参照してください。
Canal と接続できるお客様の AWS 環境の AWS リージョンは以下の通りです。
Canal の利用を開始するステップは、以下の通りです。(当ガイドも以下のステップでご紹介します。)
- ステップ 1: [AWS の設定] VPC および EC2インスタンスを作成する
- ステップ 2: [SORACOM と AWS の設定] VPG を作成し Canal を構成する
- ステップ 3: Canal 経由でプライベート接続する
- ステップ 4: SORACOM Canal の利用を終了する
- [参考] Canalの料金体系
当ガイドの前提は以下のとおりです。
- SORACOM のアカウントをお持ちであること
- SORACOM Air の SIM(IoT SIM)、および使用できるデバイス、スマートフォンをお持ちであること
- AWSのアカウントをお持ちであること
ステップ 1: VPC および EC2 インスタンスを作成する
ここでは、VPCとEC2インスタンス(図の赤の点線部分)を作成します。
お客様が作成した既存の VPC を利用する場合、その CIDR ( IP アドレス空間)は以下の範囲内である必要があります (一部を除き、RFC 1918の "Private Address Space" 準拠となります)。
-
10.0.0.0/8
( 日本カバレッジでは10.21.0.0/16
のアドレス空間を除く) -
172.16.0.0/12
-
192.168.0.0/16
VPC を作成する
AWS にログインし、AWS マネジメントコンソールから「VPC」を選択します。(東京リージョンを選択してください。)
以下のような VPC ダッシュボードが表示されます。「VPC ウィザードの開始」をクリックしてください。
次の「VPC 設定の選択」では、「1個のパブリックサブネットを持つ VPC」を選択します。
IP CIDR ブロック、VPC 名、パブリックサブネットの設定を行います。
ここでは、VPC 名を「Canal-Test」、その他の設定はデフォルトとしています。「VPC の作成」をクリックします。
以下のような VPC が作成されました。
次に、VPC にインターネットゲートウェイを接続します。
VPC を選択し、画面下部に表示される「概要」からルートテーブルをクリックします。
ルートテーブルに「0.0.0.0/0」のターゲットにインターネットゲートウェイ (igw-xxxxxx) を指定します。
EC2 インスタンスを作成する
次に、作成した VPC 内に EC2 インスタンスを作成します。(当ガイドでは、Canal を経由して閉域網で接続するデバイスは、この EC2 インスタンスにアクセスします。)
AWS マネジメントコンソールから EC2 を選択し、「インスタンス起動」をクリックしてください。
「Amazon マシンイメージ(AMI)」では、Amanzon Linux 2 を選択します。
インスタンスタイプを選択します。当ガイドでは、t2.micro や t2.nano で十分です。「次の手順:インスタンスの詳細の設定」をクリックします。
「ステップ 3:インスタンスの詳細の設定」では、「ネットワーク」に先ほど作成した VPC (当ガイドでは「Canal-Test」)を選択します。また、当インスタンスにインターネットから SSH でログインして、セットアップを行いますので、「自動割り当てパブリック IP」を有効にします。
インスタンスのプライマリ IP を設定します。(ここでは、「10.0.0.254」としています。)
「ステップ 4:ストレージの追加」はデフォルト、「ステップ 5:タグの追加」では、インスタンスの名前をつけます。(ここでは、「canal-test-server」としています。)
次の「ステップ 6:セキュリティグループの設定」では、HTTP ポートを追加します。
「確認と作成」をクリックします。
インスタンス作成時に以下のように、「既存のキーペアを選択するか、新しいキーペアを作成します。」というウィンドウが表示されます。当キーファイルを使用して、インスタンスにSSH接続します。
既存のキーがある場合は、それを選択します。ない場合は新しいキーペアを作成し、キーペアをダウンロードします。
次に、インスタンスに接続して、Apache をインストールします。
作成したインスタンス)を選択して、「接続」をクリックします。接続用のコマンドが表示されますので、SSH 等でログインしてください。(OSX ではターミナル、Windows では Tera Term などを使用してください。)
ここでは、以下のコマンドから SSH でログインします。
$ ssh -i "xxx-dev01.pem" ec2-user@ec2-52-196-xxx-xxx.ap-northeast-1.compute.amazonaws.com
ログイン後、以下のコマンドを実行して、Apache をインストールします。
$ sudo yum install httpd
次に以下のコマンドを実行して、Apache を起動します。
$ sudo service httpd start
PC のブラウザを起動して、アクセスしてみましょう。
SSH でのログインに使用したドメイン(例えば、ec2-52-196-xxx-xxx.ap-northeast-1.compute.amazonaws.com)でアクセスします。
Apache にアクセスできました。
ここでは、グローバル IP アドレスで EC2 にアクセスしていますが、Canal をセットアップすることで、プライベートアドレスでアクセスできるようになります。
以上で、「ステップ 1: VPC および EC2インスタンスを作成する」は完了です。
ステップ 2: VPG を作成し Canal を構成する
ここでは VPG を作成し、Canal のVPCピアリング接続を構成します(以下の赤の点線部分)。お客様が作成した Transit Gateway と接続する手順はSORACOM Canal Transit Gateway 接続の構成を参照してください。
VPG の作成
SORACOM のユーザーコンソールにログインします。
画面左上部のプルダウンメニューから「VPG」を選択します。
「VPG を追加」をクリックします。
VPG の名前を入力し、タイプは「Type-F」を選択します。
- インターネットゲートウェイを使う」は、 VPG がインターネットへのルーティングを行うか、それともピアリング先のみにルーティングするかの設定となります。「インターネットゲートウェイを使う」を OFF にした場合は、インターネットアクセスを許可しない完全閉域網となります。ここでは、インタネットゲートウェイを ON にします。
- 「Type-C/D」でもこれまでどおり「SORACOM Gate Canal (VPC ピアリング接続) 」をご利用いただけます。「SORACOM Gate Canal (Transit Gateway 接続) 」をご利用いただく場合は「Type-F」を選択いただく必要があります。
- 上記は日本カバレッジで VPG を作成する手順です。グローバルカバレッジで VPG を作成する場合はランデブーポイントを指定できます。詳細は Virtual Private Gateway : 設定方法 > 「VPG ランデブーポイント」を参照ください。
「作成」をクリックすると、以下のように「状態」が「作成中」となります。
しばらく(3分程度)して、「実行中」となれば作成完了です。
次に、「ステップ1」で作成した VPC にピア接続を設定します。
ピア接続の設定には、以下の情報が必要となります。
- AWS のアカウント番号
- 接続先の VPC ID
- VPC の アドレスレンジ (CIDR)
AWS のアカウント番号は、AWS マネジメントコンソールの右上にある「サポート」→「サポートセンター」をクリックし、表示されるサポートセンターの右上で確認できます。
VPC ID と VPC のアドレスレンジ(VPC CIDR)は AWS マネジメントコンソールから VPC ダッシュボードの「VPC」で一覧から確認できます。
VPC ピア接続の設定
では、ピア接続を設定します。
先ほど作成した VPG を選択します。
「基本設定」→「VPC ピア接続」から「追加」をクリックします。
以下の情報を入力して、「作成」をクリックします。
この操作で、ステップ1で作成した VPC に SORACOM からピア接続がリクエストされています。
VPC ピアリング接続の受諾とネットワークの設定
ここでは、「ステップ 1: VPC および EC2 インスタンスを作成する」で作成した VPC で、ピアリング接続を受諾し、ネットワークの設定(ルートテーブルの設定)を行います。
AWS のマネジメントコンソールから VPC ダッシュボードに移り、「VPC ピアリング」を選択します。
ピアリング接続のリクエストのうち、「リクエスタ VPC 所有者」が以下のリクエストが SORACOM Canal によるピアリング接続です。(カバレッジタイプごとに異なります : ご参考 カバレッジタイプとは何ですか? )
-
日本カバレッジの場合:
762707677580
-
グローバルカバレッジの場合:
950858143650
また、ここでピアリング接続の「説明」タブに記載されている「リクエスタ VPC CIDR」をメモしておきます。後ほどルートテーブルの設定で使用します。
当該のピアリングを選択して、「アクション」から「リクエストの承認」を選択してください。
以下のようなウィンドウが表示されますので、「ルートテーブルを今すぐ変更」を選択し、ルートテーブルを変更します。
インスタンスが含まれるルートテーブルを選択し、 「送信先」に先ほどメモした「リクエスタ VPC CIDR」 (利用する VPG の IP アドレス空間) 、ターゲットに受諾したピアリング接続(pcx-xxxxxx)を指定します。当ガイドの手順で作成した場合、「1個のパブリックサブネットを持つ VPC」を作成しているので、「明示的に関連付けられた」サブネットが「1 サブネット」と表示されているルートテーブルになります。
以上で、「ステップ 2: VPG を作成し Canal を構成する」を完了しました。
ステップ 3: 閉域網で接続する
いよいよ、Canal を通じて、閉域網の接続を行います。
以下の手順で接続します。
- グループを作成し VPG を設定する
- IoT SIM をグループに所属させる
- IoT SIM からプライベートアドレスでアクセスします。
グループを作成し VPG を設定する
SORACOM ユーザーコンソールの左上のプルダウンメニューより「グループ」を選択します。
「追加」をクリックして、グループ名を入力し、グループを作成します。
作成したグループをクリックしグループ画面の「基本設定」から「SORACOM Air 設定」を開きます。
「SORACOM Air 設定」内に、以下のように「VPG (Virtual Private Gateway) 設定」がありますので、「ON」とし、ステップ2で作成した「VPG」を選択します。
「保存」をクリックします。
VPG を指定したグループに含まれる IoT SIM は VPG を利用することになります。
IoT SIM の所属するグループを切り替えることで、同じ IoT SIM であっても VPG を利用する/しないを切り替えることができます。これにより、閉域網接続の可否を切り替えることができます。
IoT SIM をグループに所属させる
「SIM 管理」メニューから、接続を行う SIM を選択し、「所属グループ変更」をクリックします。
先ほど作成したグループに所属させます。
オンラインの SIM の所属グループを変更した場合は、いったんその SIM をオフラインにしてから再度接続しなおします。
セッション切断・再接続を行うまで設定が反映されません。
- スマートフォンの場合、Air Plane (機内) モードの On/Off を行うと、簡単に再接続の操作ができ、新しい設定が反映されます。
- セッションが切断された時に自動的に再接続するように設定されているデバイスの場合、ユーザーコンソールの SIM 管理画面から「セッション切断」を選択することでも簡単に再接続することができます。
同様に、今後もしグループの VPG の設定を変更したら、設定変更後にいったん接続を切ってから接続しなおす必要があります。
IoT SIM からプライベートアドレスでアクセスする
VPG を使用するグループから、「ステップ 1: VPC および EC2 インスタンスを作成する」で作成した VPC 内の EC2 インスタンスにアクセスします。
ブラウザを起動し、EC2 インスタンスのプライベートアドレスを入力します。
プライベートアドレスである「10.0.0.254」でアクセスできています!
ステップ 4: SORACOM Canal の利用を終了する
SORACOM Canal を用いた閉域網接続が不要になった SIM は、VPG の利用を無効にします。手順はこちらをご覧ください。また、SORACOM Canal の利用を終了する場合は、VPG を削除します。手順はこちらをご覧ください。
- 当ドキュメント中で利用した VPG、VPC ピア接続、EC2 インスタンスは起動時間に応じて料金が発生します。課金を止めたい場合には削除してください。
以上で、「SORACOM Canal を使用して閉域網で接続する」は完了です。
Canal を利用することにより、インターネットを介することなく、VPC にアクセスすることが可能となります。また、 VPC もインターネットにポートを開ける必要はありません。
当ガイドでは、VPG のインターネットゲートウェイを「ON」として作成しましたが、「OFF」(ピア接続先のみ)を設定した場合は、インターネットアクセスを許可しない完全閉域網となります。インターネットからデバイスにマルウエアを仕込まれるリスクを回避することも可能となります。
[参考] Canalの料金体系
Canal の利用料金は、VPGセットアップ費用、基本料金で構成されています。詳しくは課金体系のページやFAQをご覧ください。
- セットアップ/設定変更料金は VPG の作成/設定変更のタイミングごとに課金されます。
- VPG 基本料金は起動時間に応じて課金されます。VPG 起動後は課金を一時的に停止することはできません。課金を止めたい場合には、VPG 自体と、VPCピア接続を削除してください。