Como acelerar o login do SSH?

21

De fora da minha casa, sempre que eu faço login no meu servidor Ubuntu usando o SSH, demora cerca de 6 segundos para eu obter a solicitação de senha, no entanto, quando eu faço login no meu servidor de hospedagem leva cerca de 1 segundo. O que posso fazer para acelerar isso?

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=8.04
DISTRIB_CODENAME=hardy
DISTRIB_DESCRIPTION="Ubuntu 8.04.1"
$ ssh -v
OpenSSH_4.7p1 Debian-8ubuntu1.2, OpenSSL 0.9.8g 19 Oct 2007
$ cat /proc/cpuinfo
model name      : Dual-Core AMD Opteron(tm) Processor 1210
cpu MHz         : 1000.000
cache size      : 1024 KB
$ cat /proc/meminfo
MemTotal:      2074528 kB
    
por grokus 16.08.2010 / 15:49

5 respostas

37

O motivo número um que eu já vi para isso é uma opção de configuração no SSHD UseDNS esta opção (ativada por padrão) faz com que o servidor execute a resolução de DNS nas solicitações recebidas. Uma operação demorada. Eu vi logins ir de um minuto mais esperando por prompt de senha para menos de alguns segundos. Se você editar /etc/ssh/sshd_config no servidor e adicionar (se não estiver lá) na parte inferior UseDNS no , reinicie o daemon SSH com service ssh restart . Na próxima vez que se conectar, você verá um aprimoramento.

    
por Marco Ceppi 16.08.2010 / 15:54
6

Para mim, o motivo número 2 (após a opção UseDNS do lado do servidor) para logons de sessão SSH longos são tentativas do lado do cliente de se conectar usando IPv6 (que, obviamente, não está configurado corretamente em minha rede - ou praticamente qualquer outra rede, para esse assunto).

Veja COMO: Acelerar o login do SSH nos fóruns do Ubuntu.

A "solução" é ativar somente o IPv4:

1) para a invocação do cliente SSH:

ssh -4 login@hostname

2) ou globalmente na configuração do cliente ssh em /etc/ssh/ssh_config :

Host *
   AddressFamily inet

Claro, seria mais correto configurar o IPv6 em sua rede corretamente, mas quem tem tempo para isso:)

    
por Aleksander Adamowski 10.03.2012 / 17:23
3

Tente adicionar a próxima opção com seu comando ssh:

-o "PreferredAuthentications=password"

(isto evita que o ssh negocie qualquer outro método de autenticação e acelera o promtp da senha!)

    
por perseo22 17.12.2010 / 12:50
2

Além disso, digite isto na máquina remota (como o usuário que você logaria como) para suprimir quaisquer mensagens MOTD:

touch ~/.hushlogin

Não faz tanta diferença quanto desativar UseDNS , mas pode ajudar em conexões mais lentas.

    
por Oli 16.08.2010 / 16:32
2

Como você está usando uma versão bastante antiga do Ubuntu, pode ser este bug: link

Reiniciar o dbus ( /etc/init.d/dbus restart ) pode ajudar.

    
por Marcel Stimberg 16.08.2010 / 17:11