Настройки подключения и VPN
Автоматическое переподключение, keep-alive, port forwarding, jump-хосты и настройка VPN
Настройки подключения и VPN
MTerm предоставляет детальный контроль над поведением подключения, от автоматического переподключения до интервалов keep-alive. Это руководство охватывает все настройки подключения, port forwarding, конфигурацию jump-хостов и варианты VPN для доступа к серверам за файрволами.
Настройки подключения
Эти настройки управляют тем, как MTerm обрабатывает SSH-соединение, особенно в части фонового режима и переподключения. Все настраиваются для каждого хоста или глобально в Параметрах.
| Настройка | По умолчанию | Описание |
|---|---|---|
| Автоматическое переподключение | ON | Автоматически переподключается, когда ты возвращаешься в MTerm из фона. Без этого пришлось бы переподключаться вручную при каждом переключении приложений. |
| Макс. попыток | 10 | Максимальное количество попыток переподключения перед отказом. Если сервер временно недоступен, MTerm будет продолжать попытки до этого лимита. |
| Интервал повтора | 3 секунды | Сколько ждать между попытками переподключения. Более короткий интервал переподключает быстрее, но генерирует больше попыток подключения на сервере. |
| Keep-Alive | 30 секунд | Как часто MTerm отправляет keep-alive пинг серверу. Это предотвращает закрытие неактивных соединений файрволами и NAT-устройствами. Если соединения обрываются после простоя, попробуй уменьшить это значение. |
| Порог перезапуска shell | 300 секунд | Если приложение было в фоне дольше этого времени, shell-сессия перезапускается, а не возобновляется. Это позволяет избежать проблем с устаревшим состоянием shell. |
| Отключение в фоне | OFF | При включении MTerm отключает TCP-соединение, когда приложение уходит в фон. Можно настроить задержку перед отключением. Это экономит ресурсы сервера и батарею, когда ты знаешь, что будешь отсутствовать некоторое время. |
| Поведение при выходе из shell | Авто-закрытие | Что происходит, когда удалённый shell завершается (например, ты набираешь exit или сервер отключается). Варианты: Авто-закрытие (немедленно закрыть вкладку), Подтвердить (спросить, закрывать ли), или Оставить открытой (оставить вкладку открытой со статусом выхода). |
Рекомендуемые настройки для разных сценариев
Нестабильный Wi-Fi (кафе, конференция):
- Автоматическое переподключение: ON
- Макс. попыток: 20
- Keep-Alive: 15 секунд
- Рассмотри использование Mosh вместо SSH для ещё большей устойчивости
Стабильная сеть (дом/офис):
- Настройки по умолчанию работают хорошо
- Keep-Alive можно увеличить до 60 секунд для уменьшения лишнего трафика
Экономия батареи:
- Отключение в фоне: ON с задержкой 30 секунд
- Порог перезапуска shell: 30 секунд
Port Forwarding
Port forwarding позволяет получить доступ к сервисам на удалённом сервере так, будто они запущены локально, или экспонировать локальные сервисы в удалённую сеть.
Локальная переадресация портов (-L)
Локальная переадресация портов слушает порт на твоём устройстве и туннелирует трафик к назначению, доступному с удалённого сервера.
Пример: Твой удалённый сервер запускает базу данных PostgreSQL на порту 5432, которая принимает только локальные подключения. Настрой локальную переадресацию:
- Локальный порт: 5432
- Удалённый хост: localhost
- Удалённый порт: 5432
Теперь любое приложение на iPad может подключиться к localhost:5432 и получить доступ к базе данных на сервере.
Типичные применения:
- Доступ к веб-приложениям на сервере (переадресация портов 3000, 8080 и т.д.)
- Подключение к базам данных (PostgreSQL, MySQL, Redis)
- Доступ к панелям администрирования, слушающим только на localhost
Удалённая переадресация портов (-R)
Удалённая переадресация портов слушает порт на удалённом сервере и туннелирует трафик обратно на твоё устройство (или хост, доступный с твоего устройства).
Пример: Ты хочешь экспонировать локальный сервер разработки, запущенный на Mac (доступный с iPad через локальную сеть), на удалённый сервер:
- Удалённый порт: 8080
- Локальный хост: 192.168.1.100
- Локальный порт: 3000
Теперь процессы на удалённом сервере могут обращаться к localhost:8080 для доступа к твоему локальному серверу разработки.
Управление переадресацией портов
- Сохраняется для каждого хоста — Переадресации портов хранятся как часть конфигурации хоста, поэтому они готовы при каждом подключении
- Автоматическое переподключение — Если туннель падает, MTerm автоматически восстанавливает его
- Индивидуальное управление — Запускай и останавливай каждую переадресацию независимо
- Отслеживание статуса — Каждая переадресация показывает текущий статус: Активна, Остановлена, Запускается, Ошибка или Переподключение
Jump-хосты (серверы Bastion)
Многие производственные среды требуют подключения через сервер bastion (также называемый jump-хостом) вместо прямого подключения к целевой машине. MTerm обрабатывает это прозрачно.
Как это работает
Когда ты настраиваешь jump-хост для подключения, MTerm:
- Устанавливает SSH-соединение с jump-хостом
- Создаёт туннель через jump-хост к целевому серверу
- Устанавливает второе SSH-соединение к целевому серверу через туннель
С твоей стороны это бесшовно — ты нажимаешь на хост и подключён. Конфигурация jump-хоста сохраняется как часть профиля хоста.
Аутентификация через jump-хосты
MTerm поддерживает аутентификацию RSA-SHA256 через jump-хосты. Это означает, что современные SSH-серверы, отключившие устаревшие подписи SHA-1, будут корректно работать даже при доступе через сервер bastion.
Настройка
В настройках хоста:
- Включи “Jump Host”
- Введи имя хоста, порт, имя пользователя и учётные данные jump-хоста
- Настройки целевого хоста остаются прежними
Настройка VPN
Когда твои серверы находятся за файрволом или в частной сети, тебе нужен VPN для доступа к ним с iPad или iPhone. MTerm работает с любым VPN, обеспечивающим сетевой доступ, но вот два самых популярных варианта:
Tailscale
Tailscale — это самый простой способ подключить устройства к серверам. Он создаёт защищённую mesh-сеть между всеми твоими устройствами без настройки файрвола.
Настройка:
- Установи Tailscale на сервер и iPad/iPhone
- Войди под одной учётной записью на обоих устройствах
- Твой сервер получает IP Tailscale (например,
100.x.x.x) - В MTerm используй IP Tailscale в качестве hostname
Tailscale автоматически обрабатывает NAT-траверсал, управление ключами и правила файрвола. Если не уверен, какой VPN выбрать, начни с Tailscale.
WireGuard
WireGuard — это лёгкий высокопроизводительный VPN-протокол. Он идеален, если ты предпочитаешь самостоятельно размещать VPN-инфраструктуру и хочешь максимальный контроль над конфигурацией.
Преимущества перед Tailscale:
- Не требуется сторонняя учётная запись
- Полный контроль над сетевой конфигурацией
- Меньшие накладные расходы (WireGuard встроен в ядро Linux)
- Можно настроить маршрутизацию только определённых подсетей
Настройка:
- Установи WireGuard на сервер и настрой его как VPN-сервер
- Установи приложение WireGuard на iPad/iPhone
- Импортируй или создай клиентскую конфигурацию
- Подключись к VPN
- В MTerm используй IP частной сети сервера в качестве hostname
Другие варианты VPN
MTerm работает с любым VPN, обеспечивающим сетевое подключение на уровне ОС, включая:
- OpenVPN
- IPsec/IKEv2
- Корпоративные VPN-решения (Cisco AnyConnect, GlobalProtect и т.д.)
Пока VPN предоставляет твоему устройству маршрут к IP-адресу сервера, SSH-соединения MTerm будут работать через него.