Проброс портов

Mobile SSH поддерживает локальный проброс портов SSH как на Android, так и на iOS. Локальный порт на устройстве слушает на 127.0.0.1 и перенаправляет трафик через SSH-подключение на удалённый хост и порт.

Синтаксис сохранённого туннеля

Правила проброса портов разделяются запятыми. Каждая запись использует одну из двух форм:

PORT
LOCAL:REMOTEHOST:REMOTE

Краткая форма:

8080

Это привязывает 127.0.0.1:8080 на устройстве и перенаправляет на localhost:8080 с точки зрения сервера.

Полная форма:

3000:localhost:3000

Это привязывает 127.0.0.1:3000 на устройстве и перенаправляет через SSH на localhost:3000 на удалённой стороне.

Несколько пробросов:

8080, 3000:localhost:3000, 15432:db.internal:5432

Добавление туннеля к сохранённому серверу

  1. Откройте Saved Servers.
  2. Добавьте или отредактируйте профиль сервера.
  3. Введите правила проброса в поле Port forwards.
  4. Сохраните сервер.
  5. Подключитесь к серверу.

Приложение применяет сохранённые пробросы после подключения SSH-сессии.

Туннели принадлежат профилю сервера

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

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

Назначения IPv6

Назначение IPv6 нужно заключать в квадратные скобки, чтобы двоеточия нельзя было спутать с разделителем порта:

8080:[2001:db8::1]:80

Голый IPv6-адрес без скобок отклоняется как неоднозначный, а не читается неправильно молча. Та же форма со скобками работает и в поле адреса сервера, с необязательным портом после неё ([fe80::1]:22).

Привязка адреса

Mobile SSH привязывает локальные пробросы к 127.0.0.1 на устройстве. Это сделано намеренно: туннель остаётся локальным для устройства и исключаются неожиданности, связанные с loopback-адресами только по IPv6. Другие приложения на том же устройстве могут подключаться к проброшенному локальному порту, если операционная система разрешает им сетевой доступ.

Распространённые примеры

Доступ к веб-сервису, работающему на удалённом сервере:

8080

Затем откройте http://127.0.0.1:8080 в браузере на том же устройстве.

Доступ к серверу разработки:

3000:localhost:3000

Доступ к внутренней базе данных, доступной с SSH-сервера:

15432:db.internal:5432

Устранение неполадок с туннелями