SEW ゲートウェイ要件
オペレーティングシステム
Linux
Linux 向け SDA Glue サービスは SoftEther VPN Client を基盤としており、ネイティブの Linux IP スタックと iptables をファイアウォール管理に利用します。本サービスは他の Linux ディストリビューションでも動作する可能性はありますが、Red Hat Enterprise Linux のような nftables ベースのシステムでは十分なテストが行われていません。最適な互換性とサポートを得るため、Debian ベースのディストリビューションへのゲートウェイの導入を強く推奨します。
システム要件:
- アーキテクチャ: ARM、ARM64、i386 または AMD64
- CPU およびメモリ: 最低 1 GHz デュアルコアプロセッサおよび 512 MB RAM
- サービス管理: systemd
- カーネルバージョン: 5.6 以降
- ディストリビューション: Debian または Ubuntu ベースのディストリビューション
- 依存関係: SoftEther VPN Client(セットアップ時に自動インストール)、OpenVPN(オプション、手動インストールが必要)
Windows
SDA Glue の Windows 実装では OpenVPN Community Client を利用し、ネットワーク機能のために Windows Network Address Translation(WinNAT/NetNat)に依存します。WinNAT はすべての Windows バージョンでデフォルトで有効になっているとは限らず、手動での有効化が必要な場合があることにご注意ください。
システム要件:
- オペレーティングシステム: Windows 10 Professional/Enterprise または Windows Server 2016 以降
- アーキテクチャ: ARM、ARM64、i386 または AMD64
- CPU およびメモリ: 最低 2 GHz デュアルコアプロセッサおよび 2 GB RAM
- 権限: ネットワークリソースを管理するため、サービスには昇格された権限が必要です
- 依存関係: OpenVPN Community Client(セットアップ時に自動インストール)
- ネットワーク機能: WinNAT/NetNat(下記の構成手順を参照)
WinNAT の確認
システムで WinNAT 機能が有効になっているかを確認するには:
- PowerShell を管理者として開きます
- 次のコマンドを実行します:
Get-NetNat
想定される結果:
- 機能が有効: コマンドが正常に実行されます(NAT 構成が存在しない場合は空の結果が返ることがあります)
- 機能が無効: 「Get-NetNat : Invalid class」というエラーメッセージが表示されます
WinNAT の有効化
WinNAT が有効になっていない場合は、次の手順で有効化してください:
- PowerShell を管理者として開きます
- 次のコマンドを実行します:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux -NoRestart
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -NoRestart
- 正常に実行された後、コンピューターを再起動します
- 再度
Get-NetNatを実行して有効化を確認します
Docker と Kubernetes
SDA Glue は、VPN 機能を有効にするための特定の構成要件を満たすことで、コンテナ化された環境にも導入できます。本サービスは、セキュアなトンネルを確立するために、ホストの TUN デバイスへのアクセスとネットワーク管理機能を必要とします。
システム要件:
- ホストアーキテクチャ: ARM64 または AMD64
- TUN デバイスへのアクセス:
--device=/dev/net/tun— 仮想ネットワークトンネルインターフェースへのアクセス - ネットワーク機能:
--cap-add=NET_ADMIN— ネットワークインターフェースの構成およびルーティング管理
TUN デバイス(/dev/net/tun): TUN インターフェースは、ネットワークスタックのレイヤー 3(IP レベル)で動作する仮想ネットワークデバイスであり、VPN クライアントがセキュアなトンネルを確立するために一般的に使用されます。VPN クライアントは、TUN デバイスを使用してデータを暗号化し、トンネル経由で VPN サーバーへ転送します。このデバイスにアクセスできない場合、コンテナ化された SDA Glue は接続に必要なネットワークトンネルを作成できません。
NET_ADMIN ケーパビリティ: この Linux ケーパビリティにより、コンテナはインターフェースの構成、ルーティングテーブルの変更、ファイアウォール管理などのネットワーク関連操作を実行できます。VPN コンテナは、ネットワークリソースを管理し、SEW クラウドサービスとのセキュアな通信のための適切なルーティングを確立するために、NET_ADMIN ケーパビリティを必要とします。
docker run -d \
--name glue \
--restart always \
--device=/dev/net/tun \
-p 8080:8080 \
-v glue-data:/var/lib/sdaglue \
--cap-add=NET_ADMIN \
public.ecr.aws/t9c5s2d1/sdaglue:latest