Документація
Проброс портів
Проброс портів публікує HTTP-службу, що працює на серверній машині, — сервер розробки, панель пристрою, будь-що, що слухає звичайну адресу http://localhost:port — на власному TLS-порті, тож будь-який пристрій, який досягає сервера, відкриває її в браузері як https://<адреса-сервера>:<порт>/.
Як це працює
- Переадресація відображає цільовий порт — HTTP-службу на цій машині — на переадресований порт, виділений із налаштованого діапазону портів (типово
62000–62999); - переадресований порт говорить TLS: увесь трафік шифрується самопідписаним сертифікатом сервера — нічого не подорожує відкритим текстом, навіть через недовірену мережу;
- будь-який пристрій, що досягає сервера, — у локальній мережі або з інтернету, щойно діапазон портів проброшено на роутері, — відкриває
https://<адреса-сервера>:<переадресованийПорт>/і потрапляє на локальну службу.
Переадресації створюються на вимогу: спільний доступ до файлів Host with HTTP server на віддаленому (релейному) сервері автоматично запитує одну й вручає вам готову до відкриття URL. Жодного ручного налаштування не потрібно.
Керування переадресаціями
- Відкрийте розділ
Проброс портіввеб-інтерфейсу сервера. Конфігурація діапазону портівобмежує пул, з якого виділяються переадресовані порти; зміни зберігаються автоматично. Звузьте його, коли ваш брандмауер або роутер проброшує лише кілька портів.- Активний список показує кожну переадресацію як
:переадресованийПорт → :цільовийПортз кількістю її активних з’єднань. - Кнопка зупинки переадресації негайно зносить слухача й розриває її активні з’єднання; наступний спільний доступ виділяє свіжий порт.
Оновитиперечитує список.
Попередження про сертифікат
Переадресації шифруються власним самопідписаним сертифікатом сервера — тим самим, що захищає веб-інтерфейс і з’єднання клієнтів. Браузери не можуть перевірити його за центром сертифікації, тож перший візит на переадресовану URL показує попередження про приватність (Підключення не є приватним). Це очікувано й безпечно для клікабельного проходження: саме шифрування не скомпрометоване, лише походження сертифіката не може бути машинно перевіреним. Щоб заглушити попередження назавжди, імпортуйте сертифікат сервера у сховище довіри вашого пристрою.
Chrome на macOS показує ERR_ADDRESS_UNREACHABLE
На macOS 15 (Sequoia) і новіших стороннім застосункам потрібен явний дозвіл, щоб досягати пристроїв у локальній мережі, — будь-яку адресу 192.168.x.x, 10.x.x.x чи подібну. Safari звільнений як системний застосунок, тож переадресована URL може чудово відкриватися в Safari, тоді як Chrome повідомляє ERR_ADDRESS_UNREACHABLE ще до початку TLS. Це не проблема сертифіката і не проблема самої переадресації.
Щоб надати Chrome доступ:
- Відкрийте
Системні параметри→Конфіденційність і безпека→Локальна мережа. - Знайдіть
Google Chromeу списку й увімкніть його. - Повністю завершіть Chrome (
Cmd+Q, не лише закриваючи вікна) і запустіть його знову.
Якщо перемикач уже увімкнений, вимкніть його й увімкніть знову — він може застрягнути після оновлення Chrome або macOS. Якщо помилка лишається, перевірте Chrome на наявність VPN- чи проксі-розширення, яке не маршрутизує приватні діапазони адрес.
Контроль доступу
Що захищає переадресований порт, залежить від того, що за ним:
-
Вбудовані публікації захищені токеном. Посилання, які створює клієнт, — публікація
Host with HTTP server(?share_token=…) і сторінка Settings (?ticket=…) — містять токен доступу. З’єднання без чинного токена і без чинного сеансу обривається до будь-якої відповіді. Під час першого відвідування браузер обмінює токен на безпечну сесійну cookie, чинну лише для цього сервісу, а сам токен зникає з URL — він не лишається ні в адресному рядку, ні в історії. -
Токени одноразові й короткоживучі. Квиток Settings спрацьовує рівно один раз і спливає за хвилину; коли публікація зупиняється або перезапускається, попередні посилання й сеанси перестають працювати. Вважайте повне посилання паролем — у кого воно є, той отримує доступ до сервісу — і передавайте його лише тим, кому довіряєте.
-
Власні сервіси захищає їхня власна автентифікація. Переадресація до будь-якого іншого локального сервісу шифрує трафік самопідписаним сертифікатом сервера, але автентифікації не додає: усе, що обслуговує сервіс, — і сторінки, і API, — доступне кожному, хто досягає порту. Встановіть автентифікацію на чутливі служби перед їхнім викриттям.