戻る | 前へ | 次へ

IoT SAFE Client コマンドリファレンス


概要

IoT SAFE Client は、Raspberry Pi OS / Ubuntu / Debian 向けの IoT SAFE アプリケーション管理ツールです。


サポート環境

本ツールは、以下の環境をサポートしています。


  • アーキテクチャ
    • arm64

    • amd64 (x86_64)

  • ディストリビューション
    • Raspberry Pi OS

    • Ubuntu

    • Debian


基本的な使用方法

iotsafe-client [グローバルオプション] <コマンド> [コマンドオプション]

グローバルオプション

すべてのコマンドで使用可能なオプションです。

オプション

説明

環境変数※

--api-id <ID>

Applet Consoleで払い出されたAPI ID

API_ID

--api-secret <SECRET>

Applet Consoleで払い出されたAPI シークレット

API_SECRET

--config <PATH> / -c

設定ファイルのパス

-

--verbose / -v

詳細出力

-

--quiet / -q

最小限の出力

-

--version

バージョン表示

-

--help

ヘルプ表示

-

注釈

※オプションを使用せず、環境変数で設定することも可能です。


コマンド


config - 設定管理

初期設定と管理を行います。

configの設定変数一覧

変数名

説明

デフォルト値

設定可能な値

備考

architecture

ターゲットアーキテクチャ

auto

auto
x86_64
aarch64

fqdn

FQDN(完全修飾ドメイン名)

{APIのベースURLに使用するFQDN} ※インストール時に自動反映されます

有効なドメイン名形式の文字列

バリデーション: RFC 準拠のドメイン名形式である必要があります
機能: API のベース URL 構築に使用されます (https://{fqdn}/v1)

packages.keep_downloads

ダウンロードしたパッケージファイルの保持

False

True
False

pkcs11.default_slot

デフォルトの PKCS11 スロット番号

0

0 以上の整数

バリデーション: 値は 0 以上である必要があります

pkcs11.module

PKCS11 モジュールライブラリ名称

libpkcs11_iotsafe.so

.so、.dll、.dylibのいずれかで終わるライブラリファイル名

バリデーション: 適切なライブラリファイル拡張子で終わる必要があります

vpn.auto_reconnect

VPN の自動再接続

True

True
False

config init - 初期設定

初期設定を行います。

注釈

install.sh から実行した場合は初期化は不要です。


# 対話モード(デフォルト)
iotsafe-client config init

# 非対話モード
iotsafe-client config init -n --fqdn="iotsafe.example.com"

# 設定ファイルから読み込み
iotsafe-client config init --config-file="config.json" -n

オプション

  • --fqdn <FQDN>: サーバーの FQDN

  • --non-interactive / -n: 非対話モード

  • --config-file <PATH>: JSON/YAML ファイルから設定を読み込み


config set - 変数の値の変更

変数の値を変更します。

iotsafe-client config set fqdn "iotsafe.example.com"
iotsafe-client config set vpn.auto_reconnect True

config get - 変数の値の取得

特定の変数の値を表示します。

iotsafe-client config get fqdn

config list-schema - 変数リストの取得

設定可能なすべての変数を表示します。

iotsafe-client config list-schema

config list - 全設定の表示

すべての変数の値と環境変数の API 認証情報を一覧表示します。

iotsafe-client config list

config remove - 変数の削除

特定の変数を削除します。

iotsafe-client config remove packages.auto_update

package - パッケージ管理

IoT SAFE関連パッケージのインストールと管理を行います。


package install - パッケージのインストール

IoT SAFE関連パッケージをインストールします。

# 全パッケージをインストール
iotsafe-client package install --all

# 特定のパッケージをインストール
iotsafe-client package install <package_name>

オプション

  • --all: すべてのパッケージをインストール


package update - パッケージの更新

IoT SAFEパッケージを更新します。

# 全パッケージを更新
iotsafe-client package update --all

# 特定のパッケージを更新
iotsafe-client package update <package_name>

package list - インストール済みパッケージの表示

インストール済みのIoT SAFEパッケージを表示します。

iotsafe-client package list

package remove - パッケージの削除

特定のIoT SAFE関連パッケージを削除します。

iotsafe-client package remove <package_name>

package info - パッケージ情報の表示

特定のIoT SAFE関連パッケージの情報を表示します。

iotsafe-client package info <package_name>

cert - 証明書管理

CA 証明書のダウンロードと管理を行います。


cert download-ca - CA 証明書のダウンロード

Applet ConsoleのCA証明書をダウンロードします。

# デフォルトの場所に保存
iotsafe-client cert download-ca

# 指定した場所に保存
iotsafe-client cert download-ca --output /path/to/ca.cert

オプション

  • --output / -o: 出力ファイルパス


cert show - 証明書情報の表示

CA 証明書や指定した証明書の情報を表示します。

# デフォルトCA証明書を表示
iotsafe-client cert show

# 指定した証明書を表示
iotsafe-client cert show /path/to/cert.pem

cert verify - 証明書の検証

指定した証明書を検証します。

iotsafe-client cert verify /path/to/cert.pem

vpn - VPN 管理

OpenVPNによるVPN接続の設定と管理を行います。


vpn download-config - OpenVPN 設定のダウンロード

OpenVPN 接続設定をダウンロードします。

# ICCIDを指定してダウンロード
iotsafe-client vpn download-config --iccid="89XXXXXXXXXXXXX"

# 自動検出モード
iotsafe-client vpn download-config --auto

オプション

  • --iccid <ICCID>: SIM カードの ICCID を手動で入力

  • --auto: ICCID を自動検出


vpn connect - VPN 接続

VPN接続を確立します。

# デフォルト設定で接続
iotsafe-client vpn connect

# 設定ファイルを指定して接続
iotsafe-client vpn connect --config /path/to/config.ovpn

# バックグラウンドで接続
iotsafe-client vpn connect --daemon

オプション

  • --config / -c: OpenVPN 設定ファイル

  • --daemon: バックグラウンドで実行


vpn disconnect - VPN 切断

VPN接続を切断します。

iotsafe-client vpn disconnect

vpn status - VPN 接続状態の確認

VPN接続状態を確認します。

iotsafe-client vpn status

vpn get-iccid - ICCID の取得

SIMのICCIDを取得します。

iotsafe-client vpn get-iccid

pkcs11 - PKCS#11 操作

PKCS#11 トークンの操作を行います。


pkcs11 list-slots - スロット一覧の表示

スロットの一覧を表示します。

iotsafe-client pkcs11 list-slots
iotsafe-client pkcs11 list-slots --module /path/to/module.so

オプション

  • --module / -m: PKCS#11 モジュール(デフォルト: libpkcs11_iotsafe.so)


pkcs11 list-objects - オブジェクト一覧の表示

オブジェクトの一覧を表示します。

iotsafe-client pkcs11 list-objects
iotsafe-client pkcs11 list-objects --slot 1

オプション

  • --slot / -s: スロットインデックス(デフォルト: 0)

  • --module / -m: PKCS#11 モジュール


pkcs11 read-object - オブジェクトの出力

指定したオブジェクトをファイル出力します。

# クライアント証明書の読み取り
iotsafe-client pkcs11 read-object --label "my_key" --type cert --output cert.der

# CSRの読み取り
iotsafe-client pkcs11 read-object --label "my_key_CertificateSigningRequest" --type data --output csr.der

# データオブジェクトの読み取り
iotsafe-client pkcs11 read-object --label "my_data" --type data --output data.bin

オプション

  • --label / -l: オブジェクトラベル(必須)

  • --type / -t: オブジェクトタイプ(必須、 cert / data の何れか)

  • --output / -o: 出力ファイル(必須)

  • --slot / -s: スロットインデックス(デフォルト: 0)

  • --module / -m: PKCS#11 モジュール


pkcs11 dump - トークン情報のダンプ

トークン情報を表示します。

iotsafe-client pkcs11 dump
iotsafe-client pkcs11 dump --slot 1

オプション

  • --slot / -s: スロットインデックス(デフォルト: 0)

  • --module / -m: PKCS#11 モジュール


pkcs11 info - モジュール情報の表示

PKCS#11関連カーネルモジュール情報を表示します。

iotsafe-client pkcs11 info
iotsafe-client pkcs11 info --module /path/to/module.so

system - システム管理

システムの診断と依存関係の管理を行います。


system check-deps - 依存関係の確認

必要なシステムパッケージがインストールされているか確認します。

iotsafe-client system check-deps

system install-deps - 依存関係のインストール

不足している依存パッケージをインストールします。

iotsafe-client system install-deps

system info - システム情報の表示

OS、ネットワーク、設定情報を表示します。

iotsafe-client system info

system diagnose - システム診断

設定、ネットワーク、依存関係などの総合的な診断を実行します。

iotsafe-client system diagnose

使用例

初期セットアップ

# 1. 設定を初期化
iotsafe-client config init

# 2. 依存関係をインストール
iotsafe-client system install-deps

# 3. パッケージをインストール
iotsafe-client package install --all

# 4. CA証明書をダウンロード
iotsafe-client cert download-ca

VPN 接続のセットアップ

# 1. ICCIDを確認
iotsafe-client vpn get-iccid

# 2. VPN設定をダウンロード
iotsafe-client vpn download-config --auto

# 3. VPN接続
iotsafe-client vpn connect --daemon

# 4. 接続状態を確認
iotsafe-client vpn status

トラブルシューティング

API 認証エラー

# 設定を確認
iotsafe-client config list
# 以下、何れか方法でクレデンシャル情報を設定し、コマンドを実行

# オプションを指定して実行
iotsafe-client --api-id="your-api-id" --api-secret="your-api-secret" <コマンド>

# 環境変数を設定後、実行
export API_ID="your-api-id"
export API_SECRET="your-api-secret"
iotsafe-cliet <コマンド>

# api_id、api_secretファイルを作成し、実行
# 通常、これらのファイルは、インストール時自動作成されます
ls -l ~/.iotsafe/api_id
echo "your-api-id" > ~/.iotsafe/api_id
chmod 600 ~/.iotsafe/api_id
ls -l ~/.iotsafe/api_secret
echo "your-api-secret" > ~/.iotsafe/api_secret
chmod 600 ~/.iotsafe/api_secret
iotsafe-client <コマンド>

注釈

Applet Consoleに表示されるインストールコマンドを使用した場合、 API_IDAPI_SECRET 情報は設定ディレクトリに設定されます。 よって、通常は、 iotsafe-client のオプション指定は不要です。


接続エラー

# システム診断を実行
iotsafe-client system diagnose

# ネットワーク情報を確認
iotsafe-client system info

依存関係エラー

# 依存関係を確認
iotsafe-client system check-deps

# 不足している依存関係をインストール
iotsafe-client system install-deps