本記事はソラコムが提供する「SORACOM公式ブログ」に掲載された「Amazon AppStream 2.0でデバイスへのリモートアクセスを安全かつ簡単に」を再編集したものです。
目次
これまで紹介されてきたリモートアクセスの方法論SORACOM Napterを利用した手元の環境からのオンデマンドなリモートアクセス
SORACOM GateによるD2Dアクセス
SORACOM Gateを利用したクラウド経由(C2D)での常時利用可能なリモートアクセス
AppStreamでIoTデバイスへリモートアクセスする
実際にやってみる
実際に利用するためには:
ユーザーの認証を整理する必要あり
他にも
まとめ
最後にあらためて宣伝: SORACOM Discovery 2023
こんにちは!ソリューションアーキテクトの今井です。社内でのニックネームはfactoryと申します。昔、イマイファクトリーという名前でグラフィックデザインなどをやっておりました。
今回の記事では、Amazon AppStream 2.0(以下、AppStream)使ってIoTデバイスへの安全なアクセスをするための方法論を紹介していきますを。AppStreamとSORACOM Canal(以下、Canal)を組み合わせると、いつでもオンデマンドに利用可能なリモートアクセス環境がエンドツーエンドに構築可能です。
なお、この記事におけるIoTデバイスへのリモートアクセスとは、クラウドやPCからのSSHやリモートデスクトップ、またはブラウザによるアクセスのことを指すものとします。IoTデバイスによってInitiateされたHTTPやMQTTコネクションを利用してクラウド側からアクセスするパターンについては論じません。
これまで紹介されてきたリモートアクセスの方法論
IoTデバイスへのリモートアクセスには、これまで以下の3つの方法論をご紹介してきました。
SORACOM Napterを利用した手元の環境からのオンデマンドなリモートアクセス
SORACOM Napterを利用すると、IoTデバイスに対していつでも好きなところからオンデマンドに安全なリモートアクセスが可能です。料金も「使った分だけ」なのでリーズナブルです。
出典: SORACOM IoT レシピ:外出先から安全にリモートデスクトップへアクセス
SORACOM GateによるD2Dアクセス
SORACOM GateのD2Dアクセス(D2Dとは「Device to Device」をもとにした機能名称)を利用するとIoTデバイス同士の通信が可能です。リモートアクセスのクライアント端末側にSORACOM IoT SIMやSORACOM Arcによるコネクティビティの用意が可能な場合、お手軽なリモートアクセス実現方法のひとつです。イメージ的にはリモートアクセス先とクライアントを同じLANに放り込む感じですね。
SORACOM Gateを利用したクラウド経由(C2D)での常時利用可能なリモートアクセス
SORACOM GateのC2Dアクセス(Cloud to Deviceの意)を利用すると、みなさまのクラウド環境とIoTデバイスの間で常時利用可能なコネクションをセットアップ可能です。リモートアクセスの頻度が高い場合、前述のSORACOM Napterを使うよりもこちらのほうが経済合理性があがる場合があります。また、アクセス時にはかならずみなさまのクラウドを経由することになりますので、システムの統合や監査等を行うためにも便利な方法です。
前述のとおり、このブログポストではこの「常時利用可能な環境」をより便利に、より具体的に構築するためのひとつのアイデアとして、AppStreamをリモートアクセスクライアントとして利用する方法をご紹介します。
AppStreamでIoTデバイスへリモートアクセスする
AppStreamは、高速かつ安全なアプリケーションのストリーミングサービスです。利用者は、インターネットに接続されたデバイス(Windows、Mac、Chromebookなど)からブラウザでアクセスし、ターミナルやウェブブラウザなどのアプリケーションを実行できます。このサービスを使えば、ユーザーの端末に各種アプリケーションを配布することなく業務に即したアプリケーション実行環境を準備することができます。
例えばAppStreamに予めRemote Desktop Clientやブラウザ、Teratermなどをインストールされたイメージを作成したうえで、下記の図のようにデプロイをすると、ユーザーは自端末のブラウザだけ利用してAppStreamにアクセスし安全にIoTデバイスにリモートアクセスができるようになります。
手法を紹介するだけだとこれで終わってしまうので、より具体的なイメージを持っていただくために実際に構築した環境をデモ的にご紹介していきます。
実際にやってみる
まず、前提としてSORACOM Canal、SORACOM Gate、SORACOM Junctionを利用したIoTデバイスとAWS VPC間の双方向のルーティング環境を構築する必要があります。これについては以下のポストを参考に構築していきます。
この時点ではこういうネットワークが構築されています。
次にAppStreamの環境を構築します。ポイントはFleetのNetwork detailsで、以下の点を考慮して設定を進めます。
- VPC: Canalで接続されているVPCであること
- Subnets: Gate Peerと双方向にルーティングが可能なRoute Tableと紐づいているSubnetであること
- Security Groups: Gate PeerとやりとりできるInbound/Outbound設定をもったSecurity Groupであること
ここまでで以下のような構成になりました。
あとはAppStreamのコンソールにてStackのメニューから「Create Streaming URL」をして、クライアントマシンのブラウザでアクセスすれば・・・
利用可能なアプリケーションが表示されるので、任意のアプリケーションを起動します。
ここではTeraTermを起動して、IoTデバイス(ラズパイにOnyxドングルを挿したもの)にアクセスしてみました!(AppStreamの環境を日本語化できていないので、TeraTermの日本語UIが文字化けしてしまっていますがご容赦を)
SSHでログインしてみると、SORACOMのものっぽいppp0インターフェースも見えますね!素晴らしい!
実際に利用するためには:
ユーザーの認証を整理する必要あり
ここまでは「やってみる」というお話でした。このポストのデモでは、AWSのマネージメントコンソールにログインしてStreaming URLの生成を行いましたが、実際に自社のユーザーやお客様向けのサービスとしてこれを提供するにはそうもいきません。ではどうすればよいでしょうか?
- Active DirectoryにAppStreamを統合する
すでに利用可能なActive Directory環境がある場合にはこれに認証を統合するのがよいでしょう。AWSのウェブサイトにて非常にわかりやすいガイドがあるのでこれを参照すれば迷わないと思います。
- 自前でユーザー認証してStreaming URLを返すサービスを作る
Active Directoryを利用しない場合、このような対応が必要になるでしょう。AppStreamはCreateStreamingUrlというAPIを提供していますので、認証されたユーザーに対してこのAPIの結果を返してやるサービスを作るのがよいかと思います。
他にも
また、今回のポストではIoTデバイスにSIMが直接挿さっているケースを例にとりましたが、実際のユースケースではセルラールーターやIoTゲートウェイの配下にIoTデバイスがいるケースも多いと思います。この場合は前述のルーターやゲートウェイにDNATの設定をしてやる必要があります。
まとめ
今回はSORACOM GateによるGate C2DとAmazon AppStream 2.0を組み合わせた、実用的なリモートアクセスのend to endなアーキテクチャ例をご紹介してきました。実際の業務での利用のイメージが少しでもついたら嬉しいなと思います。
改めて、この構成のメリットを改めて書き出してみると以下のようになります。
- 利用者が持つ物理端末はブラウザだけあればOK
- ユーザー管理も既存のシステムと統合が可能
追加でクライアント端末にソフトウェアをインストールすることなく、既存の社内システムとのユーザー認証の統合もできますので、エンタープライズ環境でも十分に利用可能な構成だと思います。IoTデバイスへのリモートアクセス環境の構築にお悩みの方はぜひご参考にしていただければ!
最後にあらためて宣伝: SORACOM Discovery 2023
7/5、7/6にソラコムの主催する年次イベント、SORACOM Discovery 2023を開催予定です。今年は4年ぶりのオフライン開催(2日めのみ)です!さまざまなお客様の事例やIoTのユースケースをご紹介する予定で、わたし自身も3つのセッションに登壇させて頂く予定です。ご都合がつく方はぜひお申し込みを!
― ソラコム今井(factory)
投稿 Amazon AppStream 2.0でデバイスへのリモートアクセスを安全かつ簡単に は SORACOM公式ブログ に最初に表示されました。
この連載の記事
-
第485回
デジタル
省電力通信LTE-M対応の小型マイコンボードをSORACOM IoTストアで提供開始、ローコードIoTアプリケーションビルダー「SORACOM Flux」の料金プランを発表 takuyaのほぼ週刊ソラコム 11/30-12/13 -
第484回
デジタル
AWS re:Invent 2024に見る、IoTの成熟と生成AIとの融合 -
第483回
デジタル
二歳半の子供を持つエンジニアの一日の働き方 -
第482回
デジタル
VPN 対応の産業用 LTE ルーターの価格改定【30%オフ】 -
第481回
デジタル
時間帯に応じたメール通知の構築方法 : SORACOM LTE-M Button と SORACOM Flux の活用 -
第480回
デジタル
SORACOM Flux 料金プランを発表しました -
第479回
デジタル
12/11-13 商業施設・店舗DX展に出展:最新IoTソリューションや事例をご紹介 -
第478回
デジタル
コープさっぽろが、クラウド型カメラ「ソラカメ」を全店舗で導入、現場主導の改善を実現、サーバールームの異常な温度上昇を通知する新規掲載レシピ takuyaのほぼ週刊ソラコム 11/16-11/29 -
第476回
デジタル
WebRTCとMedia over QUIC Transportの性能比較 -
第475回
デジタル
SORACOM Lagoon 3 の [Math] 機能で、複数データを組み合わせた通知の手順