Как использовать обратный SSH-туннель для разрешения внешних подключений к ПК

Как использовать обратный SSH-туннель для разрешения внешних подключений к ПК

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

Все эти ограничения пользователи могут преодолеть с помощью виртуальных частных серверов. Все будет работать с объемом оперативной памяти менее 512 МБ, поскольку все, что нужно, — это перенаправить сетевой трафик. Он не потребляет много оперативной памяти и процессора. Сервер будет принимать входящие соединения и перенаправлять их на компьютер через « обратный SSH-туннель ». Таким образом, вы можете настроить домашний сервер любого типа за очень небольшую ежемесячную плату.

Представьте, что вы создаете сервер NextCloud для загрузки или синхронизации файлов. Вы защитите конфиденциальность своих файлов, когда они находятся на вашем домашнем сервере, и при необходимости вы можете купить жесткий диск емкостью 6 ТБ, чтобы увеличить емкость хранилища. Ежемесячный счет за электроэнергию составляет менее 5 долларов США в месяц (115 000 донгов) для виртуального частного сервера. Дешевле, чем ежемесячный счет за сервер емкостью 6 ТБ.

Примечание . Этот метод используется только для перенаправления сетевого трафика TCP. TCP используется веб-сервером (порт 80/tcp). UDP используется некоторыми (но не всеми) игровыми серверами, например Counter Strike (порт 27015/UDP). UDP-туннелирование также возможно, но требует некоторых хитростей.

Позволяет внешнее подключение к ПК

В Windows 10 теперь есть встроенный SSH-клиент

Больше нет необходимости использовать PuTTY для инициации SSH-соединений. В этом уроке мы будем использовать встроенный SSH-клиент для настройки туннеля. Прочтите статью LuckyTemplates « Как установить OpenSSH в Windows 10» , чтобы узнать больше.

Подготовьте виртуальный частный сервер для туннельного подключения

Создайте виртуальный частный сервер с вашим любимым провайдером. Самое главное — выбрать расположение сервера как можно ближе, чтобы минимизировать задержку в сети. Попробуйте настроить сервер таким образом, чтобы вы могли войти непосредственно в учетную запись root, желательно с ключом SSH, так как это более безопасно. Это необходимо, если вы хотите, чтобы сервер «прослушивал» входящие соединения на портах ниже 1024, также известных как привилегированные порты.

Откройте командную строку (или терминал, если вы используете Linux) и войдите на сервер через SSH.

Измените настройки сервера OpenSSH:

nano /etc/ssh/sshd_config

Если вы вошли в систему не как root, а как обычный пользователь, вам нужно будет использовать эту команду, чтобы сохранить файл:

sudo nano /etc/ssh/sshd_config

Прокрутите вниз, пока не найдете переменную с именем GatewayPorts. Эта строка может выглядеть так:

#GatewayPorts no

Удалите # (чтобы превратить его из комментария в часть программы) и измените строку на:

GatewayPorts yes

Если вы не можете найти эту строку, просто прокрутите страницу вниз и добавьте ее самостоятельно:

GatewayPorts yes

Как использовать обратный SSH-туннель для разрешения внешних подключений к ПК

Нажмите Ctrl + X , затем нажмите y и, наконец, Enter , чтобы сохранить файл.

Перезагрузите демон SSH, чтобы он принял новые настройки.

systemctl reload ssh.service

Выйдите из сеанса SSH.

exit

Как настроить обратный SSH-туннель

Параметры команды одинаковы в Linux, Windows и даже BSD. Общий синтаксис:

ssh -R remote_port:host:localport your_username@IP-of-server
  • Remote_port сообщает серверу о необходимости перенаправить соединения к нему через этот порт.
  • хост сообщает серверу IP-адрес, на который будет перенаправлено соединение. Здесь будет использоваться адрес 127.0.0.1 для перенаправления на собственный компьютер пользователя.
  • localport указывает, на какой порт следует перенаправлять пакеты. Здесь пользователь должен задать номер порта, который «слушает» установленное на локальном компьютере приложение.

Например, чтобы перенаправить все соединения через порт 80 (на сервер) и отправить их на порт 8080 на локальном компьютере, команда будет такой:

ssh -R 80:127.0.0.1:8080 root@203.0.113.1

Предполагается, что у вас есть веб-сервер, такой как Apache или Nginx, локально прослушивающий порт 8080. Но если Apache/Nginx прослушивает порт 80 по умолчанию, то нет проблем с использованием одного и того же порта дважды в предыдущей команде (поскольку они относятся к порту 80 на другом сервере).

ssh -R 80:127.0.0.1:80 root@203.0.113.1

На этом этапе, если кто-то введет IP-адрес вашего виртуального частного сервера в адресную строку своего браузера, его соединение будет перенаправлено и обработано вашим локальным компьютером.

Как использовать обратный SSH-туннель для разрешения внешних подключений к ПК

На изображении выше использован простой веб-сервер для Chrome, который по умолчанию прослушивает порт 8887. Пользователи могут попробовать эту настройку самостоятельно, установив приложение, а затем воспользовавшись командой, как показано на рисунке.

Стоит отметить, что для поддержания активности туннеля сеанс SSH должен оставаться активным. Чтобы закрыть туннель, введите Exit в окне терминала или командной строки.

Как видите, создать обратный SSH-туннель несложно, но безопасность веб-сайта — это другое. Итак, если вы решите реализовать такую ​​идею, как локальный сервер NextCloud, изолируйте ее хотя бы на виртуальной машине. Таким образом, если веб-сайт будет взломан, по крайней мере остальная часть операционной системы не пострадает.

И еще одна важная вещь, которую следует помнить: всегда делайте резервную копию того, что вы не хотите рисковать потерять!

Надеюсь, вы добьетесь успеха.


Как очистить и сбросить кеш Microsoft Store в Windows 10

Как очистить и сбросить кеш Microsoft Store в Windows 10

Если у вас возникли проблемы с установкой или обновлением приложения «Магазин» в Windows 10, это может быть связано с проблемой с кешем магазина. Узнайте как <strong>очистить кеш магазина Microsoft</strong> для вашей учетной записи в Windows 10.

Топ-10 лучших бесплатных программ-кейлоггеров для Windows

Топ-10 лучших бесплатных программ-кейлоггеров для Windows

Кейлоггер - это программное обеспечение для захвата и сбора информации о нажатиях клавиш. Узнайте о лучших бесплатных кейлоггерах для Windows. Как защитить свои данные!

Как всегда запускать Microsoft Edge в режиме InPrivate в Windows 10

Как всегда запускать Microsoft Edge в режиме InPrivate в Windows 10

Если вы используете Microsoft Edge на общем компьютере с Windows 10 и хотите сохранить конфиденциальность своей истории просмотров, узнайте, как настроить Edge для запуска в режиме InPrivate.

8 способов открыть MSConfig в Windows 11

8 способов открыть MSConfig в Windows 11

Вы можете решить многие проблемы, возникающие в Windows 11, с помощью настройки системы. Например, если игра не запускается, открытие и изменение настроек MSConfig может решить проблему.

Инструкция по настройке и использованию VPNBook на Windows

Инструкция по настройке и использованию VPNBook на Windows

VPNBook — бесплатный провайдер VPN с неограниченной пропускной способностью, идеален для доступа к заблокированным сайтам. Узнайте, как настроить VPN на Windows за считанные минуты.

Включить/отключить функцию встроенного автозаполнения в проводнике и диалоговом окне «Выполнить» в Windows 10.

Включить/отключить функцию встроенного автозаполнения в проводнике и диалоговом окне «Выполнить» в Windows 10.

Узнайте, как включить или отключить встроенное автозаполнение в адресной строке проводника и диалоговом окне «Выполнить» в Windows 10. Следуйте нашим простым шагам!

6 способов получить доступ к меню параметров загрузки в Windows 10

6 способов получить доступ к меню параметров загрузки в Windows 10

Windows 10 предоставляет <strong>меню параметров загрузки</strong>, позволяющее исправлять проблемы и перенастраивать систему. Узнайте, как получить доступ к этому меню.

Как запустить любое приложение с помощью кнопки «Удобство доступа» на экране входа в Windows 10

Как запустить любое приложение с помощью кнопки «Удобство доступа» на экране входа в Windows 10

Кнопка «Удобство доступа» на экране входа в Windows 10 дает возможность пользователям запускать приложения, такие как диспетчер задач и командную строку, для улучшения доступа и функциональности.

Как изменить веб-камеру по умолчанию на компьютере с Windows 10

Как изменить веб-камеру по умолчанию на компьютере с Windows 10

Эта статья поможет вам настроить переключение между веб-камерами на компьютере с Windows 10. Убедитесь, что у вас по умолчанию установлена нужная веб-камера.

9 способов открыть Блокнот в Windows 11

9 способов открыть Блокнот в Windows 11

Узнайте, как быстро и удобно открыть Блокнот в Windows 11 различными способами. Bлокнот — это незаменимое текстовое приложение, которое всегда под рукой.