MENU

Soracom

Users

soratun で SORACOM API の認証キーを使用してバーチャル SIM/Subscriber をブートストラップする

バーチャル SIM/Subscriber の作成から接続までを支援する SORACOM Arc 用のクライアントエージェント soratun を使ってバーチャル SIM/Subscriber を作成し SORACOM プラットフォームへ接続する方法を説明します。soratun については 概要と機能 を参照してください。

soratun のサポートする 3 種類のブートストラップ方法 の 1 つである SORACOM API 認証キーを使用する方法 です。デバイスに USB ドングルを指したり、SIM カードを持っていない場合も手軽にバーチャル SIM/Subscriber を作成し SORACOM Arc をお試しいただけます。デバイスに SORACOM API の認証キーを保存しなければならないため、Raspberry Pi の盗難などの際に漏洩のリスクがあります。また、認証キーをそれぞれの Raspberry Pi へセキュアに配布する手段も必要になります。

SORACOM IoT SIM をご利用のデバイスであればセルラー接続そのものを認証の手段としますので、デバイス側に認証情報を保存しない方法も可能です。その場合は、 セルラー回線認証を使用してバーチャル SIM/Subscriber をブートストラップするをご確認ください。

前提条件

ステップ 1: SORACOM Access Management (SAM) ユーザーを作成する

SAM ユーザーを作成する を参考に、以下の設定で SORACOM Arc を使用するための SAM ユーザーを作成してください。

  • 名前 : 任意

  • 概要 : 任意

  • 権限設定 : 最低限以下の権限を付与してください。構文の詳細は SAM アクセス権限設定のためのパーミッション構文 を参照してください。

    {
      "statements": [
        {
          "api": ["Sim:createSim", "Sim:createArcSession"],
          "effect": "allow"
        }
      ]
    }
    
  • 認証キー : 生成し、認証キー ID (AuthKeyId) と 認証キーシークレット (AuthKey)を手元にコピーしてください。

  • コンソールログインパスワード : 設定不要

soratun は認証キー ID と認証キーシークレットを使用した認証方式のみをサポートします。

ステップ 2: Raspberry Pi に soratun をインストールする

soratun を公開している GitHub レポジトリReleases セクションからご利用の環境に合わせたファイルの最新バージョンをダウンロードしてください。例えば Raspberry Pi の場合は soratun_x.x.x_linux_armv7.tar.gz となります。

ダウンロードしたファイルを展開し実行形式ファイル soratun を任意のディレクトリへコピーしてください。

$ wget http://xxxxx
$ tar xvf soratun_x.x.x_linux_armv7.tar.gz
$ cd soratun_x.x.x_linux_armv7
$ sudo cp soratun /usr/local/bin

ステップ 3: ブートストラップする

soratun bootstrap authkey コマンドでブートストラップします。以下の例では設定ファイルを /path/to/arc.json に保存します。ご利用の環境にあわせて任意のパスを指定してください。

$ soratun --config /path/to/arc.json bootstrap authkey
--config フラグで指定した設定ファイルがすでに存在する場合、設定ファイルに認証情報 (profile) を使用して接続情報 (arcSessionStatus) を更新し終了します。すなわち、2 回目以降は soratun bootstrap authkey コマンドの実行時に認証情報の入力は不要です。変更したい場合は設定ファイルを書き換えてください。

以下の質問に回答してください。

  • SORACOM API auth key ID (starts with “keyId-") (上記で取得した認証キー ID)
  • SORACOM API auth key (starts with “secret-") (上記で取得した認証キーシークレット)
  • Coverage to create a new virtual SIM (バーチャル SIM/Subscriber を作成するカバレッジ): Global coverage (g.api.soracom.io) / Japan coverage (api.soracom.io)

作成が成功すると以下のように構成ファイルのパスが表示されます。

Created/updated configuration file: /path/to/arc.json

以上でブートストラップは完了です。生成された設定ファイルの詳細は soratun 設定ファイルリファレンス を参照してください。

--auth-key-id / --auth-key / --coverage-type フラグで上記の質問をスキップできます。

$ soratun --auth-key-id keyId-xxx --auth-key secret-xxx --coverage-type jp --config /path/to/arc.json bootstrap authkey

ステップ 4: soratun を実行しバーチャル SIM/Subscriber で接続する

生成された設定ファイルを指定して soratun を実行し仮想インターフェースを作成、SORACOM プラットフォームへ接続します。

$ sudo soratun --config /path/to/arc.json up

ソラコムにアクセスできることを確認してください。

$ ping pong.soracom.io

soratun up コマンドで仮想インターフェースを作成したタイミングで以下のネットワーク宛の通信を soratun のネットワークインターフェース経由に設定します。すでに同じルートが定義されている場合は上書きします。

  • SORACOM Arc セッション作成時にサーバーから返却された arcAllowedIPs (通常は 100.127.0.0/16)
  • soratun の設定ファイルにお客様で定義する additionalAllowedIPs (デフォルトは設定無し)
ユーザーコンソールからセッションを切断した場合は再度ブートストラップを実施してください。--config フラグで指定した設定ファイル内の接続情報 (arcSessionStatus) を更新します。