Рейтинг:0

SSH обычно зависает перед запросом пароля

флаг cn

Я пытаюсь подключиться по SSH к Linux-серверу:

ssh -X -l <имя пользователя> <адрес>

Когда я подключаюсь через домашний Wi-Fi-маршрутизатор (который работает очень быстро), эта команда может зависать на неопределенный срок. (Для других, например, когда я использую мобильные данные своего телефона, он сразу же подключается в 100% случаев). Если я повторяю команду ssh достаточное количество раз (порядка 100 раз), выполняя команду, а затем сразу же нажимая Control c, если она не запрашивает, я обычно могу заставить ее ответить, хотя это не безопасно. Когда это, наконец, работает, подсказка появляется немедленно, и терминал очень отзывчив. Если я позволю команде ssh зависнуть в ожидании запроса пароля, она иногда будет запрашивать мой пароль через несколько секунд или несколько минут, но также может зависнуть на час.

Я не являюсь администратором на сервере, к которому пытаюсь подключиться, поэтому я не могу включить ИспользуемыйDNS-номер на сервере. Это точно проблема? Почему он обрабатывает мои мобильные данные иначе, чем мой домашний Wi-Fi?

Обновлять

Вот очищенный вывод при запуске с использованием -ввв

debug1: Чтение данных конфигурации /Users/userName/.ssh/config
debug2: проверка совпадения для 'exec "/usr/local/bin/sft resolve -q %h"' исходного адреса хоста
debug1: Выполнение команды: '/usr/local/bin/sft разрешить -q адрес'
debug3: команда вернула статус 126
debug3: /Users/userName/.ssh/config строка 2: не соответствует 'exec "/usr/local/bin/sft разрешить -q адрес"' 
debug2: совпадение не найдено
debug1: Чтение данных конфигурации /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config строка 47: Применение параметров для *
debug1: подключение к адресному порту 22.

Вот и висит.

asktyagi avatar
флаг in
попробуйте запустить ssh в подробностях с опцией -vvv, а также проверьте журналы целевого сервера, если вы видите какие-либо проблемы, связанные с ssh или состоянием системы.
флаг cn
Я обновил вопрос выводом -vvv, я действительно мало что знаю об этом, поэтому мне трудно получить от них много информации.
флаг in
Задержка с входом по SSH обычно связана с проблемами DNS на стороне сервера. Сервер SSH пытается разрешить адрес подключающегося клиента.
asktyagi avatar
флаг in
попробуйте `strace`, чтобы раскопать локальный системный вызов или локальную системную задержку, добавив префикс к команде ssh. Также проверьте, дают ли другие методы проверки порта более быстрый ответ, другой проверкой будет ваша конфигурация ssh, если вы что-то изменили из коробки.
Рейтинг:1
флаг us

Убедитесь, что в вашем файле sshd_config включено следующее.

USeDNS нет
флаг cn
Спасибо за совет, но он не актуален, если у вас нет root-прав на сервере.
Рейтинг:1
флаг cn

Самый простой способ обойти это — использовать IP-адрес сервера, а не полагаться на DNS, чтобы найти его для вас. Так:

ssh -XL <имя пользователя> 123.456.789.0

Кажется тривиальным, но если вы неопытный сетевой пользователь, вы, возможно, не подумали об этом (как и я).

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.