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 をブートストラップする を参照してください。
前提条件
- soratun がサポートする Linux をご利用であること。詳しくは、soratun の サポート対象プラットフォーム を参照してください。
- OS がインターネットに接続されていること
ステップ 1: SORACOM Access Management (SAM) ユーザーを作成する
SAM ユーザーを作成する を参考に、以下の設定で SORACOM Arc を使用するための 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
) を更新します。