Guide

Paramètres de connexion et VPN

Reconnexion automatique, keep-alive, port forwarding, jump hosts et configuration VPN

Paramètres de connexion et VPN

MTerm offre un contrôle fin sur le comportement de la connexion, de la reconnexion automatique aux intervalles de keep-alive. Ce guide couvre chaque paramètre de connexion, le port forwarding, la configuration des jump hosts et les options VPN pour atteindre les serveurs derrière des pare-feux.


Paramètres de connexion

Ces paramètres contrôlent la façon dont MTerm gère ta connexion SSH, en particulier autour de la mise en arrière-plan et de la reconnexion. Tous sont configurables par hôte ou globalement dans les Paramètres.

ParamètrePar défautDescription
Reconnexion automatiqueONSe reconnecte automatiquement quand tu reviens à MTerm depuis l’arrière-plan. Sans ça, tu devrais te reconnecter manuellement à chaque changement d’app.
Tentatives max10Nombre maximum de tentatives de reconnexion avant d’abandonner. Si le serveur est temporairement inaccessible, MTerm continuera d’essayer jusqu’à cette limite.
Intervalle de tentative3 secondesTemps d’attente entre les tentatives de reconnexion. Un intervalle plus court reconnecte plus vite mais génère plus de tentatives de connexion sur le serveur.
Keep-Alive30 secondesFréquence à laquelle MTerm envoie un ping keep-alive au serveur. Cela empêche les pare-feux et les dispositifs NAT de fermer les connexions inactives. Si tes connexions se coupent après être restées inactives, essaie de réduire cette valeur.
Seuil de redémarrage du shell300 secondesSi l’app est restée en arrière-plan plus longtemps que ça, la session shell est redémarrée plutôt que reprise. Cela évite les problèmes d’état shell obsolète.
Déconnexion en arrière-planOFFQuand activé, MTerm déconnecte la connexion TCP quand l’app passe en arrière-plan. Tu peux configurer un délai avant la déconnexion. Cela économise les ressources serveur et la batterie quand tu sais que tu seras absent un moment.
Comportement à la sortie du shellFermeture autoCe qui se passe quand le shell distant se termine (ex. tu tapes exit ou le serveur se déconnecte). Options : Fermeture auto (ferme l’onglet immédiatement), Confirmer (demande s’il faut fermer), ou Garder ouvert (laisse l’onglet ouvert montrant le statut de sortie).

Paramètres recommandés pour différents scénarios

Wi-Fi instable (café, conférence) :

  • Reconnexion automatique : ON
  • Tentatives max : 20
  • Keep-Alive : 15 secondes
  • Envisage d’utiliser Mosh au lieu de SSH pour encore plus de résilience

Réseau stable (maison/bureau) :

  • Les paramètres par défaut fonctionnent bien
  • Le Keep-Alive peut être augmenté à 60 secondes pour réduire le trafic inutile

Économie de batterie :

  • Déconnexion en arrière-plan : ON avec un délai de 30 secondes
  • Seuil de redémarrage du shell : 30 secondes

Port Forwarding

Le port forwarding te permet d’accéder aux services sur ton serveur distant comme s’ils tournaient localement, ou d’exposer des services locaux au réseau distant.

Redirection de port locale (-L)

Une redirection de port locale écoute sur un port de ton appareil et tunnelise le trafic vers une destination accessible depuis le serveur distant.

Exemple : Ton serveur distant exécute une base de données PostgreSQL sur le port 5432 qui n’accepte que les connexions locales. Configure une redirection de port locale :

  • Port local : 5432
  • Hôte distant : localhost
  • Port distant : 5432

Maintenant, n’importe quelle app sur ton iPad peut se connecter à localhost:5432 et atteindre la base de données sur ton serveur.

Utilisations courantes :

  • Accéder aux applications web tournant sur le serveur (rediriger les ports 3000, 8080, etc.)
  • Se connecter aux bases de données (PostgreSQL, MySQL, Redis)
  • Accéder aux panneaux d’administration qui n’écoutent que sur localhost

Redirection de port distante (-R)

Une redirection de port distante écoute sur un port du serveur distant et tunnelise le trafic vers ton appareil (ou un hôte accessible depuis ton appareil).

Exemple : Tu veux exposer un serveur de développement local tournant sur ton Mac (accessible depuis ton iPad via le réseau local) à ton serveur distant :

  • Port distant : 8080
  • Hôte local : 192.168.1.100
  • Port local : 3000

Maintenant les processus sur le serveur distant peuvent accéder à localhost:8080 pour atteindre ton serveur de développement local.

Gestion des redirections de port

  • Sauvegardées par hôte — Les redirections de port sont stockées dans la configuration de l’hôte, elles sont donc prêtes à chaque connexion
  • Reconnexion automatique — Si le tunnel tombe, MTerm le rétablit automatiquement
  • Contrôle individuel — Démarre et arrête chaque redirection de port indépendamment
  • Suivi de statut — Chaque redirection affiche son statut actuel : Active, Arrêtée, Démarrage, Erreur ou Reconnexion

Jump Hosts (serveurs Bastion)

De nombreux environnements de production nécessitent de se connecter via un serveur bastion (aussi appelé jump host) plutôt que de se connecter directement à la machine cible. MTerm gère cela de manière transparente.

Comment ça marche

Quand tu configures un jump host pour une connexion, MTerm :

  1. Établit une connexion SSH vers le jump host
  2. Crée un tunnel à travers le jump host vers le serveur cible
  3. Établit une seconde connexion SSH vers le serveur cible à travers le tunnel

De ton point de vue, c’est transparent — tu tapes sur l’hôte et tu es connecté. La configuration du jump host est sauvegardée dans le profil de l’hôte.

Authentification à travers les jump hosts

MTerm supporte l’authentification RSA-SHA256 à travers les jump hosts. Cela signifie que les serveurs SSH modernes qui ont désactivé les signatures SHA-1 héritées fonctionneront correctement même en passant par un serveur bastion.

Configuration

Dans les paramètres de l’hôte :

  1. Active “Jump Host”
  2. Entre le nom d’hôte, le port, le nom d’utilisateur et les identifiants d’authentification du jump host
  3. Les paramètres de l’hôte cible restent inchangés

Configuration VPN

Quand tes serveurs sont derrière un pare-feu ou sur un réseau privé, tu as besoin d’un VPN pour les atteindre depuis ton iPad ou iPhone. MTerm fonctionne avec n’importe quel VPN qui fournit un accès au niveau réseau, mais voici les deux options les plus populaires :

Tailscale

Tailscale est le moyen le plus simple de connecter tes appareils à tes serveurs. Il crée un réseau maillé sécurisé entre tous tes appareils sans configuration de pare-feu.

Installation :

  1. Installe Tailscale sur ton serveur et ton iPad/iPhone
  2. Connecte-toi avec le même compte sur les deux appareils
  3. Ton serveur obtient une IP Tailscale (ex. 100.x.x.x)
  4. Dans MTerm, utilise l’IP Tailscale comme nom d’hôte

Tailscale gère la traversée NAT, la gestion des clés et les règles de pare-feu automatiquement. Si tu n’es pas sûr de quel VPN utiliser, commence avec Tailscale.

WireGuard

WireGuard est un protocole VPN léger et haute performance. Il est idéal si tu préfères héberger toi-même ton infrastructure VPN et veux un contrôle maximal sur la configuration.

Avantages par rapport à Tailscale :

  • Aucun compte tiers requis
  • Contrôle total sur la configuration réseau
  • Overhead réduit (WireGuard est intégré au noyau Linux)
  • Peut être configuré pour router uniquement des sous-réseaux spécifiques

Installation :

  1. Installe WireGuard sur ton serveur et configure-le comme serveur VPN
  2. Installe l’app WireGuard sur ton iPad/iPhone
  3. Importe ou crée une configuration client
  4. Connecte-toi au VPN
  5. Dans MTerm, utilise l’IP réseau privé du serveur comme nom d’hôte

Autres options VPN

MTerm fonctionne avec n’importe quel VPN qui fournit une connectivité réseau au niveau OS, y compris :

  • OpenVPN
  • IPsec/IKEv2
  • Solutions VPN d’entreprise (Cisco AnyConnect, GlobalProtect, etc.)

Tant que le VPN donne à ton appareil une route vers l’adresse IP du serveur, les connexions SSH de MTerm fonctionneront à travers.