El servidor es un servidor ubuntu 11.04 con sshd.
SSH funciona bien para programas de consola.
Pero la transferencia de datos es lenta, lo que resulta muy molesto al transferir archivos grandes.
Probé dos programas cliente diferentes y cambié el puerto, pero la velocidad es siempre la misma. Sé que el servidor puede transferir datos mucho más rápido a través de SSL, que afaik usa AES. Configuré mi cliente SSH para usar AES también, pero no tuvo efecto.
¿Por qué usar SSH es varias veces más lento que SSL y hay alguna manera de mejorar la velocidad de transferencia de SSH?
Respuesta1
Hay un proyecto llamado HPN-SSH(SSH/SCP de alto rendimiento), es el cliente predeterminado en FreeBSD desde hace un tiempo, así que creo que podría considerarse estable. He notado una pequeña ganancia de velocidad hacia/desde mi servidor de respaldo en mi LAN, pero la verdadera ganancia de HPN-SSH, según tengo entendido, es en distancias más largas (lea más sobre eso en su sitio). No sé si este es tu caso.
Pero si realmente desea mejorar el rendimiento, puede cambiar a algoritmos de cifrado más simples como Blowfish o Archfour. En general no lo veo como un problema.
Respuesta2
Supongo que una CPU es muy lenta o ya está agotada. Las formas de acelerarlo son usar el parche 'hpn' mencionado anteriormente para permitirle renunciar por completo al cifrado o, si no está dispuesto a perder todo el cifrado (no puedo culparlo), puede cambiar al cifrado 'arcfour' usando la Ciphers
opción ya sea en el CLI o en ~/.ssh/config
. Requiere considerablemente menos recursos que los algoritmos de cifrado estándar, pero al mismo tiempo no es tan seguro. Obtengo velocidades de transferencia ssh increíblemente lentas en mi eee PC que ejecuta una CPU de un solo núcleo de 1,6 GHz.
Ejemplo:
ssh -oCiphers='arcfour' user@host
Si estás usando scp
, haz esto:
-oCiphers='arcfour'
Si está utilizando rsync
para la transferencia, haga esto:
-e'ssh -oCiphers=arcfour'