4 façons d'accélérer les connexions SSH dans Linux
- 688
- 27
- Clara Nguyen
Ssh est la méthode la plus populaire et la plus sécurisée pour gérer les serveurs Linux à distance. L'un des défis avec la gestion des serveurs distants est les vitesses de connexion, surtout en ce qui concerne la création de session entre les machines distantes et locales.
Il y a plusieurs goulots d'étranglement à ce processus, un scénario est lorsque vous vous connectez à un serveur distant pour la première fois; Il faut normalement quelques secondes pour établir une session. Cependant, lorsque vous essayez de démarrer plusieurs connexions successivement, cela provoque une surcharge (combinaison de temps de calcul excédentaire ou indirect, de mémoire, de bande passante ou d'autres ressources connexes pour effectuer l'opération).
Dans cet article, nous partagerons quatre conseils utiles sur la façon d'accélérer les connexions SSH à distance dans Linux.
1. Force la connexion SSH sur IPv4
OpenSSH prend en charge les deux IPv4 / IP6, mais parfois Ipv6 Les connexions ont tendance à être plus lentes. Vous pouvez donc envisager de forcer les connexions SSH sur IPv4 uniquement, en utilisant la syntaxe ci-dessous:
# ssh -4 [e-mail protégé]
Alternativement, utilisez le Addomfamily (Spécifie la famille d'adresses à utiliser lors de la connexion) Directive dans votre fichier de configuration SSH / etc / ssh / ssh_config (configuration globale) ou ~ /.ssh / config (fichier spécifique de l'utilisateur).
Les valeurs acceptées sont «n'importe quel","inédire«Pour IPv4 uniquement, ou«INET6".
$ vi ~.ssh / configDésactiver les connexions SSH sur IPv6
Voici un guide de démarrage utile sur la configuration du fichier de configuration SSH spécifique à l'utilisateur:
- Comment configurer les connexions SSH personnalisées pour simplifier l'accès à distance
De plus, sur la machine distante, vous pouvez également demander au démon sshd d'envisager des connexions sur IPv4 en utilisant la directive ci-dessus dans le / etc / ssh / sshd_config déposer.
2. Désactiver la recherche DNS sur la machine distante
Par défaut, SSHD Daemon recherche le nom d'hôte distant et vérifie également que le nom d'hôte résolu pour l'adresse IP distante revient à la même adresse IP. Cela peut entraîner des retards dans l'établissement de connexion ou la création de session.
Le Usages La directive contrôle la fonctionnalité ci-dessus; Pour le désactiver, la recherche et la découverte dans le / etc / ssh / sshd_config déposer. S'il n'est pas défini, ajoutez-le avec la valeur Non
.
Usages nonDésactiver la recherche SSH DNS
3. Réutiliser la connexion SSH
Un programme client SSH est utilisé pour établir des connexions à un démon SSHD acceptant les connexions distantes. Vous pouvez réutiliser une connexion déjà établie lors de la création d'une nouvelle session SSH et cela peut considérablement accélérer les séances ultérieures.
Vous pouvez activer cela dans votre ~ /.ssh / config déposer.
Hôte * ControlMaster Auto ControlPath ~ /.SSH / SOCKETS /% [Protégé par e-mail]% H-% P ControlPersiste 600
La configuration ci-dessus (Héberger *) permettra une réutilisation de connexion pour tous les serveurs distants auxquels vous vous connectez à l'aide de ces directives:
- Maître de contrôle - Active le partage de plusieurs sessions sur une seule connexion réseau.
- Chemin de contrôle - Définit un chemin vers la prise de contrôle utilisée pour le partage de connexion.
- Contrôleur de contrôle - s'il est utilisé avec Maître de contrôle, dit à SSH de garder la connexion principale ouverte en arrière-plan (en attendant les futures connexions du client) une fois la connexion client initiale fermée.
Vous pouvez l'activer pour les connexions à un serveur distant spécifique, par exemple:
Host server1 hostname www.exemple.com identityfile ~ /.SSH / Webserver.PEM User username_here ControlMaster Auto ControlPath ~ /.SSH / SOCKETS /% [Protégé par e-mail]% H-% P ControlPersiste 600
De cette façon, vous ne souffrez que les frais généraux de connexion pour la première connexion, et toutes les connexions ultérieures seront beaucoup plus rapides.
4. Utilisez une méthode d'authentification SSH spécifique
Une autre façon d'accélérer les connexions SSH est d'utiliser une méthode d'authentification donnée pour toutes les connexions SSH, et ici nous vous recommandons de configurer la connexion sans mot de passe SSH à l'aide de SSH Keygen en 5 étapes faciles.
Une fois cela fait, utilisez le Aauthentications privilégiées directive, à l'intérieur ssh_config Fichiers (globaux ou spécifiques à l'utilisateur) ci-dessus. Cette directive définit l'ordre dans lequel le client doit essayer les méthodes d'authentification (vous pouvez spécifier une liste séparée par commande pour utiliser plus d'une méthode).
Aauthentications privilégiées = PublicKeyMéthode d'authentification SSH
Facultativement, utilisez cette syntaxe ci-dessous à partir de la ligne de commande.
# ssh -o "PreferredAuthentications = publicKey" [e-mail protégé]
Si vous préférez l'authentification du mot de passe qui n'est pas sécurisé, utilisez-le.
# ssh -o "PreferredAuthentications = mot de passe" [e-mail protégé]
Enfin, vous devez redémarrer votre démon sshd après avoir apporté tous les changements ci-dessus.
# systemctl redémarrer sshd #Systemd # service sshd redémarrage #SysVinit
Pour plus d'informations sur les directives utilisées ici, consultez le ssh_config et sshd_config pages d'homme.
# man ssh_config # man sshd_config
Consultez également ces guides utiles pour sécuriser SSH sur les systèmes Linux:
- 5 meilleures pratiques pour sécuriser et protéger le serveur SSH
- Comment déconnecter les connexions SSH inactives ou inactives dans Linux
C'est tout pour le moment! Avez-vous des conseils / astuces pour accélérer les connexions SSH. Nous serions ravis d'entendre d'autres façons de faire cela. Utilisez le formulaire de commentaire ci-dessous pour partager avec nous.
- « Comment installer le panier X-Cart à Linux
- Un script shell pour envoyer une alerte par e-mail lorsque la mémoire devient bas »