Не работает putty windows 10

Обновлено: 04.07.2024

Требования

  • Убедитесь, что можете подключиться к виртуальному серверу через консоль.
  • Проверьте панель на предмет текущих проблем, влияющих на работу и состояние сервера и гипервизора.

Основные ошибки

Разрешение имени хоста

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

На клиенте OpenSSH эта команда:

может выдать ошибку:

В PuTTY может появиться такая ошибка:

Чтобы устранить эту ошибку, можно попробовать следующее:

Если у вас возникают проблемы с разрешением DNS на любом уровне, в качестве промежуточного решения можно использовать IP-адрес сервера, например:

Истечение времени соединения

Эта ошибка значит, что клиент попытался установить соединение с SSH-сервером, но сервер не смог ответить в течение заданного периода ожидания.

На клиенте OpenSSH следующая команда:

выдаст такую ошибку:

ssh: connect to host 111.111.111.111 port 22: Connection timed out

В PuTTY ошибка выглядит так:

Network error: Connection timed out

  • Убедитесь, что IP-адрес хоста указан правильно.
  • Убедитесь, что сеть поддерживает подключение через используемый порт SSH. Некоторые публичные сети могут блокировать порт 22 или пользовательские SSH-порты. Чтобы проверить работу порта, можно, например, попробовать подключиться к другим хостам через этот же порт. Это поможет вам определить, не связана ли проблема с самим сервером.
  • Проверьте правила брандмауэра. Убедитесь, что политика по умолчанию – не DROP.

Отказ в соединении

Эта ошибка означает, что запрос передается на хост SSH, но хост не может успешно принять запрос.

На клиенте OpenSSH следующая команда выдаст ошибку:

ssh user@111.111.111.111
ssh: connect to host 111.111.111.111 port 22: Connection refused

В PuTTY ошибка появится в диалоговом окне:

Network error: Connection refused

  • Убедиться, что IP-адрес хоста указан правильно.
  • Убедиться, что сеть поддерживает подключение через используемый порт SSH. Некоторые публичные сети могут блокировать порт 22 или пользовательские SSH-порты. Чтобы проверить работу порта, можно, например, попробовать подключиться к другим хостам через этот же порт.
  • Проверить правила брандмауэра. Убедитесь, что политика по умолчанию – не DROP, и что брандмауэр не блокирует этот порт.
  • Убедиться, что сервис запущен и привязан к требуемому порту.

Рекомендации по исправлению ошибок подключения

Брандмауэр

Иногда проблемы с подключением возникают из-за брандмауэра. Он может блокировать отдельные порты или сервисы.

В разных дистрибутивах используются разные брандмауэры. Вы должны научиться изменять правила и политики своего брандмауэра. В Ubuntu обычно используется UFW, в CentOS – FirewallD. Брандмауэр iptables используется независимо от системы.

Чтобы настроить брандмауэр, нужно знать порт сервиса SSH. По умолчанию это порт 22.

Чтобы запросить список правил iptables, введите:

Такой вывод сообщает, что правил, блокирующих SSH, нет:

Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination

Если в выводе вы видите правило или политику по умолчанию REJECT или DROP, убедитесь, что цепочка INPUT разрешает доступ к порту SSH.

Чтобы запросить список правил FirewallD, введите:

Список, появившийся на экране, содержит все сервисы, которые поддерживаются брандмауэром. В списке должно быть правило:

Чтобы проверить состояние UFW, введите:

Команда вернёт доступные порты:

Status: active
To Action From
-- ------ ----
22 LIMIT Anywhere
443 ALLOW Anywhere
80 ALLOW Anywhere
Anywhere ALLOW 192.168.0.0
22 (v6) LIMIT Anywhere (v6)
443 (v6) ALLOW Anywhere (v6)
80 (v6) ALLOW Anywhere (v6)

В списке должен быть порт SSH.

Проверка состояния сервиса SSH

Если вы не можете подключиться к серверу по SSH, убедитесь, что сервис SSH запущен. Способ сделать это зависит от операционной системы сервера. В более старых версиях дистрибутивов (Ubuntu 14.04, CentOS 6, Debian 8) используется команда service. Современные дистрибутивы на основе Systemd используют команду systemctl.

Метод проверки состояния сервиса может варьироваться от системы к системе. В более старых версиях (Ubuntu 14 и ниже, CentOS 6, Debian 6) используется команда service, поддерживаемая системой инициализации Upstart, а в более современных дистрибутивах для управления сервисом используется команда systemctl.

Примечание: В дистрибутивах Red Hat (CentOS и Fedora) сервис называется sshd, а в Debian и Ubuntu – ssh.

В более старых версия используйте команду:

service ssh status

Если процесс работает должным образом, вы увидите вывод, который содержит PID:

ssh start/running, process 1262

Если сервис не работает, вы увидите:

В системах на основе SystemD используйте:

systemctl status sshd

В выводе должна быть строка active:

sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled)
Active: active (running) since Mon 2017-03-20 11:00:22 EDT; 1 months 1 days ago
Process: 899 ExecStartPre=/usr/sbin/sshd-keygen (code=exited, status=0/SUCCESS)
Main PID: 906 (sshd)
CGroup: /system.slice/sshd.service
├─ 906 /usr/sbin/sshd -D
├─26941 sshd: [accepted] └─26942 sshd: [net]

Если сервис не работает, вы увидите в выводе inactive:

sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled)
Active: inactive (dead) since Fri 2017-04-21 08:36:13 EDT; 2s ago
Process: 906 ExecStart=/usr/sbin/sshd -D $OPTIONS (code=exited, status=0/SUCCESS)
Process: 899 ExecStartPre=/usr/sbin/sshd-keygen (code=exited, status=0/SUCCESS)
Main PID: 906 (code=exited, status=0/SUCCESS)

Чтобы перезапустить сервис, введите соответственно:

service ssh start
systemctl start sshd

Проверка порта SSH

Существует два основных способа проверить порт SSH: проверить конфигурационный файл SSH или просмотреть запущенный процесс.

Как правило, конфигурационный файл SSH хранится в /etc/ssh/sshd_config. Стандартный порт 22 может переопределяться любой строкой в этом файле, определяющей директиву Port.

Запустите поиск по файлу с помощью команды:

grep Port /etc/ssh/sshd_config

Если вы уже убедились, что сервис работает, теперь вы можете узнать, работает ли он на требуемом порте. Для этого используйте команду ss. Команда netstat –plnt выдаст аналогичный результат, но команду ss рекомендуется использовать для запроса информации сокета из ядра.

В выводе должно быть указано имя программы и порт, который она прослушивает. Например, следующий вывод сообщает, что сервис SSH прослушивает все интерфейсы и порт 22.

State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:22 *:* users:(("sshd",pid=1493,fd=3))
LISTEN 0 128 . 22 . * users:(("sshd",pid=1493,fd=4))

Символ * и 0.0.0.0 указывает, что все интерфейсы сервера прослушиваются. Строка 127.0.0.1 значит, что сервис не является общедоступным. В sshd_config директива ListenAddress должна быть закомментирована, чтобы прослушивать все интерфейсы, или должна содержать внешний IP-адрес сервера.

Если у вас не получается самостоятельно настроить соединение SSH, вы можете обратиться за помощью к службе поддержки своего хостинг-провайдера.

при щелчке правой кнопкой мыши на значок шпатлевки в панели задач Windows 10, я получаю последние соединения. Нажатие на один из них просто открывает главную страницу PuTTY. Вместо подключения к этому соединению.

Это мне? Как я могу это изменить?

Это известная проблема с PuTTY 0.65 и старше на Windows 10. См.замазка ошибка win10-jumplists.

это, кажется, ошибка в Windows 10 срабатывает шпатлевка с помощью @ знак в начале аргументов командной строки, используемых в ярлыках jumplist.

Я также обновился до последней версии Putty (V. 0.67) и обнаружил, что он все еще не работает (даже после повторного пининга). Тем не менее, я понял, что мне пришлось удалить все мои Последние Сессии для ее корректной работы.

Я сделал следующее:

  • открепить замазку из панели задач
  • запустить Putty и повторно закрепить его на панели задач.
  • Закрыть Замазкой
  • щелкните правой кнопкой мыши значок шпатлевки на панели задач.
  • Правой Кнопкой Мыши каждый из пунктов в Последние Сессии и выберите удалить из этого списка)

это исправлено для меня (все шаги не могут быть полностью необходимы, но лучше безопасно, чем жаль).

  • создать новый ярлык шпатлевки windows
  • переименуйте этот ярлык в ваше любимое имя.
    • пример: dev-db.
    • пример: "C:\Program файлы (x86)\PuTTY\putty.exe " - загрузить dev-db

    Это будет дополнительный элемент панели задач putty, если вы уже была стандартная шпатлевка, прикрепленная к панели задач. Поскольку я использую только один сеанс putty каждый раз, я удалил исходный pin-код панели задач putty. Если у вас есть несколько соединений, которые вы хотите закрепить, то вы повторите описанные выше шаги для каждого из них и, вероятно, захотите изменить значки ярлыков для каждого, чтобы различать.

    хотя старая плитка начинает замазку, она все равно открывает только главную страницу. Новая закрепленная шпатлевка после установки 0.67 откроет последние соединения ok.

    При щелчке правой кнопкой мыши на значке PuTTY на панели задач Windows 10 я получаю последние соединения. Нажав на одну из них, просто откроется главная страница PuTTY. Вместо подключения к этому соединению.

    Это я? Как я могу это изменить?

    4 ответа

    Это известная проблема с PuTTY 0.65 и старше в Windows 10. См. Ошибка PuTTY win10-jumplists .

    Кажется, это ошибка в Windows 10, вызванная PuTTY, с помощью знака @ в начале его аргументов командной строки в ярлыках jumplist.

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

    Я также обновил до последней версии Putty (v. 0.67) и обнаружил, что она все еще не работает (даже после повторного поиска). Однако я понял, что мне нужно удалить все мои Recent Sessions , чтобы он работал правильно.

    Я сделал следующее:

    • Отключить Putty из панели задач
    • Запустите Putty и перетащите его на панель задач.
    • Закрыть Putty
    • Щелкните правой кнопкой мыши значок Putty на панели задач.
    • Щелкните правой кнопкой мыши каждый элемент в Последние сеансы и выберите Удалить из этого списка )

    Это исправлено для меня (все шаги могут быть не совсем необходимы, но лучше безопасны, чем извините).

    Если вы оказались в той же лодке, что и я, то есть обновленные версии PuTTy не устраняют эту проблему, вы можете использовать следующее обходное решение, которое я нашел здесь:

    • Создайте новый ярлык Windows PuTTY
    • Переименуйте этот ярлык в свое любимое имя.
      • пример: dev-db.
      • example: "C: \ Program Files (x86) \ PuTTY \ putty.exe" -load dev-db

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

      Хотя старая плитка запускает шпатлевку, она по-прежнему открывает только главную страницу. Новая закрепленная шпаклевка после установки 0,67 откроет последние соединения в порядке.

      Если щелкнуть правой кнопкой мыши значок PuTTY на панели задач Windows 10, я получаю последние подключения. Нажав на один из них, вы откроете главную страницу PuTTY. Вместо подключения к этой связи.

      Это я? Как я мог это изменить?

      Это известная проблема с PuTTY 0.65 и старше в Windows 10. См. PuTTY bug win10-jumplists .

      Кажется, это ошибка в Windows 10, вызванная PuTTY с помощью @ знака в начале аргументов командной строки, используемых в ярлыках переходов.

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

      Использование снимка разработки решает проблему для меня. исправление: закрепленные сайты не работают, но последние сайты работают. Открепить / Репин исправил это. К сожалению, это не будет работать для меня :(, попробовал «повторное закрепление», все еще не повезло . Да, я сделал обновление до снимка разработки. Изменить: Это какая-то грязная магия, вдруг она работает . Я не могу объяснить, почему . странно

      Я также обновился до последней версии Putty (v. 0.67) и обнаружил, что он все еще не работает (даже после повторного закрепления). Однако я понял, что мне нужно удалить все мои последние сеансы, чтобы он работал правильно.

      Я сделал следующее:

      • Открепить Putty от панели задач
      • Запустите Putty и снова закрепите его на панели задач.
      • Закрыть Замазка
      • Щелкните правой кнопкой мыши значок «Замазка» на панели задач.
      • Щелкните правой кнопкой мыши каждый из элементов в последних сеансах и выберите « Удалить из этого списка» )

      Это исправило это для меня (все шаги могут быть не совсем необходимыми, но лучше, чем потом сожалеть).

      На самом деле, если у вас слишком много закрепленных элементов списка переходов, вы не увидите никаких элементов в списке последних сеансов. Это сработало для меня даже без последнего шага (шпатлевка 0,67, Windows 10) Невозможно удалить последние. Ничего не делает. Последние сессии я не возражаю, но я не могу закрепить избранное, чтобы они оставались на вершине. По какой причине я исследовал это? Маленькая вещь, но раздражает. Я уверен, что проблема реестра нуждается в очистке от предыдущих установок / запусков.

      Если вы оказались в той же лодке, что и я, то есть обновленные версии PuTTy не устранили эту проблему, вы можете использовать следующий обходной путь, который я нашел здесь: