0Pricing
Linux Server Deployment & SSH Mastery · Урок

Туннели SSH и прокси SOCKS

Создавайте защищённые туннели SSH для шифрования обмена данными и настраивайте прокси SOCKS для анонимного просмотра веб-сайтов или обхода сетевых ограничений.

«Туннели SSH и прокси SOCKS» — бесплатный урок Linux Server Deployment & SSH Mastery на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Linux Server Deployment & SSH Mastery, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Linux Server Deployment & SSH Mastery содержит 4 уроков всего.

Введение в туннели SSH

Добро пожаловать в раздел «Туннели SSH»! Это не физические туннели, а защищённые соединения, позволяющие перенаправлять сетевой трафик через SSH-сервер.

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

Зачем нужны туннели SSH?

Туннели SSH очень универсальны и полезны разработчикам и системным администраторам. Они помогают Вам:

  • Обходить межсетевые экраны: получать доступ к внутренним службам, не опубликованным в интернете.
  • Защищать незашифрованный трафик: шифровать данные, которые обычно передаются небезопасно (например, при использовании старых протоколов).
  • Получать доступ к ограниченным ресурсам: подключаться к службам в частной сети из общедоступной сети и наоборот.

Объяснение локального перенаправления портов

Локальное перенаправление портов — это подключение порта на Вашем локальном компьютере к порту на удалённом компьютере через SSH-сервер.

SSH-сервер выступает посредником. Ваше локальное приложение подключается к локальному порту, а SSH безопасно перенаправляет этот трафик на указанные удалённый узел и порт.

Локальное перенаправление: команда

Синтаксис локального перенаправления портов прост:

ssh -L [local_port]:[remote_host]:[remote_port] [user]@[ssh_server]

Вот пример доступа к базе данных, работающей на db-server (порт 3306), через сервер ssh-gateway:

ssh -L 8080:db-server:3306 user@ssh-gateway.com

Локальное перенаправление: практическое применение

После выполнения команды из предыдущей сцены Вы сможете подключить локальный клиент базы данных к localhost:8080.

Весь трафик, который Вы отправите на localhost:8080, будет безопасно перенаправлен через ssh-gateway.com к db-server:3306. Это удобно для доступа к частным базам данных и веб-службам.

Объяснение удалённого перенаправления портов

Удалённое перенаправление портов — противоположность локальному перенаправлению. Оно позволяет опубликовать службу, работающую на Вашем локальном компьютере, через порт на удалённом SSH-сервере.

Таким образом, другие пользователи смогут подключаться к порту на удалённом SSH-сервере, а их трафик будет безопасно перенаправляться к Вашей локальной службе.

Удалённое перенаправление: команда

В синтаксисе удалённого перенаправления портов используется флаг -R:

ssh -R [remote_port]:[local_host]:[local_port] [user]@[ssh_server]

Допустим, на локальном компьютере работает веб-сервер на порту 8000, и Вы хотите сделать его доступным другим пользователям через ssh-gateway на порту 8888:

ssh -R 8888:localhost:8000 user@ssh-gateway.com

Удалённое перенаправление: практическое применение

После создания удалённого туннеля любой, кто может подключиться к ssh-gateway.com, сможет получить доступ к Вашему локальному веб-серверу, подключившись к ssh-gateway.com:8888.

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

Прокси SOCKS через SSH

Прокси SOCKS позволяет направлять весь трафик приложения (например, веб-браузера или чата) через SSH-сервер. Это часто используется для анонимизации просмотра веб-страниц или обхода сетевых ограничений.

Флаг -D создаёт прокси SOCKS на локальном порту:

ssh -D 9999 user@ssh-gateway.com

Настройка клиента для работы с SOCKS

После выполнения команды ssh -D 9999 user@ssh-gateway.com у Вас будет запущен прокси SOCKS на localhost:9999.

Затем настройте веб-браузер или другое приложение на использование localhost в качестве прокси SOCKS5 на порту 9999. Весь интернет-трафик этого приложения теперь будет безопасно направляться через ssh-gateway.

Проверка туннелей

Вы пытаетесь получить доступ с локального компьютера (localhost) к частной внутренней веб-службе, работающей по адресу internal-app.local:80. У Вас есть доступ по SSH к jump-host.com.

Какую команду SSH следует использовать, чтобы перенаправить локальный порт 8080 к внутренней веб-службе?

Итоги: туннели и прокси

Вы освоили туннели SSH! Мы рассмотрели:

  • Локальное перенаправление портов (-L): доступ к удалённым службам с локального компьютера.
  • Удалённое перенаправление портов (-R): публикация локальных служб через удалённый SSH-сервер.
  • Прокси SOCKS (-D): направление всего трафика приложения через SSH-сервер для обеспечения конфиденциальности или обхода ограничений.

Эти методы — мощные инструменты для безопасного и гибкого доступа к сети при разработке и администрировании.

Часто задаваемые вопросы

Урок «Туннели SSH и прокси SOCKS» бесплатный?

Да — полный текст урока «Туннели SSH и прокси SOCKS» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Linux Server Deployment & SSH Mastery, подпишись на CoddyKit PRO. Курс Linux Server Deployment & SSH Mastery содержит 4 уроков всего.

Чему я научусь в уроке «Туннели SSH и прокси SOCKS»?

Создавайте защищённые туннели SSH для шифрования обмена данными и настраивайте прокси SOCKS для анонимного просмотра веб-сайтов или обхода сетевых ограничений. Ты практикуешь Linux Server Deployment & SSH Mastery с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Linux Server Deployment & SSH Mastery?

Предыдущий опыт не требуется. Linux Server Deployment & SSH Mastery на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Туннели SSH и прокси SOCKS»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Linux Server Deployment & SSH Mastery?

Да. Каждый урок Linux Server Deployment & SSH Mastery включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Перенаправление портов SSH (локальное и удалённое)
  2. Туннели SSH и прокси SOCKS
  3. Агент SSH и многоступенчатые подключения
  4. Безопасная передача файлов с помощью SCP, SFTP и rsync
← Назад к Linux Server Deployment & SSH Mastery