Динамическая переадресация портов позволяет обходить китайский Великий файрвол или другие системы интернет-фильтрации и защиты. В этом материале мы разберем, как с помощью SSH-клиентов, таких как OpenSSH и PuTTY, настроить защищённый SSH-туннель с поддержкой динамической переадресации портов.
Содержание статьи
Требования
Между вашим компьютером и удалённым сервером будет настроен SSH-туннель. Для выполнения этого руководства вам понадобится виртуальный частный сервер (VPS), который позволяет обходить блокировки сайтов (вне зависимости от местоположения или интернет-ограничений). Я рекомендую VPS от Kamatera, который предоставляет:
- Бесплатный пробный период на 30 дней.
- Цена начинается от $4 в месяц за 1 ГБ оперативной памяти.
- Высокопроизводительные VPS на основе KVM
- 9 центров обработки данных по всему миру, включая такие страны, как США, Канада, Великобритания, Германия, Нидерланды, Гонконг и Израиль.
Воспользуйтесь инструкцией по ссылке ниже для создания собственного Linux VPS сервера на платформе Kamatera.
- Как развернуть сервер Linux VPS на платформе Kamatera
Когда у вас будет VPS с запущенным сервером OpenSSH, выполните следующие шаги.
Динамическая пересылка портов с использованием клиента OpenSSH
SSH-клиент OpenSSH доступен практически во всех дистрибутивах Linux и также был адаптирован для работы на Windows 10 и Windows 11. Используйте следующую команду для подключения к удалённому SSH-серверу с включённой динамической пересылкой портов.
ssh - D номер-порта пользователь@ssh-сервер-ip
Если у вас есть пользователь john на удалённом SSH-сервере с адресом 12.34.56.78, вы можете выполнить:
Пожалуйста, введите пароль для аккаунта john. Использование опции — D активирует динамическую переадресацию портов. Порт 1080 является одним из популярных вариантов. Также допустимо применять другие порты, например, 8080.
После выполнения данной команды будет создан защищенный SSH-туннель с динамической пересылкой портов между вашим Linux ПК и SSH-сервером. SSH-клиент начнет прослушивание на 127.0.0.1:1080, функционируя как локальный SOCKS-прокси-сервер. Вы можете это проверить с помощью
sudo netstat - lnpt
Перенаправление интернет-трафика браузера с помощью SSH-туннеля.
Теперь в вашем браузере Firefox перейдите в Настройки > Дополнительно > Сеть > Настройки.

Выберите вариант ручной настройки прокси. Введите 127.0.0.1 в поле для SOCKS Host и укажите 1080 как номер порта. Активируйте опции SOCKS v5 и Remote DNS. Затем нажмите кнопку OK.

Если вы не осуществляете проверку удаленного DNS, ваш DNS-трафик не будет защищен туннелированием.
Теперь откройте сайт https://www.whatismyip.com. Вы заметите, что ваш IP-адрес совпадает с IP-адресом SSH-сервера. Вы успешно обошли защиту брандмауэра и теперь можете свободно пользоваться Интернетом.
Все приложения, поддерживающие SOCKS-прокси, способны задействовать этот SSH-туннель для маскировки своего истинного IP-адреса.
Если ваша сеть работает медленно, вы можете активировать сжатие с помощью параметра — C, что поможет ускорить подключение, как указано ниже:
Если вы предпочитаете не вводить пароль SSH при каждом подключении, можете настроить вход без пароля.
- Два простых шага для настройки входа по SSH без использования пароля на Ubuntu.
Динамическое портовое перенаправление с использованием клиента PuTTY для SSH.
Клиент PuTTY для SSH также предлагает возможность динамического перенаправления портов. Для установки PuTTY на системах Debian/Ubuntu используйте:
sudo apt-get install putty
Откройте клиент PuTTY SSH, выберите SSH >В левой части экрана найдите раздел Tunnels. После этого в правой части введите начальный порт, например, 1080. Установите тип перенаправления портов на Dynamic и нажмите кнопку Add.

После этого выберите «Сессия» в левом меню, затем введите IP-адрес вашего сервера в разделе «Имя хоста». В строке «Сохранить сессии» укажите название для этой сессии, например DPF (динамическое перенаправление портов), и нажмите на кнопку «Сохранить».

Введите имя пользователя и пароль для подключения к SSH-серверу. В результате будет установлен SSH-туннель с динамическим перенаправлением портов, и PuTTY начнет прослушивание 127.0.0.1:1080, функционируя как локальный SOCKS-прокси-сервер. Для проверки открытых портов на вашем компьютере используйте команду netstat:
sudo netstat - lnpt
Теперь вам остается только перенаправить трафик вашего браузера через созданный SSH-туннель.
Весь трафик в SSH-туннеле защищен шифрованием. Если вы подключаетесь к небезопасной сети Wi-Fi в общественных местах, стоит подумать о применении динамического портового перенаправления SSH для обеспечения безопасности вашего интернет-трафика.
Имейте в виду, что SOCKS-прокси прекратит свою работу по окончании сессии SSH.
Ваши комментарии, вопросы и предложения всегда актуальны. Если этот пост оказался для вас полезным, не стесняйтесь делиться им с друзьями в социальных сетях! Следите за нами, чтобы не пропустить новые учебники по Linux.

