Microsoft Tunnel ゲートウェイのコマンドライン リファレンス

このリファレンスの Microsoft Tunnel Gateway の情報は、ご利用の環境でのトンネルのインストールとメンテナンスをサポートするために提供されています。

Microsoft Tunnel ゲートウェイ用の mst-cli コマンドライン ツール

Mst-cli は、Microsoft Tunnel ゲートウェイで使用するためのコマンドライン ツールです。 このツールは、トンネルのインストールが完了した後、Linuxサーバーで使用可能で、/usr/sbin/mst-cliにあります。 このツールを使用して完了できるタスクには、次のようなものがあります。

  • トンネル サーバーに関する情報を取得します。
  • トンネル サーバーの構成を設定または更新します。
  • トンネル サーバーを再起動します。
  • トンネル サーバーをアンインストールします。

このツールの一般的なコマンド ラインの使用方法を次に示します。

コマンドライン インターフェイス:

  • mst-cli –help - 使用法: mst-cli [コマンド]

    コマンド

    • agent - エージェント・コンポーネントを操作します。
    • server - サーバー・コンポーネントで操作します。
    • uninstall - Microsoft トンネルをアンインストールします。
    • eula - End-User 使用許諾契約書(EULA)を表示してください。
    • import_cert - TLS 証明書をインポートまたは更新します。
  • mst-cli agent –help - 使用法: mst-cli エージェント [コマンド]

    コマンド:

    • logs - エージェントのログを表示します。 (詳細については、 -h を使用します。)
    • status - エージェントのステータスを表示します。
    • start - エージェント・サービスを開始します。
    • stop - エージェントサービスを停止します。
    • restart - エージェント・サービスを再開します。
  • mst-cli agent logs help - 使用法: mst-cli エージェント ログ [フラグ]

    フラグ:

    • -f, --follow - ログ出力をフォローします。 既定値は false です。
    • --since string - TIMESTAMP 以降のログを表示します。
    • --tail uint - ログの最後に指定された数のLINESを出力します。 既定値はゼロ (0) で、すべての行を印刷します。
    • -t, --timestamps - タイムスタンプをログに出力します。
  • mst-cli agent status - 以下の戻り値は、表示される可能性のある結果の例です。

    • 状態: 実行中
    • 正常性: 正常
  • mst-cli agent start - エージェントが停止している場合はエージェントを開始します。

  • mst-cli agent stop - エージェントを停止します。 停止後に手動で開始する必要があります。

  • mst-cli agent restart - エージェントを再起動します。

  • mst-cli server --help - 使用法: mst-cli server [command]

    コマンド:

    • logs - サーバーログを表示します。 詳細については、 -h を使用してください。
    • status - サーバーの状態を表示します。
    • start - サーバー・サービスを開始します。
    • stop - サーバーサービスを停止します。
    • restart - サーバー・サービスを再始動します。
    • show - さまざまなサーバー統計を表示します。詳細については、 -h を使用してください。
  • mst-cli server logs –help - 使用法: mst-cli サーバー ログ [フラグ]

    フラグ:

    • -f, --follow - ログ出力をフォローします。 既定値は false です。
    • --since string - TIMESTAMP 以降のログを表示
    • --tail uint - ログの最後に指定された数のLINESを出力します。 既定値はゼロ (0) で、すべての行を印刷します。
    • -t, --timestamps - タイムスタンプをログに出力します。
  • mst-cli server status - 以下の戻り値は、表示される可能性のある結果の例です。

    • 状態: 実行中
    • 正常性: 正常
  • mst-cli server start - サーバーが停止している場合にサーバーを起動します。

  • mst-cli server stop - サーバーを停止します。 停止後に手動で開始する必要があります。

  • mst-cli server restart - サーバーを再起動します。

  • mst-cli server show

    • show status - サーバーの状態と統計情報を印刷します。
    • show users - 接続されているユーザーを印刷します。
    • show ip bans - 禁止された IP アドレスを出力します。
    • show ip ban points - ポイントを持つすべての既知の IP アドレスを出力します。
    • show iroutes - サーバーのユーザーによって提供されたルートを出力します。
    • show sessions all - すべてのセッション ID を出力します。
    • show sessions valid - 再接続セッションに有効なすべての値を出力します。
    • show session [SID] - 指定されたセッションに関する情報を出力します。
    • show user [NAME] - 指定されたユーザーに関する情報を印刷します。
    • show id [ID] - 指定したIDの情報を印刷します。
    • show events - ユーザーの接続に関する情報を提供します。
    • show cookies all - show sessions all のエイリアス。
    • show cookies valid - ショー セッションのエイリアスが有効です。

環境変数

Linux サーバーに Microsoft Tunnel Gateway ソフトウェアをインストールするときに構成する必要がある環境変数を次に示します。 これらの変数は、環境ファイル /etc/mstunnel/env.sh にあります。

  • http_proxy=[address] - プロキシ サーバーの HTTP アドレス。
  • https_proxy=[address] - プロキシ サーバーの HTTPs アドレス。

データ パス

パス/ファイル 説明 アクセス許可
/.../mstunnel すべての構成のルート ディレクトリ。 所有者ルート、グループ mstunnel
/.../mstunnel/admin-settings.json サーバー インストールの設定が含まれます。  このファイルは Intune によって管理されるため、手動で編集しないでください
/.../mstunnel/certs TLS 証明書が保存されているディレクトリ。  所有者ルート、グループ mstunnel
/.../mstunnel/private Intune エージェント証明書と TLS 秘密キーが格納されるディレクトリ。  所有者ルート、グループ mstunnel

サーバーのインストール中に Files add

/etc/mstunnel:

  • admin-settings.json:

    • Intune からシリアル化されたサーバー構成が含まれています。
    • サーバーの登録後に作成されます。
  • agent-info.json:

    • 登録が完了すると作成されます。
    • AgentId、IntuneTenantId、AADTenantId、およびエージェント証明書 RenewalDate。
    • エージェント証明書の更新について更新。
  • private/agent.p12:

    • Intune へのエージェント認証に使用される PFX 証明書。
    • 自動的に更新されます。
  • version-info.json:

    • さまざまなコンポーネントのバージョン情報が含まれています。
    • ConfigVersion、DockerVersion、AgentImageHash、AgentCreateDate、ServerImageHash、ServerCreateDate。
  • ocserv.conf:

    • サーバー構成
  • Images_configured

コンテナーの作成に使用される Docker イメージ:

  • agentImageDigest
  • serverImageDigest

admin-settings.json例

{
"PolicyName": "Auto Generated Policy for rh7vm",
   "DisplayName": "rh7vm Policy",
   "Description": "This policy was auto generated for rh7vm",
   "Network": "169.100.0.0/16",
   "DNSServers": ["168.63.129.16"],
   "DefaultDomainSuffix": "nmqjwlanybmubp4imht0k2b4qd.xx.internal.cloudapp.net",
   "RoutesInclude": ["default"],
   "RoutesExclude": [],
   "ListenPort": 443
}
管理設定 説明
PolicyName 設定ポリシーの名前。 名前を選択できます。
DisplayName 短い表示名。 名前を選択できます。
説明 ポリシーの説明。 説明を選択できます。
Network クライアントに仮想アドレスを割り当てるために使用されるネットワークとマスク。 競合がない限り、この設定を変更する必要はありません。 この設定では、最大 64,000 のクライアントがサポートされます。
DNSServers クライアントが使用する必要のある DNS サーバーのリスト。 これらのサーバーは、内部リソースのアドレスを解決できます。
DefaultDomainSuffix リソースを解決しようとするときにクライアントがホスト名に追加するドメイン サフィックス。
RoutesInclude VPN 経由でルーティングされるルートの一覧。 デフォルトはすべてのルートです。
RoutesExclude VPN をバイパスする必要があるルートの一覧。
ListenPort VPN サーバーがトラフィックを受信するポート。

Docker コマンド

以下は、トンネル サーバー上の問題を調査する必要がある場合に役立つ Docker の一般的なコマンドです。

注:

ほとんどの Linux ディストリビューションは Docker を使用します。 ただし、Red Hat Enterprise Linux (RHEL) 8.4 など、Docker をサポートしていないものもあります。 代わりに、これらのディストリビューションは Podman を使用します。 サポートされているディストリビューションとそれぞれの Docker または Podman の要件の詳細については、Linux サーバーを参照してください。

Docker 用に記述された参照とコマンドラインは、 dockerpodman に置き換えることで Podman で使用できます。

コマンドライン インターフェイス:

  • docker ps –a - すべてのコンテナーを表示します。

    • mstunnel-server – このコンテナーは、 ocserv サーバーコンポーネントを実行し、受信ポート443 (デフォルト)またはカスタムポート構成を使用します。
    • mstunnel-agent - このコンテナーは Intune コネクタを実行し、送信ポート 443 を使用します。
  • Docker を再起動するには:

    • systemctl restart docker
  • コンテナーで何かを実行するには:

    • docker exec –it mstunnel-server bash
    • docker exec –it mstunnel-agent bash

Podman コマンド

以下は、トンネル・サーバー上の問題を調査する必要がある場合に役立つ Podman のコマンドです。 Podman で使用できるその他のコマンドについては、 Docker コマンド を参照してください。

  • sudo podman images - 実行中のすべてのコンテナーを一覧表示します。
  • sudo podman stats - コンテナーの CPU 使用率、MEM 使用率、ネットワーク、およびブロック IO を表示します。
  • sudo podman port mstunnel-server- tunnel-server からローカル Linux ホストへのポート マッピングを一覧表示します。

Linux コマンド

トンネル サーバーで使用する可能性のある一般的な Linux コマンドを次に示します。

  • sudo su – ボックスに root を持たせます。 次のコマンドを実行する前、および mstunnel-setup を実行する前に、このコマンドを使用します。

  • ls – ディレクトリの内容を一覧表示します。

  • ls – l – タイムスタンプを含むディレクトリの内容を一覧表示します。

  • cd – 別のディレクトリに変更します。 たとえば、cd /etc/test/stuff はルート ディレクトリから etc サブフォルダー、> test サブフォルダー >、そして stuff フォルダーに変更します。

  • cp <source> <destination> - 証明書を正しい場所にコピーするのに便利です。

  • ln –s <source> <target> - ソフトリンクを作成します。

  • curl <URL> – Web サイトへのアクセスをチェックします。 例: curl https://microsoft.com

  • ./<filename> - スクリプトを実行します。

ip_tables を手動でロードする

次のコマンドを使用して、Linux サーバーのカーネルip_tablesチェックし、必要に応じて手動で読み込みます。 sudo コンテキストを使用します。

  • サーバー上の ip_tables の存在を検証します。lsmod |grep ip_tables
  • サーバーの起動時にカーネルにip_tablesを読み込む構成ファイルを作成します。 echo ip_tables > /etc/modules-load.d/mstunnel_iptables.conf
  • ip_tablesをすぐにカーネルに読み込むには: /sbin/modprobe ip_tables