Partager via


Informations de référence sur Microsoft Tunnel Gateway

Les informations contenues dans cette référence pour Microsoft Tunnel Gateway sont fournies pour prendre en charge l’installation et la maintenance de l’installation du tunnel dans votre environnement.

Outil en ligne de commande mst-cli pour Microsoft Tunnel Gateway

Mst-cli est un outil en ligne de commande qui peut être utilisé avec Microsoft Tunnel Gateway. Cet outil est disponible sur le serveur Linux une fois l’installation du tunnel terminée et se trouve à l’adresse /usr/sbin/mst-cli. Voici quelques tâches que vous pouvez effectuer à l’aide de cet outil :

  • Obtenez des informations sur le serveur tunnel.
  • Définissez ou mettez à jour la configuration du serveur tunnel.
  • Redémarrez le serveur tunnel.
  • Désinstallez le serveur tunnel.

Voici les utilisations courantes de la ligne de commande de l’outil.

Interface de ligne de commande :

  • mst-cli –help - Utilisation : mst-cli [command]

    Commandes :

    • agent - Fonctionner sur le composant de l’agent.
    • server - Fonctionner sur le composant serveur.
    • uninstall - Désinstallez Microsoft Tunnel.
    • eula - Afficher le CLUF.
    • import_cert - Importez ou mettez à jour le certificat TLS.
  • mst-cli agent –help - Utilisation : agent mst-cli [command]

    Commandes :

    • logs - Afficher les journaux de l’agent (-h pour plus d’informations).
    • status - Afficher l’état de l’agent.
    • start - Démarrez le service de l’agent.
    • stop - Arrêtez le service de l’agent.
    • restart - Redémarrez le service de l’agent.
  • mst-cli agent logs help - Utilisation : journaux de l’agent mst-cli [indicateurs]

    Drapeaux:

    • -f, --follow - Suivez la sortie du journal. La valeur par défaut est false.
    • --since string - Afficher les journaux depuis TIMESTAMP.
    • --tail uint - Sortie du nombre spécifié de LIGNES à la fin des journaux. La valeur par défaut est zéro (0), ce qui imprime toutes les lignes.
    • -t, --timestamps - Sortie des horodatages dans le journal.
  • mst-cli agent status - Les retours suivants sont des exemples de résultats que vous pouvez voir :

    • État : exécution
    • Santé : sain
  • mst-cli agent start - Démarre l’agent s’il est arrêté.

  • mst-cli agent stop - Arrête l’agent. Doit être démarré manuellement après l’arrêt.

  • mst-cli agent restart - Redémarre l’agent.

  • mst-cli server --help - Utilisation : serveur mst-cli [commande]

    Commandes :

    • logs - Afficher les journaux du serveur. Utilisez -h pour plus d’informations.
    • status - Afficher l’état du serveur.
    • start - Démarrez le service serveur.
    • stop - Arrêtez le service serveur.
    • restart - Redémarrez le service serveur.
    • show - Afficher les différentes statistiques du serveur. Utilisez -h pour plus d’informations.
  • mst-cli server logs –help - Utilisation : journaux du serveur mst-cli [indicateurs]

    Drapeaux:

    • -f, --follow - Suivez la sortie du journal. La valeur par défaut est false.
    • --since string - Afficher les journaux depuis TIMESTAMP
    • --tail uint - Sortie du nombre spécifié de LIGNES à la fin des journaux. La valeur par défaut est zéro (0), ce qui imprime toutes les lignes.
    • -t, --timestamps - Sortie des horodatages dans le journal.
  • mst-cli server status - Les retours suivants sont des exemples de résultats que vous pouvez voir :

    • État : exécution
    • Santé : sain
  • mst-cli server start - Démarre le serveur s’il est arrêté.

  • mst-cli server stop - Arrête le serveur. Doit être démarré manuellement après l’arrêt.

  • mst-cli server restart - Redémarre le serveur.

  • mst-cli server show

    • show status - Imprime l’état et les statistiques du serveur.
    • show users - Imprime les utilisateurs connectés.
    • show ip bans - Imprime les adresses IP interdites.
    • show ip ban points - Imprime toutes les adresses IP connues qui ont des points.
    • show iroutes - Imprime les itinéraires fournis par les utilisateurs du serveur.
    • show sessions all - Imprime tous les ID de session.
    • show sessions valid - Imprime tous les éléments valides pour les sessions de reconnexion.
    • show session [SID] - Imprime les informations sur la session spécifiée.
    • show user [NAME] - Imprime les informations sur l’utilisateur spécifié.
    • show id [ID] - Imprime les informations sur l’ID spécifié.
    • show events - Fournit des informations sur la connexion des utilisateurs.
    • show cookies all - Alias pour afficher toutes les sessions.
    • show cookies valid - Alias pour les sessions d’affichage valides.

Variables d’environnement

Voici les variables d’environnement que vous souhaiterez peut-être configurer lorsque vous installez le logiciel Microsoft Tunnel Gateway sur le serveur Linux. Ces variables se trouvent dans le fichier d’environnement /etc/mstunnel/env.sh :

  • http_proxy=[address] : adresse HTTP de votre serveur proxy.
  • https_proxy=[address] : adresse HTTPs de votre serveur proxy.

Chemins d’accès aux données

Chemin d’accès/fichier Description Autorisations
/.../mstunnel Répertoire racine de toutes les configurations. Racine du propriétaire, groupe mstunnel
/.../mstunnel/admin-settings.json Contient les paramètres de l’installation du serveur.  Intune gère ce fichier et ne doit pas être modifié manuellement.
/.../mstunnel/certs Répertoire dans lequel le certificat TLS est stocké.  Racine du propriétaire, groupe mstunnel
/.../mstunnel/private Répertoire dans lequel le certificat de l’agent Intune et la clé privée TLS sont stockés.  Racine du propriétaire, groupe mstunnel

Ajout de fichiers lors de l’installation du serveur

/etc/mstunnel :

  • admin-settings.json :

    • Contient la configuration de serveur sérialisée à partir d’Intune.
    • Créé après l’inscription du serveur.
  • agent-info.json :

    • Créé lorsque l’inscription est terminée.
    • AgentId, IntuneTenantId, AADTenantId et le certificat d’agent RenewalDate.
    • Mise à jour lors du renouvellement du certificat de l’agent.
  • private/agent.p12 :

    • Certificat PFX utilisé pour l’authentification de l’agent auprès d’Intune.
    • Renouvellement automatique.
  • version-info.json :

    • Contient des informations de version pour les différents composants.
    • ConfigVersion, DockerVersion, AgentImageHash, AgentCreateDate, ServerImageHash, ServerCreateDate.
  • ocserv.conf :

    • Configuration du serveur
  • Images_configured

Images Docker utilisées pour créer les conteneurs :

  • agentImageDigest
  • serverImageDigest

Exemple de 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
}
Paramètre d’administration Description
PolicyName Nom de la stratégie de paramètres. Vous pouvez choisir le nom.
DisplayName Nom d’affichage court. Vous pouvez choisir le nom.
Description Description de la stratégie. Vous pouvez choisir la description.
Réseau Le réseau et le masque utilisés pour attribuer des adresses virtuelles de clients. Cela n’a pas besoin de changer, sauf si vous avez un conflit. Ce paramètre prend en charge jusqu’à 64 000 clients.
Serveurs DNS Liste des serveurs DNS que le client doit utiliser. Ces serveurs peuvent résoudre les adresses des ressources internes.
DefaultDomainSuffix Suffixe de domaine qu’un client ajoute au nom d’hôte lors de la tentative de résolution des ressources.
RoutesInclude Liste des itinéraires routés via le VPN. La valeur par défaut est tous les itinéraires.
RoutesExclude Liste des itinéraires qui doivent contourner le VPN.
ListenPort Port sur lequel le serveur VPN reçoit le trafic.

Commandes Docker

Voici des commandes courantes pour Docker qui peuvent être utilisées si vous devez examiner les problèmes sur un serveur tunnel.

Remarque

La plupart des distributions Linux utilisent Docker. Toutefois, certains comme Red Hat Enterprise Linux (RHEL) 8.4 ne prennent pas en charge Docker. Au lieu de cela, ces distributions utilisent Podman. Pour plus d’informations sur les distributions prises en charge et les exigences docker ou podman de chacune d’elles, consultez Serveurs Linxu.

Les références et les lignes de commande écrites pour Docker peuvent être utilisées avec Podman en remplaçant docker par podman.

Interface de ligne de commande :

  • docker ps –a : voir tous les conteneurs.

    • mstunnel-server : ce conteneur exécute les composants du serveur ocserv et utilise le port entrant 443 (par défaut) ou une configuration de port personnalisée.
    • mstunnel-agent : ce conteneur exécute le connecteur Intune et utilise le port sortant 443.
  • Pour redémarrer Docker :

    • systemctl restart docker
  • Pour exécuter un élément dans un conteneur :

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

Commandes Podman

Voici des commandes pour Podman qui peuvent être utilisées si vous devez examiner les problèmes sur un serveur tunnel. Pour plus de commandes que vous pouvez utiliser avec Podman, consultez Commandes Docker.

  • sudo podman images - Répertorie tous les conteneurs en cours d’exécution.
  • sudo podman stats - Afficher l’utilisation du processeur du conteneur, l’utilisation de MEM, le réseau et les E/S de bloc.
  • sudo podman port mstunnel-server - Répertoriez les mappages de ports entre tunnel-server et l’hôte Linux local.

Commandes Linux

Voici les commandes Linux courantes que vous pouvez utiliser avec un serveur tunnel.

  • sudo su : vous permet d’effectuer une racine sur la zone. Utilisez cette commande avant d’exécuter les commandes suivantes et avant d’exécuter mstunnel-setup.

  • ls : répertorier le contenu du répertoire.

  • ls – l – Répertorier le contenu du répertoire, y compris les horodatages.

  • cd : passer à un autre répertoire. Par exemple, cd /etc/test/stuff vous passez du répertoire racine au sous-dossier >etc au sous-dossier >de test, puis au dossier stuff.

  • cp <source> <destination> - Utile pour copier les certificats à l’emplacement approprié.

  • ln –s <source> <target> - Créer un lien logiciel.

  • curl <URL> : vérifie l’accès à un site web. Par exemple : curl https://microsoft.com

  • ./<filename> - Exécuter un script.

Charger manuellement les ip_tables

Utilisez les commandes suivantes pour rechercher et charger manuellement, si nécessaire, ip_tables dans le noyau du serveur Linux. Utilisez le contexte sudo :

  • Valider la présence de ip_tables sur le serveur : lsmod |grep ip_tables

  • Créez un fichier de configuration qui charge le ip_tables dans le noyau lors du démarrage du serveur : echo ip_tables > /etc/modules-load.d/mstunnel_iptables.conf

  • Pour charger immédiatement ip_tables dans le noyau : /sbin/modprobe ip_tables