La réutilisation de connexion permet d'ajouter des sessions Secure Shell à une connexion SSH déjà établie. On peut comparer cette technique à un câble en fibre optique, où la connexion correspondrait à la gaine extérieure dans laquelle passent les fils de verre optique (les sessions et tunnels). Les sessions ajoutées peuvent être de nouvelles sessions terminal ou de transfert de fichiers SFTP, des connexions X11 transférées, toute communication configurée pour le transfert de port par un tunnel SSH ou toute connexion établie à l'aide d'un des utilitaires de ligne de commande Secure Shell.
La réutilisation d'une connexion Secure Shell déjà établie évite de procéder à une nouvelle authentification. La nouvelle session utilise systématiquement tous les paramètres Secure Shell configurés pour la connexion initiale. Toute différence dans la méthode d'authentification, dans les paramètres MAC ou de code de chiffrement, ou dans la définition du transfert de code est ignorée.
La réutilisation de connexion est activée par défaut pour toutes les connexions Secure Shell établies à partir de l'interface utilisateur. Vous pouvez désactiver cette fonctionnalité en désélectionnant la case Réutiliser une connexion existante si disponible dans l'onglet Configuration générale de la boîte de dialogue Paramètres Secure Shell.
Une fois que vous avez établi une connexion pour laquelle l'option Réutiliser une connexion existante si disponible est activée, les sessions Secure Shell ultérieures réutilisent cette connexion si toutes les conditions ci-dessous sont remplies :
Le nom d'hôte de la nouvelle session doit correspondre au nom d'hôte de la connexion établie.
Le nom d'utilisateur de la nouvelle session doit correspondre au nom d'utilisateur de la connexion établie.
Le numéro de port de la nouvelle session doit être le même que celui de la connexion établie. (Cette condition est remplie par défaut.)
Si la configuration de la session initiale spécifie l'utilisation d'un schéma de configuration SSH différent du nom d'hôte, la nouvelle session doit utiliser le même schéma.
REMARQUE :Si vous établissez la connexion SSH avec un utilitaire de ligne de commande, des conditions supplémentaires s'imposent pour la réutilisation de la connexion. Elles sont précisées ci-dessous.
La réutilisation de connexion est utile pour les opérations de ligne de commande nécessitant des connexions Secure Shell ou de nombreuses petites opérations entre le client et un même serveur, et où le temps nécessaire à l'authentification et à l'échange de clés représente une part importante de la durée totale de connexion. C'est le cas si vous devez transférer plusieurs petits fichiers ou exécuter une commande de système d'exploitation simple qui ne génère pas un grand volume de données en retour. Il est alors avantageux de créer une connexion SSH initiale à l'aide de l'utilitaire de ligne de commande ssh (ou ssh2) et de la réutiliser pour les opérations de ligne de commande suivantes.
Par défaut, la réutilisation de connexion est désactivée pour les utilitaires de ligne de commande client Secure Shell : ssh, scp, sftp, scp2 et sftp2. Pour l'activer, appliquez l'une des techniques suivantes :
Ajoutez le commutateur "-o ConnectionReuse=yes" à chaque ligne de commande. Vous devez le spécifier pour établir la connexion initiale et dans toutes les lignes de commande réutilisant cette connexion. Par exemple, dans les commandes suivantes, la connexion sftp réutilise la connexion établie par la commande ssh.
ssh "-o connectionReuse=yes" myuser@myhost sftp "-o connectionReuse=yes" myuser@myhost
Dans la fenêtre de commande DOS (ou en début de fichier script séquentiel), définissez la variable d'environnement SSHConnectionReUse comme suit :
set SSHConnectionReUse=yes
En cas de conflit de paramètres, le commutateur -o prévaut.
REMARQUE :
Les serveurs OpenSSH prennent en charge le paramètre MaxStartups qui permet de limiter le nombre de sessions non authentifiées simultanées. Ce paramètre affecte le nombre de sessions que vous pouvez ouvrir sur la connexion existante. Une fois le nombre maximum de sessions spécifié par le paramètre MaxStartups atteint, les sessions suivantes doivent passer par une autre connexion SSH avec authentification. Contactez l'administrateur du serveur SSH si vous devez ouvrir plus de sessions non authentifiées simultanées qu'il n'est actuellement autorisé.
Il n'est pas possible d'autoriser la réutilisation de connexion pour les utilitaires de ligne de commande dans le fichier de configuration Secure Shell. Les utilitaires de ligne de commande Secure Shell ignorent toujours le mot clé ConnectionReuse de ce fichier, même si le paramètre -H est utilisé pour spécifier un schéma de configuration SSH incluant ce paramètre.