Freigeben über


Referenz für Microsoft Tunnel Gateway

Die Informationen in dieser Referenz für Microsoft Tunnel Gateway werden bereitgestellt, um die Installation und Wartung der Tunnelinstallation in Ihrer Umgebung zu unterstützen.

mst-cli-Befehlszeilentool für Microsoft Tunnel Gateway

Mst-cli ist ein Befehlszeilentool für die Verwendung mit Microsoft Tunnel Gateway. Dieses Tool ist nach Abschluss der Installation des Tunnels auf dem Linux-Server verfügbar und befindet sich unter /usr/sbin/mst-cli. Zu den Aufgaben, die Sie mit diesem Tool ausführen können, gehören:

  • Rufen Sie Informationen zum Tunnelserver ab.
  • Legen Sie die Konfiguration des Tunnelservers fest oder aktualisieren Sie sie.
  • Starten Sie den Tunnelserver neu.
  • Deinstallieren Sie den Tunnelserver.

Im Folgenden finden Sie allgemeine Befehlszeilenverwendungen des Tools.

Befehlszeilenschnittstelle:

  • mst-cli –help – Verwendung: mst-cli [Befehl]

    Befehle:

    • agent – Arbeiten Sie mit der Agent-Komponente.
    • server – Arbeiten Sie mit der Serverkomponente.
    • uninstall – Deinstallieren Sie Microsoft Tunnel.
    • eula - Zeigen Sie die Lizenzbedingungen an.
    • import_cert – Importieren oder Aktualisieren des TLS-Zertifikats.
  • mst-cli agent –help - Verwendung: mst-cli-Agent [Befehl]

    Befehle:

    • logs – Anzeigen der Agent-Protokolle (-h für weitere Informationen).
    • status– Zeigt die agent-status an.
    • start – Starten Sie den Agent-Dienst.
    • stop – Beenden Sie den Agent-Dienst.
    • restart – Starten Sie den Agent-Dienst neu.
  • mst-cli agent logs help - Verwendung: mst-cli-Agentprotokolle [Flags]

    Flaggen:

    • -f, --follow – Protokollausgabe folgen. Der Standardwert ist „false“.
    • --since string – Protokolle seit TIMESTAMP anzeigen.
    • --tail uint – Gibt die angegebene Anzahl von ZEILEN am Ende der Protokolle aus. Der Standardwert ist null (0), wodurch alle Zeilen gedruckt werden.
    • -t, --timestamps – Gibt die Zeitstempel im Protokoll aus.
  • mst-cli agent status – Die folgenden Rückgaben sind Beispiele für Ergebnisse, die möglicherweise angezeigt werden:

    • Status: wird ausgeführt
    • Gesundheit: gesund
  • mst-cli agent start – Startet den Agent, wenn er beendet wurde.

  • mst-cli agent stop – Beendet den Agent. Muss nach dem Beenden manuell gestartet werden.

  • mst-cli agent restart – Startet den Agent neu.

  • mst-cli server --help – Verwendung: mst-cli-Server [Befehl]

    Befehle:

    • logs – Zeigt die Serverprotokolle an. Verwenden Sie -h für weitere Informationen.
    • status– Zeigt die status des Servers an.
    • start – Starten Sie den Serverdienst.
    • stop – Beenden Sie den Serverdienst.
    • restart – Starten Sie den Serverdienst neu.
    • show – Zeigt verschiedene Serverstatistiken an. Verwenden Sie -h für weitere Informationen.
  • mst-cli server logs –help – Verwendung: mst-cli-Serverprotokolle [Flags]

    Flaggen:

    • -f, --follow – Protokollausgabe folgen. Der Standardwert ist „false“.
    • --since string – Protokolle seit TIMESTAMP anzeigen
    • --tail uint – Gibt die angegebene Anzahl von ZEILEN am Ende der Protokolle aus. Der Standardwert ist null (0), wodurch alle Zeilen gedruckt werden.
    • -t, --timestamps – Gibt die Zeitstempel im Protokoll aus.
  • mst-cli server status – Die folgenden Rückgaben sind Beispiele für Ergebnisse, die möglicherweise angezeigt werden:

    • Status: wird ausgeführt
    • Gesundheit: gesund
  • mst-cli server start – Startet den Server, wenn er beendet wurde.

  • mst-cli server stop – Beendet den Server. Muss nach dem Beenden manuell gestartet werden.

  • mst-cli server restart – Startet den Server neu.

  • mst-cli server show

    • show status– Gibt die status und Statistiken des Servers aus.
    • show users – Druckt die verbundenen Benutzer.
    • show ip bans – Gibt die gesperrten IP-Adressen aus.
    • show ip ban points – Gibt alle bekannten IP-Adressen mit Punkten aus.
    • show iroutes – Gibt die routen aus, die von Benutzern des Servers bereitgestellt werden.
    • show sessions all – Gibt alle Sitzungs-IDs aus.
    • show sessions valid – Gibt alle gültigen für Sitzungen zur Wiederherstellung der Verbindung aus.
    • show session [SID] – Gibt Informationen für die angegebene Sitzung aus.
    • show user [NAME] – Druckt Informationen für den angegebenen Benutzer.
    • show id [ID] – Druckt Informationen auf der angegebenen ID.
    • show events – Stellt Informationen zum Verbinden von Benutzern bereit.
    • show cookies all - Alias für alle Anzeigen von Sitzungen.
    • show cookies valid - Alias für Showsitzungen gültig.

Umgebungsvariablen

Im Folgenden sind Umgebungsvariablen aufgeführt, die Sie bei der Installation der Microsoft Tunnel Gateway-Software auf dem Linux-Server konfigurieren möchten. Diese Variablen befinden sich in der Umgebungsdatei /etc/mstunnel/env.sh:

  • http_proxy=[address] – Die HTTP-Adresse für Ihren Proxyserver.
  • https_proxy=[address] – Die HTTPs-Adresse für Ihren Proxyserver.

Datenpfade

Pfad/Datei Beschreibung Berechtigungen
/.../mstunnel Das Stammverzeichnis für die gesamte Konfiguration. Besitzerstamm, Gruppe mstunnel
/.../mstunnel/admin-settings.json Enthält die Einstellungen für die Serverinstallation.  Intune verwaltet diese Datei und sollte nicht manuell bearbeitet werden.
/.../mstunnel/certs Das Verzeichnis, in dem das TLS-Zertifikat gespeichert ist.  Besitzerstamm, Gruppe mstunnel
/.../mstunnel/private Das Verzeichnis, in dem das zertifikat des Intune-Agents und der private TLS-Schlüssel gespeichert sind.  Besitzerstamm, Gruppe mstunnel

Dateien werden während der Serverinstallation hinzugefügt

/etc/mstunnel:

  • admin-settings.json:

    • Enthält die serialisierte Serverkonfiguration aus Intune.
    • Wird erstellt, nachdem der Server registriert wurde.
  • agent-info.json:

    • Wird erstellt, wenn die Registrierung abgeschlossen ist.
    • AgentId, IntuneTenantId, AADTenantId und das Agentzertifikat RenewalDate.
    • Aktualisiert bei der Verlängerung des Agent-Zertifikats.
  • private/agent.p12:

    • PFX-Zertifikat, das für die Agent-Authentifizierung verwendet wird, um Intune.
    • Automatisch verlängert.
  • version-info.json:

    • Enthält Versionsinformationen für die verschiedenen Komponenten.
    • ConfigVersion, DockerVersion, AgentImageHash, AgentCreateDate, ServerImageHash, ServerCreateDate.
  • ocserv.conf:

    • Serverkonfiguration
  • Images_configured

Die Docker-Images, die zum Erstellen der Container verwendet werden:

  • agentImageDigest
  • serverImageDigest

Beispiel für 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
}
Admin-Einstellung Beschreibung
PolicyName Der Name der Einstellungsrichtlinie. Sie können den Namen auswählen.
DisplayName Der kurze Anzeigename. Sie können den Namen auswählen.
Beschreibung Die Beschreibung der Richtlinie. Sie können die Beschreibung auswählen.
Netzwerk Das Netzwerk und die Maske, die zum Zuweisen von virtuellen Adressen für Clients verwendet wird. Dies muss sich nur ändern, wenn ein Konflikt vorliegt. Diese Einstellung unterstützt bis zu 64.000 Clients.
DNSServer Die Liste der DNS-Server, die der Client verwenden soll. Diese Server können die Adressen interner Ressourcen auflösen.
DefaultDomainSuffix Das Domänensuffix, das ein Client beim Auflösen von Ressourcen an den Hostnamen anhängt.
RoutenEinschließen Die Liste der Routen, die über das VPN weitergeleitet werden. Die Standardeinstellung sind alle Routen.
RoutesExclude Die Liste der Routen, die das VPN umgehen sollen.
ListenPort Der Port, an dem der VPN-Server Datenverkehr empfängt.

Docker-Befehle

Im Folgenden finden Sie allgemeine Befehle für Docker, die von Nutzen sein können, wenn Sie Probleme auf einem Tunnelserver untersuchen müssen.

Hinweis

Die meisten Linux-Distributionen verwenden Docker. Einige wie Red Hat Enterprise Linux (RHEL) 8.4 unterstützen Docker jedoch nicht. Stattdessen verwenden diese Verteilungen Podman. Weitere Informationen zu unterstützten Distributionen und den jeweiligen Docker- oder Podman-Anforderungen finden Sie unter Linxu-Server.

Die Verweise und Befehlszeilen, die für Docker geschrieben sind, können mit Podman verwendet werden, indem Docker durch podman ersetzt wird.

Befehlszeilenschnittstelle:

  • docker ps –a – Alle Container anzeigen.

    • mstunnel-server : Dieser Container führt die ocserv-Serverkomponenten aus und verwendet eingehenden Port 443 (Standard) oder eine benutzerdefinierte Portkonfiguration.
    • mstunnel-agent: Dieser Container führt den Intune Connector aus und verwendet ausgehenden Port 443.
  • So starten Sie Docker neu:

    • systemctl restart docker
  • So führen Sie etwas in einem Container aus:

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

Podman-Befehle

Im Folgenden finden Sie Befehle für Podman, die von Nutzen sein können, wenn Sie Probleme auf einem Tunnelserver untersuchen müssen. Weitere Befehle, die Sie mit Podman verwenden können, finden Sie unter Docker-Befehle.

  • sudo podman images – Listet alle ausgeführten Container auf.
  • sudo podman stats – Anzeigen der CPU-Auslastung des Containers, der MEM-Nutzung, des Netzwerks und der Block-E/A.
  • sudo podman port mstunnel-server – Listet die Portzuordnungen von tunnel-server zum lokalen Linux-Host auf.

Linux-Befehle

Im Folgenden finden Sie allgemeine Linux-Befehle, die Sie mit einem Tunnelserver verwenden können.

  • sudo su – Macht Sie root auf der Box. Verwenden Sie diesen Befehl, bevor Sie die folgenden Befehle ausführen und bevor Sie mstunnel-setup ausführen.

  • ls – Listet den Inhalt des Verzeichnisses auf.

  • ls – l – Listet den Inhalt des Verzeichnisses auf, einschließlich Zeitstempeln.

  • cd – Wechsel in ein anderes Verzeichnis. cd /etc/test/stuff Beispielsweise wechselt Sie aus dem Stammverzeichnis in den Unterordner >etc in den Unterordner> test und dann in den Ordner stuff.

  • cp <source> <destination> – Nützlich zum Kopieren der Zertifikate an den richtigen Speicherort.

  • ln –s <source> <target> – Erstellen sie einen Softlink.

  • curl <URL> – Überprüft den Zugriff auf eine Website. Beispiel: curl https://microsoft.com

  • ./<filename> – Ausführen eines Skripts.

Laden Sie ip_tables manuell

Verwenden Sie die folgenden Befehle, um ip_tables im Linux-Serverkernels zu überprüfen und ggf. manuell zu laden. Verwenden Sie den sudo-Kontext:

  • Überprüfen Sie, ob ip_tables auf dem Server vorhanden sind: lsmod |grep ip_tables

  • Erstellen Sie eine Konfigurationsdatei, die die ip_tables beim Starten des Servers in den Kernel lädt: echo ip_tables > /etc/modules-load.d/mstunnel_iptables.conf

  • So laden Sie ip_tables sofort in den Kernel: /sbin/modprobe ip_tables