Обычно с SSH, если вы делаете "telnet localhost 22", вы получите что-то вроде этого:

SSH-2.0-OpenSSH_6.7p1 Ubuntu-5ubuntu1

В этот момент клиент должен отправить что-то подобное назад, и тогда происходит согласование алгоритма.

Так что, если я делаю telnet localhost 22 с моей гостевой машины (Ubuntu), это именно то, что происходит. Если я делаю sudo netstat -lntp я вижу это:

Proto Recv-Q Send-Q Local Address       Foreign Address     State
tcp        0      0 0.0.0.0:22          0.0.0.0:*           LISTEN
tcp        0      0 :::22               :::*                LISTEN

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

Мои настройки переадресации портов в Virtual Box следующие:

Хост работает под управлением Windows 8.1.

Если я пытаюсь подключиться к localhost:4022 из хост-ОС - из Windows 8.1 - я не получу SSH-2.0-OpenSSH_6.7p1 Ubuntu-5ubuntu1 обратно, как при подключении к порту 22 через гостевую ОС. И я не знаю почему.

Есть идеи?

2 ответа2

1

Вы убедились, что у вас открыт порт в iptables? Я совершенно уверен, что по умолчанию большинство / все порты заблокированы.

Вот быстрый тест.

Проверьте текущие настройки iptables с помощью:

sudo iptables -L

Я ожидаю, что вы увидите, что у него нет текущих правил, что означает, что он будет запрещать соединения. Чтобы проверить, что это iptables, очистите таблицы, чтобы разрешить все (это временное действие только для проверки):

sudo iptables -F

Теперь попробуйте ваше внешнее соединение SSH.
Если это работает, это подтверждает, что это был iptables. Перезапустите iptables ('sudo service iptables restart'), а затем посмотрите на добавление правила (й) для разрешения доступа SSH. Вы можете получить довольно детальный с вашими правилами. Есть много онлайн-ресурсов от частных лиц, которые гораздо лучше разбираются в iptables, чем я, и вы можете найти их с помощью быстрого поиска, который поможет вам добавить правила.

0

Я полагаю, ваша виртуальная сеть настроена на NAT.

В правилах переадресации портов оставьте пустыми два поля адреса.

Проверьте подключение к порту 4022 вашего хоста с другого компьютера.

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