O servidor é um servidor Ubuntu 11.04 com sshd.
SSH funciona bem para programas de console.
Mas a transferência de dados é lenta, o que é muito irritante ao transferir arquivos grandes.
Tentei dois programas clientes diferentes e mudei a porta, mas a velocidade é sempre a mesma. Eu sei que o servidor pode transferir dados muito mais rápido por SSL, que usa AES. Configurei meu cliente SSH para usar AES também, mas sem efeito.
Por que usar o SSH é várias vezes mais lento que o SSL e existe uma maneira de melhorar a velocidade de transferência do SSH?
Responder1
Existe um projeto chamado HPN-SSH(SSH/SCP de alto desempenho), é o cliente padrão no FreeBSD há algum tempo, então acho que pode ser considerado estável. Percebi um pequeno ganho de velocidade de/para meu servidor de backup em minha LAN, mas o ganho real do HPN-SSH, pelo que entendi, ocorre em distâncias mais longas (leia mais sobre isso no site deles). Não sei se este é o seu caso.
Mas se você realmente deseja melhorar o desempenho, pode mudar para algoritmos de criptografia mais simples, como blowfish ou archfour. Em geral não vejo isso como um problema.
Responder2
Suponho que uma CPU esteja muito lenta ou já esgotada. Maneiras de acelerar isso são usar o patch 'hpn' mencionado acima para permitir que você renuncie completamente à criptografia ou se não estiver disposto a perder toda a criptografia (não posso culpá-lo), você pode mudar para o uso da criptografia 'arcfour' usando a Ciphers
opção na CLI ou no ~/.ssh/config
. Consome consideravelmente menos recursos do que os algoritmos de criptografia padrão, mas ao mesmo tempo não é tão seguro. Obtenho velocidades de transferência ssh incrivelmente lentas no meu eee PC que executa uma CPU de núcleo único de 1,6 GHz.
Exemplo:
ssh -oCiphers='arcfour' user@host
Se você estiver usando scp
, faça o seguinte:
-oCiphers='arcfour'
Se você estiver usando rsync
para a transferência, faça o seguinte:
-e'ssh -oCiphers=arcfour'