Skip to content
Cette page a été traduite par IA et peut contenir des inexactitudes. Aidez-nous à l'améliorer sur GitHub.

Gately v0.6.2 publié ​

31 octobre 2026

Télécharger v0.6.2 · GitHub Release

Routage par protocole ​

Le nouveau module Routage par protocole se trouve à côté de Redirection de ports dans la barre latérale. Il identifie le protocole à partir des premiers octets envoyés par le client et dirige les connexions d’un même port vers différents backends, sans rien déchiffrer :

  • TLS est routé selon le domaine SNI et l’ALPN, HTTP selon l’en-tête Host et Minecraft selon l’adresse du serveur indiquée dans la poignée de main ;
  • SSH, RDP, SOCKS4/5, OpenVPN sur TCP (y compris tls-auth et tls-crypt-v2), XMPP, MQTT, PostgreSQL, RTSP, SIP, Redis, AMQP, SMB, Git, IRC, ADB et BitTorrent ont chacun une route ; HTTP, RTSP et SIP se distinguent par la version en fin de ligne de requête ;
  • une route Délai d’attente reçoit les clients qui n’envoient rien après la connexion (protocoles où le serveur parle en premier, comme VNC ou MySQL), et le délai de détection accepte les dixièmes de seconde ;
  • les connexions non reconnues ou sans route correspondante vont à la cible par défaut ; chaque route peut envoyer le protocole PROXY à son backend, et la liste affiche le nombre de connexions reçues par chaque route.

Consultez Routage par protocole pour savoir sur quoi chaque protocole est reconnu, l’ordre de correspondance des domaines et de l’ALPN, et des exemples qui remplacent le routage SNI de haproxy et sslh.

Groupes et tri des listes (#48) ​

DNS dynamique, Redirection de ports, Routage par protocole, sites des Services Web, STUN, certificats SSL, WAF, Prévention d’intrusion, frp, tunnels Cloudflare, File Browser, montages de stockage, Wake-on-LAN, tâches planifiées, notifications, connexions enregistrées du Terminal Web, jetons d’API et d’autres listes partagent désormais les mêmes outils :

  • recherche, tri par glisser-déposer (flèches haut/bas sur téléphone) et déplacement de plusieurs éléments sélectionnés vers un groupe en une seule fois ;
  • déplacement de groupes entiers, renommage et fusion de groupes sur place, et mémorisation des groupes repliés ;
  • les enregistrements DNS d’une tâche de DNS dynamique peuvent aussi être groupés et triés.

Modifier les groupes ou l’ordre ne redémarre jamais une instance en cours d’exécution. Voir Groupes et tri des listes.

Adresses STUN dans le DNS dynamique (#47) ​

Les valeurs d’enregistrement et les Webhooks peuvent utiliser {STUN_nom de règle_PORT}, {STUN_nom de règle_IP} et {STUN_nom de règle_ADDR}. Quand l’adresse publique d’une règle STUN change, les tâches qui y font référence se synchronisent aussitôt ; si les variables n’apparaissent que dans le Webhook, celui-ci est quand même appelé une fois. Tant que la règle est désactivée ou n’a pas encore réussi la traversée, l’enregistrement est ignoré pour ce tour et son état en indique la raison. Voir DNS dynamique · Variables de la valeur d’enregistrement.

STUN derrière plusieurs NAT ​

Les règles avec UPnP / NAT-PMP demandent d’abord à la passerelle sa propre adresse externe. Si elle diffère de l’adresse publique observée par STUN (par exemple un routeur derrière un NAT d’opérateur), le port public appartient au NAT extérieur : seul le mappage du port de tunnel est conservé, aucun mappage supplémentaire n’est ajouté sur le routeur, et le port public ne change plus à chaque nouvelle vérification. La documentation STUN couvre désormais le NAT d’opérateur à cône complet ou restreint, l’UPnP derrière plusieurs NAT, la fixation du port local et son ouverture dans le pare-feu de l’hôte.

Renforcement de la sécurité ​

  • Tant que le mot de passe par défaut est utilisé, le compte, la vérification en deux étapes, les clés d’accès, les comptes supplémentaires, les jetons d’API, les paramètres système et les paramètres de sécurité du Terminal Web sont en lecture seule, et la restauration d’une sauvegarde ou le retour de ces paramètres à une version de l’historique sont également refusés, jusqu’à ce que le mot de passe par défaut soit changé ;
  • les comptes et les jetons d’API en lecture seule voient masqués, dans la configuration et les journaux, les mots de passe des utilisateurs partagés, les jetons des liens de partage, les valeurs d’en-tête et les secrets, ainsi que les mots de passe, valeurs de requête et jetons de chemin contenus dans les URL ;
  • parcourir les répertoires sous files/ et sftp/ nécessite un accès en écriture ;
  • une connexion par mot de passe seul ne remet plus à zéro le compteur d’échecs, ce qui empêche de forcer les codes de vérification en deux étapes ;
  • derrière un proxy de confiance, des en-têtes X-Forwarded-For et X-Real-IP contradictoires sont traités plus strictement, si bien qu’une adresse interne falsifiée ne peut pas contourner « Accès réseau local uniquement » ;
  • dans la fenêtre des jetons d’API, les modules dont l’accès en écriture permet d’exécuter des commandes sur le serveur (DNS dynamique, tâches planifiées, Prévention d’intrusion, STUN, SSL, Terminal Web, Docker, frp, File Browser, tunnels Cloudflare) portent la mention « Exécute des commandes » et leur attribution affiche un avertissement ;
  • les URL de description et de contrôle renvoyées par une passerelle UPnP doivent appartenir à l’appareil qui a répondu.

Autres améliorations ​

  • Chaque enregistrement de la carte d’une tâche de DNS dynamique peut être supprimé directement (l’enregistrement DNS chez le fournisseur est conservé) ;
  • sur téléphone, la barre de touches du Terminal Web est une seule ligne défilante qui s’affiche et se masque avec le clavier virtuel ;
  • les icônes d’écran d’accueil sur Android Chrome et iOS ne sont plus transparentes, et l’interface d’administration et le site fournissent un manifeste d’application web ;
  • la page d’accueil du site et le README ont été repensés.

Corrections ​

  • La modification d’une règle de Prévention d’intrusion ayant déjà été déclenchée échouait avec « unknown field lastSeen » ;
  • quand plusieurs certificats couvrent le même domaine, celui qui expire le plus tard est utilisé, si bien que l’ordre et les groupes de la liste des certificats ne changent plus le certificat utilisé ;
  • le Routage par protocole ne transmet plus de remplissage à zéro lorsqu’un ClientHello est tronqué par le délai de détection, et arrêter ou modifier une règle ferme immédiatement les connexions encore en cours d’identification ;
  • les variables STUN dans un corps de Webhook JSON n’étaient pas remplacées.

Notes de mise à niveau ​

  • Au premier démarrage après la mise à niveau, les règles de routage SNI de Redirection de ports passent dans Routage par protocole avec leurs clés, noms, état d’activation, groupes et routes ; si Redirection de ports était désactivé, Routage par protocole l’est aussi ; les jetons d’API ayant accès à Redirection de ports obtiennent le même accès à Routage par protocole.
  • Les scripts qui gèrent les règles de routage via l’API doivent utiliser /api/protoroute/rules, où le champ des routes s’appelle routes au lieu de sniRoutes ; /api/portforward/rules n’accepte plus le champ mode. Les métriques de ces règles sont désormais gately_protoroute_*.
  • Docker : récupérez la nouvelle image et recréez le conteneur. OpenWrt : installez le nouveau .apk / .ipk par-dessus l’ancien. fnOS : installez manuellement le nouveau .fpk dans le Centre d’applications. Les autres installations peuvent être mises à niveau en ligne dans « Paramètres système ».

Publié sous licence Apache-2.0.