SSH, соединяющийся с ключом, от моей машины внезапно, стал невероятно медленным (~10sec!). Это не сервер или проблема DNS насколько я могу выяснить.
Проблема внезапно появилась после простого apt-get install kubuntu-desktop
и некоторый незначительный KDE связал слоняние без дела на моей Ubuntu 15.04 x86_64.
Выполнение ssh -vv ...
показывает мне, что это ожидает целую вечность (большинство ~10sec...) в последней строке от этого:
OpenSSH_6.7p1 Ubuntu-5ubuntu1, OpenSSL 1.0.1f 6 Jan 2014 debug1: Reading configuration data /home/neuronq/.ssh/config debug1: /home/neuronq/.ssh/config line 1: Applying options for XXX.com debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for *
... и мой /etc/ssh/ssh_config
содержит это (я не вставлял закомментированные строки):
Host *
SendEnv LANG LC_*
HashKnownHosts yes
GSSAPIAuthentication no
GSSAPIDelegateCredentials no
Есть ли какой-либо путь, которым настольная установка Kubuntu может внезапно привести к этому замедлению (некоторая keystore/wallet странная вещь)? (Кроме того, в KDE я не мог заставить вход в систему ssh ключом работать вообще, кроме терминала путем ручного выполнения a ssh-add
заранее и вводя мой ключевой пароль, но я с тех пор разочаровался в KDE полностью, и я вернулся к Единице, таким образом, я дольше не забочусь об этом..., но это могло быть связано),
Для меня настоящим решением было добавление AddressFamily inet
на моем локальном хосте к ~/.ssh/config
либо для соответствующего хоста, либо /etc/ssh/ssh_config
для хоста *
.
Причиной проблемы, скорее всего, стало недавнее обновление до Ubuntu 15.05, и теперь ssh пытается (но безуспешно, с огромной задержкой...) использовать IPv6.
.У вас те же проблемы с аутентификацией по паролю, или это действительно связано с аутентификацией по ключу?
Клиент может обеспечить правильное разрешение DNS, но именно ваш сервер в любом случае попытается выполнить обратный просмотр с вашего IP-адреса; это может объяснить задержку, как говорит @kasperd. Но по опыту, это не превышает нескольких секунд.
Удается ли, наконец, SSH-аутентификация? Если да, то это действительно выглядит как проблема с DNS. Попробуйте, если ваша конфигурация/администратор разрешает это, добавив свой IP/хозяин в /etc/hosts сервера. Это обойдет DNS разрешение на стороне сервера. Если вы не настроите ваш DNS для обеспечения надлежащего обратного просмотра на стороне сервера для клиента, useDNS no
is, как говорит @kasperd, to be put on the /etc/ssh/sshd_config
of the server.
Если ваш администратор не хочет этого делать, вы больше ничего не сможете сделать.
EDIT:
KDE/Unity или любой другой менеджер рабочего стола не может привести к такому замедлению. Я был бы удивлен, если бы это произошло. Однако, тот факт, что Вам необходимо предоставить ssh-add
для использования Ваших ключей, интересен. Эта команда используется для того, чтобы заставить вашего агента аутентификации запомнить парольные фразы, которые вы указали для ваших ключей. Для указания используемого ключа, сделайте это либо с помощью командной строки, либо в вашем файле ~/.ssh/config
:
# in your command line:
ssh -i /path/to/your/private/key user@host
# or in your /home/$user/.ssh/config file:
# (on command line later, simply use ssh user@host or ssh host if
# user locally and remotely are the same
Host $myhost
IdentityFile /path/to/your/private/key
IdentitiesOnly yes