ssh: подключиться к хост-порту 22: соединение отказано
Я пытаюсь подключиться к моей новой Raspberry Pi с помощью MobaXterm, но получаю следующую ошибку:
ssh: подключиться к хосту... порт 22: соединение отказано.
И ПК, и Raspberry Pi имеют проводные соединения с маршрутизатором, и я могу успешно пропинговать Raspberry Pi. У меня тоже такая же проблема с замазкой.
Чтобы проверить мое соединение, я также попытался войти в суперкомпьютер на работе через MobaXterm, но он возвращает ту же ошибку. Я точно знаю, что ssh работает на этом компьютере, так как я могу подключиться к нему с моего рабочего компьютера. Я проверил, и мой провайдер не блокирует порт 22, я попытался отключить брандмауэр, переадресацию портов и т. Д., Но ничего не получилось. У меня нет монитора с подключением HDMI, поэтому я не могу проверить, могу ли я войти в компьютер на работе с помощью Raspberry Pi. Буду признателен за любые предложения. Заранее спасибо.
1 ответ
Поэтому я сделал картину, чтобы проиллюстрировать наше текущее состояние и помочь в объяснении.
"А" - это компьютер дома, "Б" - компьютер на работе, "С" - другой компьютер на работе.
"C" имеет доступ к "B".
"А" не имеет доступа к "В", и это наша проблема, которая должна быть решена.
Наиболее распространенной причиной этого является то, что "B" и "C" находятся в одной сети, "A" должен пройти через маршрутизатор, чтобы иметь доступ к "B" или "C".
"B" и "C" имеют локальные IP-адреса, скажем, например, 192.168.13.10
для "B" и 192.168.13.20
для "C". Маршрутизатор также имеет свои собственные IP-адреса один внутренний (например, 192.168.13.1
) и один внешний (напр. 10.10.10.11
) это может быть достигнуто через Интернет.
"B" и "C" могут легко общаться друг с другом, вызывая друг друга по локальному IP-адресу, поскольку они находятся в одной сети, если "C" хочет общаться с "B" через порт 22, все, что ему нужно сделать. открытое общение на 192.168.13.10:22
,
Это немного усложняется, когда "A" хочет достичь "B" или "C", так как есть только один IP-адрес, к которому можно получить доступ через Интернет, и это внешний IP-адрес маршрутизатора: 10.10.10.11
,
Здесь происходит переадресация портов на маршрутизаторе, то есть, допустим, мы хотим переслать всю информацию, которую маршрутизатор получает на порт 12345
до порта 22 "С". Таким образом, мы должны настроить перенаправление портов маршрутизатора, говоря, что входящее соединение на порт 12345
быть направленным в 192.168.13.20:22
(адрес компьютера "C")
С этого момента, если я хочу получить доступ к порту 22 компьютера "C" с внешнего компьютера, мне просто нужно подключиться к 10.10.10.11:12345
поэтому для того, чтобы это работало и имел доступ к компьютеру "B" с компьютера "A", мы должны иметь переадресацию портов в маршрутизаторе на свободный порт, который ссылается на внутренний адрес порта 22 компьютера "B",