Tulip Interface AWS IoT Core との統合 - AWS コンソールガイド
# Tulip Interface AWS IoT Core 統合 - AWS コンソールガイド
概要
このガイドでは、コマンドラインを使用せずに、AWSコンソールだけで Tulip Interface をAWS IoT Coreに接続する方法について説明します。
前提条件
- IoT 権限を持つ AWS コンソールへのアクセス権
- MQTTコネクタ機能を備えたTulip Interface へのアクセス権
- Webブラウザ
ステップ 1: IoT Thing を作成する
1.1 AWS IoTコンソールにアクセスする
- AWS IoT コンソールにアクセスします
- 左側のサイドバーで、[管理] → [Thing] をクリックします
1.2 新しいデバイスを作成する
- [Thingの作成] をクリックします
- [単一の Thing を作成] を選択します
- [次へ] をクリックします
- 「Thing name」に「
tulip-interface-client」と入力します - その他のフィールドはデフォルトのままにします
- 「次へ」をクリック
ステップ 2: デバイス証明書の作成
2.1 証明書の設定
- 「新しい証明書を自動生成する」を選択します
- [次へ] をクリック
2.2 IoT ポリシーの作成
- [ポリシーの作成] をクリックします
- 開いた新しいタブで:
- ポリシー名:
TulipMQTTPolicy - ポリシー文書:**「JSON」**タブをクリックし、以下を貼り付けます:
json { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:*" ], "Resource": "*" } ] } - 「作成」をクリックします
- 前のタブに戻る
2.3 ポリシーの添付
- ポリシー一覧を更新します
- 「TulipMQTTPolicy」を選択
- 「Thingの作成」をクリック
ステップ 3: 証明書ファイルのダウンロード
3.1 必要なファイルのダウンロード
重要:これらのファイルは直ちにダウンロードしてください(後でダウンロードすることはできません):
- デバイス証明書→ 「
certificate.pem.crt」として保存 - 秘密鍵ファイル→
private.pem.keyとして保存 - Amazon Root CA 1→ 「
AmazonRootCA1.pem」として保存 - [完了] をクリック
3.2 証明書チェーンファイルの作成
- テキストエディタで
certificate.pem.crtを開く - テキストエディタで
AmazonRootCA1.pemを開く - 「
cert_chain.pem」という名前の新しいファイルを作成します certificate.pem.crtの内容全体をcert_chain.pemにコピーします- 末尾に新しい行を追加します
AmazonRootCA1.pemの内容全体をコピーし、cert_chain.pemの末尾に追加しますcert_chain.pemを保存します
ステップ 4: 秘密鍵の形式を変換する
4.1 オンライン変換ツール
コマンドラインは使いたくないので、オンラインツールを使用します:
- SSL Converterまたは同様のツールにアクセスします
- 「変換元: RSA 秘密鍵」を選択します
- 「変換先」で「PKCS#8」を選択します
private.pem.keyファイルをアップロードします- 変換されたファイルを
private_pkcs8.pemとしてダウンロードします
セキュリティに関する注意:本番環境では、セキュリティを強化するため、オフラインツールまたはコマンドラインを使用してください。
ステップ 5: IoT エンドポイントを取得する
5.1 エンドポイントの確認
- AWS IoT コンソールで、[設定](左側のサイドバー)に移動します
- [デバイスデータエンドポイント] の下にあるエンドポイント URL をコピーします
- URLは次のような形式です:
a1234567890123-ats.iot.us-west-1.amazonaws.com - このURLを保存してください。Tulipの設定で必要になります
ステップ 6:Tulip Interface のMQTTコネクタを設定する
6.1 MQTT 接続設定
Tulip Interface のMQTTコネクタで、以下を設定してください:
- MQTT ブローカーホスト:
[手順 5 で取得したエンドポイント] - ポート:
8883 - プロトコル:
MQTT over TLSまたはMQTTS - クライアント ID:
tulip-interface-client
6.2 証明書の設定
以下のファイルをTulip Interface にアップロードしてください:
- 証明書ファイル:
cert_chain.pemをアップロード - 秘密鍵ファイル:
private_pkcs8.pemをアップロード - CA証明書ファイル:
AmazonRootCA1.pemをアップロード
6.3 トピックの設定
- 公開トピック:
tulip/data - トピックの購読:
tulip/commands(オプション)
ステップ 7: CloudWatch Logging を有効にする(オプション)
7.1 IAM ロールの作成
- IAMコンソールにアクセスします
- [Roles] → [Create role] をクリック
- AWS サービスを選択 →IoT
- [次へ] をクリック
- 「CloudWatchLogsFullAccess」を検索して選択します
- 「次へ」をクリック
- ロール名:
IoTLogsRole - 「ロールの作成」をクリック
7.2 IoT ロギングを有効にする
- AWS IoT コンソールに戻る
- [設定](左側のサイドバー)に移動します
- [ログ] の下にある**[編集**] をクリックします
- 詳細レベル:Info
- ロールの設定:
IoTLogsRoleを選択 - 「更新」をクリック
ステップ 8: 接続のテスト
8.1 AWSコンソールでの監視
- [テスト] → [MQTT テストクライアント] に移動します
- [トピックを購読] をクリックします
- トピックフィルター:
tulip/data - [Subscribe] をクリック
8.2 Tulip からのテスト
- からテストメッセージを送信しますTulip Interface
- AWS MQTT テストクライアントにメッセージが表示されるはずです
8.3 CloudWatch ログの確認(有効になっている場合)
- CloudWatchコンソールにアクセスします
- [Logs] → [Log groups] をクリックします
- 「AWSIotLogsV2」を探します
- ロググループをクリックして、接続ログを表示します
トラブルシューティング
よくある問題とコンソールでの解決策
1. 証明書が機能しない
問題:証明書エラーにより接続に失敗する解決策: -cert_chain.pemを使用していることを確認してください(個別の証明書ではありません) - 秘密鍵が PKCS#8 形式(private_pkcs8.pem)であることを確認してください
2. ポリシーに関する問題
問題:ログに認証エラーが記録されている解決策:1.[Secure]→[Policies]に移動します。2.[TulipMQTTPolicy] をクリックします。3. JSONポリシーで、「*」リソースに対する「 iot:*」が許可されていることを確認します。
3. エンドポイントの誤り
問題:ブローカーに接続できない解決策:1. IoTコンソールの**「設定」**に移動します。2. エンドポイントURLを正確にコピーします(-atsサフィックスを含む)。3.ポート8883を使用します。
4. 証明書が紐付けられていない
問題:認証エラー解決策:1.**[Secure]→[Certificates]に移動します。2. 該当する証明書をクリックします。3.[Things]タブと[Policies]**タブを確認します。4.「tulip-interface-client」シングと「TulipMQTTPolicy」が関連付けられていることを確認します。
ファイルの概要
Tulipの設定には、以下のファイルが必要です:
📁 ダウンロードしたファイル├── certificate.pem.crt # オリジナルのデバイス証明書├── private.pem.key # 元の秘密鍵├── AmazonRootCA1.pem # AmazonルートCA├── cert_chain.pem # 証明書 + ルートCA ← これを使用└── private_pkcs8.pem # 変換済みの秘密鍵 ← これを使用
クイックリファレンスカード
Tulip MQTT 設定の概要
| 設定 | 値 |
|---|---|
| ホスト | [your-endpoint]-ats.iot.[region].amazonaws.com |
| ポート | 8883 |
| クライアント ID | tulip-interface-client |
| トピック | tulip/data |
| 証明書 | cert_chain.pem |
| 秘密鍵 | private_pkcs8.pem |
| CA証明書 | AmazonRootCA1.pem |
AWSコンソールのクイックリンク
- IoTコンソール- メインのIoT管理
- MQTT テストクライアント- メッセージのテスト
- CloudWatch Logs- 接続ログの表示
- IAMコンソール- ロールとポリシーの管理
成功の指標
✅接続に成功
- Tulip Interface ステータスが「接続済み」と表示される
tulip/dataをサブスクライブすると、AWS MQTT テストクライアントにメッセージが表示される- CloudWatchログに
Publish-Inイベントが正常に記録されている
❌接続に失敗しました
- 証明書ファイルの形式が正しいか確認してください
- エンドポイントURLがAWSコンソールと完全に一致しているか確認してください
- ポート 8883 が使用されていることを確認してください
- クライアント ID が Thing Name と完全に一致していることを確認してください
セキュリティのベストプラクティス
- 証明書の保管:証明書ファイルをTulipに安全に保管してください
- ポリシーの精緻化:テスト終了後、より制限の厳しいポリシーを作成してください
- 監視:本番環境の監視のために CloudWatch ロギングを有効にする
- 定期的な更新:証明書の更新計画を立てる(証明書の有効期限は2049年)
サポートリソース
- AWS IoT ドキュメント:docs.aws.amazon.com/iot
- Tulip サポート:MQTT コネクタに関する問題については、Tulip サポートにお問い合わせください
- AWSサポート:IoT Coreに関する問題については、AWSサポートをご利用ください
注:このガイドでは、AWSコンソールのみに焦点を当てています。自動化やスクリプト作成については、CLIベースのガイドを参照してください。
