ステップ 2: ゲートウェイのインストールと設定
SDA Console でゲートウェイとデバイスの設定が完了したら、次の段階では選択したゲートウェイハードウェアに SDA Glue サービスをインストールします。このインストール手順は Linux と Windows のシステムで異なりますが、いずれの方法も同じ基本原則に従います。すなわち、バックグラウンドで継続的に稼働し、必要に応じてセキュアなトンネルを確立できるサービスをダウンロードして設定する、というものです。
インストール
インストール手順は主に 2 つの段階で構成されます。
- 対象システムに SDA Glue と依存関係をインストールします。
- 特定のゲートウェイを認証する、SDA Console から取得した固有の認証情報でサービスを設定します。
インストールを開始する前に、対象システムで管理者権限を保有していることを確認してください。インストール処理では、システムサービスをインストールするために昇格された権限が必要です。Linux では sudo アクセスが、Windows では管理者として PowerShell を実行する必要があります。
インストール手順はプロキシ環境にも対応できますが、各プラットフォーム固有のセクションで詳しく説明する追加の設定手順が必要です。
Linux
インターネットに直接アクセスできる Linux システムに SDA Glue をインストールするには、ターミナルで次のコマンドを実行します。
curl -sSL 'https://api.eu1.sdaconsole.io/glue/v1/install.sh' | bash -
このコマンドは curl を使用して SDA の API エンドポイントからインストールスクリプトを安全に取得し、即時実行のために bash へパイプします。-sSL フラグにより、転送はサイレントで行われ、エラーが発生した場合は表示され、リダイレクトは安全に追跡されます。
Linux インストール手順の詳細
Linux のインストールでは、SDA Glue サービスのビルドと設定という複雑な処理を担う自動シェルスクリプトを使用します。このスクリプトはいくつかの重要なタスクを実行します。必要なランタイム依存関係とビルドツールのインストール、SDA のセキュアなリポジトリからの SoftEther VPN Client のダウンロードとコンパイル、そしてシステム起動時に自動的に開始される systemd サービスとしての SDA Glue のインストールです。
コンパイル方式を採用することで、検証済みのソースコードからビルドしてセキュリティを保ちながら、さまざまな Linux ディストリビューション間での互換性を確保します。systemd サービスとの統合により、問題が発生した場合にゲートウェイは自動的に再起動し、システム起動時には直ちに稼働を開始します。
実行前にインストールスクリプトを確認したい場合は、コマンドから | bash - の部分を削除するか、ウェブブラウザで https://api.eu1.sdaconsole.io/glue/v1/install.sh に直接アクセスすることで個別に取得できます。この透明性により、インストール処理がシステム上で何を行うのかを正確に把握できます。
プロキシ環境下の Linux
Linux システムがプロキシサーバー経由でインターネットにアクセスする必要がある場合、インストールスクリプトを実行する前に適切な環境変数を設定する必要があります。現在の bash セッションで http_proxy と https_proxy の環境変数を設定してください。
export http_proxy=http://username:password@proxy.company.com:8080
export https_proxy=http://username:password@proxy.company.com:8080
curl -sSL 'https://api.eu1.sdaconsole.io/glue/v1/install.sh' | bash -
プロキシ URL は、ネットワーク構成で必要とされる場合は認証情報も含め、実際のプロキシサーバーの情報に置き換えてください。
Docker
Docker は代替の展開方法を提供し、異なるホストシステム間での一貫性とコンテナ化による管理の簡素化を実現します。SDA Glue の Docker イメージは Debian をベースとしており、必要な依存関係がすべて事前設定された状態で含まれているため、手動でのコンパイルや依存関係の管理は不要です。
Docker を使用して SDA Glue を展開するには、必要なネットワーク機能を指定して次のコマンドを実行します。
docker run -d \
--name glue \
--device=/dev/net/tun \
--cap-add=NET_ADMIN \
-v glue-data:/var/lib/sdaglue \
--restart always \
-p 8081:8080 \
public.ecr.aws/t9c5s2d1/sdaglue:latest
このコマンドは「glue」という名前の永続的なコンテナを作成し、予期せず停止した場合には自動的に再起動します。ボリュームマウントにより、コンテナの再起動や更新の前後でゲートウェイの設定と認証データが保持されます。
また、アプリケーションのセットアップ用に Glue ウェブサーバーを稼働させるコンテナのポート 8080 を、ホストのポート 8081 に転送します。これにより http://localhost:8081/ でアクセスできます。
同一ホスト上で複数の SDA Glue コンテナを実行する場合は、競合を防ぐため各コンテナが固有の名前とボリュームマウントを使用するようにしてください。
docker run -d --name glue-factory -v factory-data:/var/lib/sdaglue [...]
高度なネットワーク構成、トラブルシューティング手順、本番環境への展開のベストプラクティスを含む、包括的な Docker 展開ガイドについては、完全なドキュメントをご覧ください。
Windows
Windows の検索バーで「PowerShell」を検索し、結果を右クリックして「管理者として実行」を選択し、管理者として PowerShell を開きます。昇格された PowerShell セッションが開いたら、次のコマンドを実行します。
iwr -Uri 'https://api.eu1.sdaconsole.io/glue/v1/install.ps1' -UseBasicParsing | iex
この PowerShell コマンドは Invoke-WebRequest(略称 iwr)を使用してインストールスクリプトを取得し、即時実行のために Invoke-Expression(略称 iex)へパイプします。-UseBasicParsing パラメーターにより、さまざまな Windows のバージョンや構成間での互換性が確保されます。

PowerShell による SDA Glue のインストール成功
Windows インストール手順の詳細
Windows のインストール手順では、PowerShell を使用してインストールスクリプトをダウンロードし、実行することでシステムを SDA 接続用に構成します。ソースからソフトウェアをコンパイルする Linux の方式とは異なり、Windows インストーラーは OpenVPN Community Client と SDA Glue サービスのビルド済みバイナリをダウンロードし、SDA Glue を Windows サービスとして登録します。
Windows サービスとの統合により、SDA Glue はシステム起動時に自動的に開始され、問題が発生した場合には自動的に再起動します。これは Linux の systemd 方式と同等の信頼性をもたらしますが、Windows ネイティブのサービス管理基盤を使用します。
Linux の場合と同様に、| iex の部分を削除するか、ウェブブラウザで https://api.eu1.sdaconsole.io/glue/v1/install.ps1 に直接アクセスすることで、実行前にインストールスクリプトを確認できます。
プロキシ環境下の Windows
Windows システムがプロキシサーバーの背後で稼働している場合、インストール処理には 2 段階のアプローチが必要です。まずプロキシ設定を構成してインストールスクリプトをダウンロードし、次に適切なプロキシ構成でスクリプトを実行します。
まず、プロキシ構成用の PowerShell 変数を設定します。
# Configure your specific proxy details
$ProxyHost="proxy.company.com:8080"
$ProxyUser="your-username"
# Download the installation script through the proxy
iwr -Uri 'https://api.eu1.sdaconsole.io/glue/v1/install.ps1' -UseBasicParsing -OutFile .\glue-install.ps1 -Proxy http://$ProxyHost -ProxyCredential $ProxyUser
# Execute the script with proxy configuration
.\glue-install.ps1 -Proxy $ProxyHost -ProxyCredential $ProxyUser
プロキシ URL の書式には重要な違いがあることに注意してください。Invoke-WebRequest コマンドは完全な URL スキーム(http://proxy.company.com:8080)を必要としますが、インストールスクリプトはホスト名とポートのみ(proxy.company.com:8080)を想定しています。

下部のログが示すとおり、CLI を使用して SDA Glue でプロキシサーバーを設定する必要があります
認証とログイン
SDA Glue ソフトウェアのインストールが正常に完了したら、物理ゲートウェイを SDA Cloud サービスで認証する必要があります。この認証処理では、対象のゲートウェイ専用に SDA Console が生成した固有の認証情報を使用します。これらの認証情報は、短いゲートウェイ識別子と、セキュリティ強化のために定期的にローテーションされるワンタイムパスワードで構成されます。

SDA Console のゲートウェイセットアップコマンド
SDA Console に戻り、ゲートウェイのセットアップダイアログにある 2 番目のコマンドを見つけてください。このコマンドは次の例のような形式になります。
Linux
sudo sdaglue login -e eu1 G1ABCD 123456
Docker
docker exec glue sdaglue login -e eu1 G1ABCD 123456
Windows
sdaglue.exe login -e eu1 G1ABCD 123456
コマンドの構造には、ヨーロッパリージョンのエンドポイントを指定する -e eu1 フラグ、続いてゲートウェイの固有識別子(G1ABCD など)とワンタイムパスワード(123456 など)が含まれます。これらの値はゲートウェイ固有のものであり、示した例とは異なります。
ワンタイムパスワードはセキュリティ上の理由から定期的に更新されます。認証に失敗する場合は、SDA Console に戻ってゲートウェイセットアップダイアログから最新のパスワードを取得してください。
サービスのステータス
インストールと認証の手順が完了したら、SDA Glue サービスがシステム上で正しく稼働していることを確認します。
Linux
systemd コマンドを使用してサービスのステータスを確認します。
sudo systemctl status sdaglue
ライブのログ出力を監視して問題をトラブルシューティングするには次を実行します。
sudo journalctl -efu sdaglue -n 100
Docker
Docker コンテナからは次のコマンドでサービスログを取得できます。
docker logs -n 100 --follow glue # tracks the latest 100 logs from the service
Windows
Windows のサービスアプリケーションからサービスを確認できます。Windows の検索バーで「サービス」を検索し、サービス一覧で「SDA Glue」を探します。サービスは、スタートアップの種類が「自動」で「実行中」と表示されるはずです。

Windows でアクティブなサービスを表示
Windows サービスはイベントログを生成します。これはイベントビューアーの Windows ログ → Application から参照できます。検索バーを使用してイベントビューアーを開いてください。

イベントビューアーで SDA Glue のログにアクセス
設定
SDA Glue では、特定のネットワーク環境内で最適に動作するよう挙動を変更できます。これらの設定調整により、プロキシサーバー、ファイアウォールによる制限、異なる通信プロトコルなど、産業用ネットワーク固有の特性にかかわらず、信頼性の高い接続性が確保されます。
サービスの制御には環境変数を使用します。設定変更を有効にするにはサービスの再起動が必要です。環境変数は設定パラメーターと同じ命名規則を維持しますが、GLUE プレフィックスを使用し、アンダースコアで区切られます。
log.level -> GLUE_LOG_LEVEL
webui.enabled -> GLUE_WEBUI_ENABLED
現在の設定パラメーターを表示する:
# Linux & Windows
sdaglue config describe
# Docker
docker exec glue sdaglue config describe
パラメーターの設定:
# Linux & Windows
sdaglue config set --log.level debug --webui.enabled true --webui.port 8080
# Docker
docker exec sdaglue config set --log.level debug --webui.enabled true --webui.port 8080
パラメーターの取得:
# Linux & Windows
sdaglue config list
# Docker
docker exec sdaglue config list
変更後のサービス再起動:
# Linux & Windows
sdaglue service restart
# Docker
docker exec glue sdaglue service restart # or
docker restart glue
MQTT トランスポートプロトコル
最も重要な設定上の判断の一つは、ゲートウェイが SDA Cloud サービスとどのように通信するかの選択です。SDA Glue は 2 つのトランスポートプロトコルをサポートしており、それぞれ異なるネットワーク環境向けに設計されています。
| トランスポート | プロトコル | ポート | ユースケース |
|---|---|---|---|
| MQTT | SSL / TCP | 443 | インターネットに直接アクセスできる標準的なネットワーク |
| MQTT over WebSocket | WebSocket Secure (TCP) | 443 | 透過型プロキシや SSL インスペクションのあるネットワーク |
WebSocket トランスポートの場合:
# Linux & Windows
sdaglue config set --iot.transport websocket
# Docker
docker exec glue sdaglue config set --iot.transport websocket
標準的な MQTT トランスポートの場合:
# Linux & Windows
sdaglue config set --iot.transport mqtt
# Docker
docker exec glue sdaglue config set --iot.transport mqtt
サービスがすでにログイン済みで接続されている場合、新しいトランスポートプロトコルは次回のサービス再起動後に初めて有効になります。
WebSocket トランスポートを使用すべき場合
透過型プロキシ: 一部の企業ネットワークでは、ネットワークトラフィックを傍受して解析する透過型プロキシが使用されています。これらのプロキシは標準的な MQTT SSL 接続を妨げることがありますが、通常 WebSocket 接続は問題なく通過できます。
制限の厳しいファイアウォール: ディープパケットインスペクションや厳格なプロトコルフィルタリングを行うネットワークでは、MQTT トラフィックがブロックされる一方で、標準的なウェブトラフィックに類似して見える WebSocket 接続は許可される場合があります。
企業のネットワークポリシー: HTTP 以外のプロトコルを制限するポリシーを持つ組織もあり、コンプライアンスの観点から WebSocket トランスポートが推奨される選択肢となります。
プロキシサーバー
ネットワークがすべてのインターネットトラフィックを特定のプロキシサーバー経由にすることを要求する場合、SDA Cloud サービスとの接続を確立するために SDA Glue にプロキシ情報を設定する必要があります。これは、セキュリティ上の理由からインターネットへの直接アクセスが制限されている企業環境では特に一般的です。
プロキシアドレスは標準的な形式に従います: scheme://username:password@hostname:port
- スキーム: 通常は
http://またはhttps:// - ユーザー名/パスワード: 認証情報(プロキシで必要な場合)
- ホスト名: プロキシサーバーのアドレス
- ポート: プロキシサーバーのポート番号
SDA Glue の通信要件を完全にカバーするため、HTTP と HTTPS の両方のプロキシ設定を構成する必要があります。
プロキシサーバーが認証を必要としない場合は、ユーザー名とパスワードを省略するだけです。
proxy_server="http://proxy.company.com:8080"
Linux
proxy_server="http://username:password@proxy.company.com:8080"
sdaglue config set --proxy.http=$proxy_server --proxy.https=$proxy_server
# Restart the service to apply changes
sdaglue service restart
Docker
proxy_server="http://username:password@proxy.company.com:8080"
docker exec glue sdaglue config set --proxy.http=$proxy_server --proxy.https=$proxy_server
# Restart the container to apply changes
docker restart glue
Windows
$ProxyServer="http://username:password@proxy.company.com:8080"
sdaglue.exe config set --proxy.http=$ProxyServer --proxy.https=$ProxyServer
# Restart the service to apply changes
sdaglue.exe service restart
よくある問題
透過型プロキシのある企業ネットワーク
問題: ゲートウェイは最初に接続するものの、頻繁に切断される、または接続が不安定になる。
解決策: WebSocket トランスポートプロトコルに切り替えます。
制限の厳しいファイアウォール環境
問題: ゲートウェイが SDA Cloud サービスへの初回接続を確立できない。
解決策: WebSocket トランスポートを設定し、ポート 443 での送信 HTTPS 接続が許可されていることを確認します。
認証が必要なプロキシサーバー
問題: 認証が必要な企業プロキシ経由でゲートウェイが接続できない。
解決策: 適切な認証情報を含めて両方のプロキシ設定を構成し、サービスを再起動します。
これらの設定オプションを適切に構成することで、SDA Glue サービスはネットワーク環境に適応し、SDA Cloud サービスへの信頼性の高い接続を維持して、産業用デバイスへのセキュアなアクセスを実現します。