Рейтинг:2

Как получить доступ к домашнему ssh-серверу извне через Интернет?

флаг gp

Я использую сервер Ubuntu 20.04, и ни с того ни с сего у меня тайм-аут операции. Мне было интересно, как я могу решить проблему.

Я использую ufw, и порт подключения открыт. поэтому, когда я использую статус sudo ufw , он показывает мне, что порт доступен.

Когда я бегу статус systemctl sshd Я понимаю, что процесс активен и что sshd слушает 0.0.0.0 порт xx и :: порт xx

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

Изменить: я могу подключиться к серверу в интрасети, но не извне. Есть ли способ заблокировать ssh из Интернета, а не из интрасети?

флаг gp
Маршрутизатор обслуживает веб-сайт, он находится за маршрутизатором, и веб-сайт работает. Как вы думаете, может быть что-то в роутере?
флаг gp
Спасибо, что указали на это. Правда, на роутере порт не пробрасывается. Можете ли вы переместить свой комментарий в качестве ответа, чтобы я мог отметить его как правильный?
флаг ar
Всегда пожалуйста. Чуть позже напишу ответ.
флаг ar
Нажмите на серую галочку " рядом с ответом, который вы считаете правильным, и сделайте его зеленым ". Это пометит вашу проблему как решенную и поможет другим.
флаг ar
Администраторам и близким избирателям я знаю, что это не совсем проблема Ubuntu. Тем не менее, он проявляется как один из новых домашних пользователей Ubuntu, не знакомых с некоторыми сетевыми концепциями. Раньше я голосовал за закрытие подобных вопросов, но они продолжают появляться. Я думаю, что этот вопрос заслуживает места на этом сайте.
Рейтинг:2
флаг ar

Настройка порта

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

ssh по умолчанию использует порт 22. Я предполагаю, что вы не изменили это. Если вы изменили этот порт, вам нужно будет внести соответствующие изменения в приведенные ниже инструкции.

Настройка роутера

Убедитесь, что порт 22 переадресован на внутренний IP-адрес сервера Ubuntu на домашнем маршрутизаторе. Это позволит любому, кто находится за пределами домашней локальной сети, использовать ssh для подключения к домашним компьютерам.

Инструкции зависят от маршрутизатора и выходят за рамки этого ответа, поскольку не имеют ничего общего с Ubuntu.

Некоторые маршрутизаторы позволяют указать как входящий порт (из Интернета), так и исходящий порт (на внутренний IP-адрес локальной сети для сервера Ubuntu). В этом случае вы можете использовать другой порт, скажем, 2200, когда вы подключаетесь извне, и соответствующим образом настройте маршрутизатор:

введите описание изображения здесь

Картинка выше — это всего лишь пример. Настройки в вашем роутере могут выглядеть иначе.

Если вы изменили порт по умолчанию в /etc/ssh/sshd_config тогда вам нужно будет установить внутренний порт выше на этот порт вместо порта 22.

Чтобы узнать, как настроить ssh для работы в домашней локальной сети см. Соедините два компьютера с помощью SSH в домашней локальной сети

Вот еще перенаправление портов: как вести для справки.

Надеюсь это поможет

Ответить или комментировать

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