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

Перенаправление портов SSH (локальное и удалённое)

Освойте локальное и удалённое перенаправление портов для безопасного доступа к внутренним службам или предоставления удалённой сети доступа к локальным службам.

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

Защищённые туннели с помощью SSH

SSH нужен не только для входа в систему! С его помощью можно создавать защищённые «туннели» для перенаправления сетевого трафика.

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

Представьте, что Вы прокладываете частный зашифрованный мост между разными сетевыми портами.

Зачем нужно перенаправление портов?

Перенаправление портов очень полезно разработчикам и системным администраторам:

  • Доступ к внутренним службам: подключение с локального компьютера к базе данных или веб-интерфейсу в частной сети.
  • Публикация локальных служб: предоставление другим пользователям доступа к локальному серверу разработки из удалённой сети.
  • Обход межсетевых экранов: защищённое подключение к службам за ограничивающими правилами межсетевого экрана.

Локальное перенаправление портов (L)

Локальное перенаправление портов создаёт туннель от Вашего локального компьютера к удалённому серверу, а затем к другому месту назначения.

Это можно представить так: «Весь трафик, который я отправляю на localhost:8000 со своего компьютера, передайте через SSH на remote-server, а оттуда перенаправьте на internal-db:5432».

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

Для локального перенаправления портов используется флаг -L:

ssh -L [LOCAL_PORT]:[REMOTE_HOST]:[REMOTE_PORT] [SSH_USER]@[SSH_SERVER]

  • LOCAL_PORT: порт на Вашем компьютере.
  • REMOTE_HOST: узел, к которому подключается SSH-сервер.
  • REMOTE_PORT: порт на REMOTE_HOST.
  • SSH_SERVER: сервер, к которому Вы подключаетесь по SSH.

Сценарий локального перенаправления

Представьте, что база данных работает по адресу db.internal.network:5432. Ваш SSH-сервер (my-server.com) может подключиться к ней, а Ваш ноутбук — нет.

Вы хотите подключиться к этой базе данных с помощью локального инструмента, например DBeaver или psql.

Локальное перенаправление позволяет сделать именно это!

Локальное перенаправление в действии

Создадим туннель от локального порта 5432 к удалённой базе данных db.internal.network:5432 через my-server.com.

ssh -L 5432:db.internal.network:5432 user@my-server.com

Теперь любое подключение к localhost:5432 на Вашем компьютере будет безопасно направлено к db.internal.network:5432.

Удалённое перенаправление портов (R)

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

Это можно представить так: «Весь трафик, отправленный на my-server.com:8080, передайте через SSH на мой ноутбук, а оттуда перенаправьте на localhost:3000».

Синтаксис удалённого перенаправления

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

ssh -R [REMOTE_PORT]:[LOCAL_HOST]:[LOCAL_PORT] [SSH_USER]@[SSH_SERVER]

  • REMOTE_PORT: порт на SSH-сервере.
  • LOCAL_HOST: узел, к которому подключается SSH-сервер (обычно localhost).
  • LOCAL_PORT: порт на LOCAL_HOST.
  • SSH_SERVER: сервер, к которому Вы подключаетесь по SSH.

Сценарий удалённого перенаправления

Вы разрабатываете веб-приложение на ноутбуке по адресу localhost:3000. Вы хотите показать его коллеге, но он находится в другой сети.

С помощью удалённого перенаправления можно сделать локальное приложение доступным через порт на общедоступном SSH-сервере (например, my-server.com:8080).

Удалённое перенаправление в действии

Опубликуем локальное веб-приложение, работающее по адресу localhost:3000, через порт 8080 на my-server.com.

ssh -R 8080:localhost:3000 user@my-server.com

Теперь коллега сможет открыть Ваше приложение, перейдя в браузере по адресу http://my-server.com:8080!

Тест: перенаправление портов

Перенаправление портов SSH — мощный инструмент. Какие утверждения точно описывают его использование?

Туннели защищены!

Вы освоили перенаправление портов SSH!

  • Локальное перенаправление (-L) соединяет локальный порт с удалённой службой.
  • Удалённое перенаправление (-R) соединяет порт удалённого сервера с локальной службой.

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

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

Урок «Перенаправление портов SSH (локальное и удалённое)» бесплатный?

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

Чему я научусь в уроке «Перенаправление портов SSH (локальное и удалённое)»?

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

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

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

Сколько времени занимает урок «Перенаправление портов SSH (локальное и удалённое)»?

Большинство уроков 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