SSH к контейнеру с внешней машины

295
Stokke

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

Ситуация такая:

  • ssh работает в контейнере QNAP Docker с Ubuntu.
  • контейнер использует переадресацию портов, скажем, Host: 9999 для container: 22.
  • Затем я могу подключиться к Putty внутри своей сети, используя локальный IP-адрес или имя.

Пока все хорошо. Затем я пытаюсь получить доступ извне:

  • Маршрутизатор от интернет-провайдера находится в режиме моста.
  • google wifi настроен с внешним портом 9999 на порт NAS 9999
  • «отладка» с «щитами вверх»:
    • порт меняется с «стелс» на «закрытый» при открытии порта.
    • порт меняется с «закрыт» на «открыт» при запуске контейнера.

... но почему-то я все еще не могу подключиться. Замазка дает следующие ошибки:

  • при подключении с удаленного компьютера: «Ошибка сети: время ожидания истекло».
  • при использовании WAN IP с компьютера внутри моей сети: «Ошибка сети: соединение отказано»

Что я не делаю или забываю? Есть ли какая-то конфигурация ssh, о которой я не знаю?

0

1 ответ на вопрос

0
Stokke

После нескольких часов отдыха я смог решить это довольно быстро.

Я пришел к выводу, что я должен проверить это в еще одной сети.

Сначала я использовал ssh server test, который дал положительный результат.

Затем я приступил к тестированию с ноутбуком через телефон, и там это тоже сработало!

Так,

  • Когда он находится в одной сети и использует публичный IP, он просто не будет работать (какая-то проблема с обратной связью?).
  • Другой тестовый компьютер находился в сети компании, поэтому, возможно, брандмауэр блокировал соединение.