4 formas de acelerar las conexiones SSH en Linux
- 1243
- 11
- Alejandro Duran
Ssh es el método más popular y seguro para administrar los servidores de Linux de forma remota. Uno de los desafíos con la administración remota del servidor son las velocidades de conexión, especialmente cuando se trata de la creación de sesión entre las máquinas remotas y locales.
Hay varios cuellos de botella en este proceso, un escenario es cuando se está conectando a un servidor remoto por primera vez; normalmente tarda unos segundos en establecer una sesión. Sin embargo, cuando intenta iniciar múltiples conexiones en sucesión, esto causa una sobrecarga (combinación de exceso o tiempo de cálculo indirecto, memoria, ancho de banda u otros recursos relacionados para llevar a cabo la operación).
En este artículo, compartiremos cuatro consejos útiles sobre cómo acelerar las conexiones SSH remotas en Linux.
1. Force la conexión SSH a través de IPv4
OpenSSH admite tanto IPv4/IP6, pero a veces IPv6 Las conexiones tienden a ser más lentas. Por lo tanto, puede considerar forzar las conexiones SSH solo a través de IPv4, utilizando la sintaxis a continuación:
# ssh -4 [correo electrónico protegido]
Alternativamente, use el Dirección Family (Especifica que la familia de direcciones se use al conectarse) Directiva en su archivo de configuración SSH /etc/ssh/ssh_config (configuración global) o ~/.ssh/config (archivo específico del usuario).
Los valores aceptados son "cualquier","inet"Solo para IPv4, o"inet6".
$ vi ~.ssh/configDesactivar las conexiones SSH en IPv6
Aquí hay una guía de inicio útil sobre la configuración del archivo de configuración SSH específico del usuario:
- Cómo configurar las conexiones SSH personalizadas para simplificar el acceso remoto
Además, en la máquina remota, también puede instruir al demonio SSHD que considere las conexiones a través de IPv4 utilizando la directiva anterior en la /etc/ssh/sshd_config archivo.
2. Desactivar la búsqueda de DNS en una máquina remota
Por defecto, SSHD Daemon busca el nombre de host remoto y también verifica que el nombre de host resuelto para la dirección IP remota se mapea a la misma dirección IP. Esto puede resultar en retrasos en el establecimiento de conexión o la creación de la sesión.
El Usos La directiva controla la funcionalidad anterior; Para deshabilitarlo, buscarlo y desenchufarlo en el /etc/ssh/sshd_config archivo. Si no está configurado, agrégalo con el valor No
.
Usado noDesactivar la búsqueda SSH DNS
3. Reutilizar la conexión SSH
Se utiliza un programa de cliente SSH para establecer conexiones a un demonio SSHD que acepta conexiones remotas. Puede reutilizar una conexión ya establecida al crear una nueva sesión SSH y esto puede acelerar significativamente las sesiones posteriores.
Puedes habilitar esto en tu ~/.ssh/config archivo.
Host * Controlmaster Auto Controlpath ~/.SSH/Sockets/%[correo electrónico protegido]%H-%P Controlpersist 600
La configuración anterior (Anfitrión *) habilitará la reutilización de la conexión para todos los servidores remotos a los que se conecta al usar estas directivas:
- Controlador de control - habilita el intercambio de múltiples sesiones a través de una sola conexión de red.
- Papatio de control - Define una ruta al enchufe de control utilizado para compartir la conexión.
- Controlador de control - Si se usa junto con Controlador de control, le dice a SSH que mantenga la conexión maestra abierta en segundo plano (esperando las futuras conexiones del cliente) una vez que se haya cerrado la conexión del cliente inicial.
Puede habilitar esto para las conexiones a un servidor remoto específico, por ejemplo:
Host Server1 hostname www.ejemplo.com identityfile ~/.SSH/servidor web.PEM User UserName_here ControlMaster Controlpath ~/.SSH/Sockets/%[correo electrónico protegido]%H-%P Controlpersist 600
De esta manera, solo sufre la sobrecarga de conexión para la primera conexión, y todas las conexiones posteriores serán mucho más rápidas.
4. Utilice el método específico de autenticación SSH
Otra forma de acelerar las conexiones SSH es usar un método de autenticación dado para todas las conexiones SSH, y aquí recomendamos configurar el inicio de sesión sin contraseña SSH usando SSH Keygen en 5 sencillos pasos.
Una vez hecho eso, use el Autorizaciones preferidas directiva, dentro ssh_config archivos (global o específico del usuario) arriba. Esta directiva define el orden en que el cliente debe probar los métodos de autenticación (puede especificar una lista separada por comando para usar más de un método).
PreferedAuthentications = PublicKeyMétodo de autenticación SSH
Opcionalmente, use esta sintaxis a continuación desde la línea de comando.
# ssh -o "PreferredAuthentications = PublicKey" [correo electrónico protegido]
Si prefiere la autenticación de contraseña que se considera no segura, use esto.
# ssh -o "preferedAuthentications = contraseña" [correo electrónico protegido]
Finalmente, debe reiniciar su demonio SSHD después de hacer todos los cambios anteriores.
# SystemCTL reiniciar sshd #systemd # servicio sshd reiniciar #sysvinit
Para obtener más información sobre las directivas utilizadas aquí, consulte el ssh_config y sshd_config Páginas del hombre.
# man ssh_config # man sshd_config
También consulte estas guías útiles para asegurar SSH en los sistemas Linux:
- 5 mejores prácticas para asegurar y proteger el servidor SSH
- Cómo desconectar conexiones SSH inactivas o inactivas en Linux
Eso es todo por ahora! ¿Tiene algún consejo/truco para acelerar las conexiones SSH?. Nos encantaría saber de otras formas de hacer esto. Use el formulario de comentarios a continuación para compartir con nosotros.
- « Cómo instalar el carrito de compras X-CART en Linux
- Un script de shell para enviar alerta de correo electrónico cuando la memoria se baja »