1

Вот ситуация. SSH работал прекрасно до дня назад. Я не делал ничего необычного. Я смог замазать свой сервер, использовать git over ssh и т.д.

Но сейчас я не могу ничего сделать. Ошибка является постоянной и распространена среди всех клиентов и устройств SSH, которые я использую (putty, git bash, cmder и т.д.). Ошибка, конечно, является тайм-аут соединения. И вот что я попробовал до сих пор.

  • ssh -vvv mydomain.com не возвращает ничего полезного, просто та же ошибка после множества бесполезных вещей.
  • Пробовал отключать брандмауэр Windows (Дух). Нет торта
  • Проверил и убедился, что мой сервер все еще работает:22. Обратите внимание, Git-соединение с bitbucket больше не работает.
  • Пробовал на другом устройстве (мой ноутбук). Все еще время ожидания соединения. (Так что ОС, вероятно, здесь не виновата).
  • Пробовал сбрасывать роутер. Нет торта
  • Смена интернет-соединения устраняет проблему.

Так может интернет провайдер заблокировал 22 порт? Но это работало вчера. А также как мне убедиться, что проблема на стороне провайдера?

1 ответ1

1

Для интернет-провайдера было бы необычно блокировать исходящие соединения SSH, т.е. исходящие соединения с портом назначения TCP- порта 22, но вы можете проверить это с одной из клиентских систем, например, с помощью PuTTY, чтобы попытаться подключиться к порту 22 на portquiz.net ; сервер portquiz.net прослушивает все порты TCP, что позволяет вам проверить любой исходящий порт TCP. Вы должны увидеть запрос имени пользователя и пароля с сервера portquiz.

Вы упомянули, что не уверены, что существует проблема на стороне сервера, поскольку вы можете подключиться к серверу SSH из другого места. Поскольку программное обеспечение брандмауэра может блокировать определенные IP-адреса или диапазоны адресов, вам следует убедиться, что оно не блокирует IP-адреса, назначенные вашим системам вашим Интернет-провайдером; Вы можете посетить www.whatismyip.com, чтобы определить свой назначенный внешний IP-адрес. Если сервер использует iptables для возможностей брандмауэра, см. Как составить список и удалить правила брандмауэра Iptables.

Обычно не стоит ожидать, что какой-либо блок брандмауэра будет установлен без вашего специального запроса, но если на сервере запущено Fail2ban или какое-либо подобное программное обеспечение для системы обнаружения вторжений (IDS), если вы случайно ошибочно набрали свои учетные данные для входа в систему несколько раз при попытке для входа по SSH даже возможно, что ваш IP-адрес был заблокирован для SSH-соединений на сервере, хотя этот запрет может быть временным. Если на сервере запущен Fail2ban, проверьте его файл журнала, вероятно, в /var/log/fail2ban.log ; если адрес есть, вы можете разблокировать IP-адрес.

Есть ли у вас доступ к серверу из клиентских систем на других портах? Например, если сервер функционирует как веб-сервер, можете ли вы подключиться к порту 80 и / или 443 из клиентских систем? Или порт 25, если он функционирует как почтовый сервер. Можете ли вы пинговать сервер с клиентских систем? Если у вас нет доступа к другим портам, когда вы ожидаете такого доступа, если на сервере вашего IP-адреса нет блока, возможно, существует проблема с сетевым подключением между вашим провайдером и сервером.

Wireshark - очень полезный инструмент для устранения проблем с подключением. Это бесплатно и доступно для различных операционных систем, включая Microsoft Windows. Вы можете установить его на одну из клиентских систем и наблюдать за сетевым трафиком между вашими системами и сервером. Он может захватывать и отображать весь сетевой трафик между системой, в которой он запущен, и другими системами; Чтобы изолировать только трафик между клиентской системой и сервером, вы можете настроить Wireshark для фильтрации по номеру порта, например, 22 или IP-адресу. Существует также инструмент командной строки WinDump, который является эквивалентом обычно используемой утилиты tcpdump в системах Linux, но, поскольку Wireshark предоставляет графический интерфейс пользователя (GUI), анализировать трафик с его помощью будет проще. С помощью анализатора пакетов, такого как Wireshark, вы можете определить, видит ли клиентская система какие-либо пакеты с сервера или весь ли трафик является односторонним, т.е. от клиента к серверу.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .