Если вам нужен стабильный URL-адрес HTTPS для консоли OpenClaw Gateway, веб-перехватчиков или интеграций, предоставление порта приложения непосредственно в Интернет редко является конечным состоянием. Это руководство предназначено для команд, которые уже используют OpenClaw на «голом железе» или удаленном Mac и планируют сделать его общедоступным:Таблица решений прямого и обратного прокси, минимальные фрагменты Nginx и Caddyс заголовками, совместимыми с WebSocket,Контрольный список TLS и брандмауэраиПуть проверки, совместимый с VNCиз шлейфа в другую сеть. Перекрестные ссылки указывают на Docker, распространенные ошибки и автоматическое устранение неполадок «нет ответа» на этом сайте.
1. Болевые точки раскрытия шлюза без прокси
- Обычный HTTP и доверие:учетные данные и обратные вызовы через открытый Интернет без TLS хрупки; многие провайдеры требуют HTTPS.
- WebSockets при простой пересылке:отсутствующий
Upgrade/Connectionили агрессивные тайм-ауты выглядят в пользовательском интерфейсе как «случайные отключения». - Большая поверхность атаки:публикация порта приложения напрямую увеличивает шум сканирования; прокси-сервер — это место, куда вы прикрепляете списки разрешений, ограничения скорости и согласованные журналы доступа.
- Слепые зоны удаленного Mac:«SSH работает» не доказывает, что брандмауэр macOS и группы облачной безопасности соответствуют тому, что вы видите в VNC.
- Докер против прослушивателей хоста:
127.0.0.1против0.0.0.0меняет место, где должен работать прокси — см. официальное руководство по Docker на этом сайте.
2. Таблица решений: прямой vs TLS + обратный прокси
| Измерение | Прямой общественный порт | TLS + Nginx/Caddy |
|---|---|---|
| Шифрование | Вы должны отключить TLS в приложении или остаться на HTTP. | Завершить TLS на границе; восходящий поток может оставаться HTTP в режиме обратной связи |
| Вебсокет | Каждый прыжок должен сотрудничать | Явные заголовки/таймауты в Nginx; Caddy обычно обновляется автоматически. |
| Несколько услуг | Один порт на сервис | Виртуальные хосты на одном IP |
| Операции | Меньше движущихся частей в нулевой день | Дополнительный сервис, лучшая безопасность и наблюдаемость в долгосрочной перспективе |
| Устранение неполадок в VNC | Сложнее наслоить тесты | curl -vпротив восходящего потока, затем противhttps://domain |
3. Когда следует добавлять Nginx или Caddy
- Вам нужен стабильный домен и HTTPS для закладок, перенаправлений OAuth или веб-перехватчиков.
- Поведение пользовательского интерфейса в реальном времени ухудшается на длинных путях без надлежащей обработки обновлений.
- Вы размещаете другие сайты на одном и том же удаленном Mac и хотите иметь одну историю сертификатов.
- Политика разрешает подключение к Интернету только 443/80, пока приложение остается в режиме обратной связи.
openclaw doctorпредлагает привязать конфиденциальные службы к локальному хосту и использовать для них прокси-сервер (следите за выводом вашей версии).
4. Минимальный Nginx: 18789, Host, WebSocket.
Обучающий фрагмент — замените имена хостов, пути сертификатов и восходящий порт. Укрепление безопасности для производства (шифрование, сшивание OCSP, редактирование журналов, ограничения скорости).
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 443 ssl http2;
server_name claw.example.com;
ssl_certificate /etc/letsencrypt/live/claw.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/claw.example.com/privkey.pem;
location / {
proxy_pass http://127.0.0.1:18789;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 3600s;
proxy_send_timeout 3600s;
}
}
Используйте HTTP/1.1 для восходящего потока, впередUpgrade/Connectionи сохраняйте честные заголовки, чтобы приложение знало схему клиента.
5. Минимальный Caddy: автоматический HTTPS
claw.example.com {
reverse_proxy 127.0.0.1:18789
}
Caddy получает и обновляет сертификаты, когда порты 80/443 доступны для ACME. Добавьте средства сопоставления, дополнительные заголовки или IP-фильтры в соответствии с требованиями вашей политики.
6. Сертификаты, DNS, группы безопасности.
DNS указывает на общедоступную запись
Проверьте записи A/AAAA; если CDN находится на хосте, убедитесь, что WebSocket и пути вызова все еще работают.
Облачный брандмауэр
Разрешите 443 и обычно 80 для HTTP-01; не допускайте включения 18789 в набор общедоступных правил при использовании обратной связи в восходящем направлении.
Брандмауэр macOS в VNC
Проверьте настройки системы; отличайте nginx/caddy от процесса OpenClaw.
Обновление перезагрузки
После продления перезагрузите nginx или позвольте Caddy забрать сертификаты, чтобы срок их действия не истекал автоматически.
Многоуровневые тесты на скручивание
Восходящий шлейф, затем локальный HTTPS, затем внешняя сеть.
6б. Дополнительные списки разрешенных IP-адресов и ограничения скорости.
Для небольших команд ограничьте поверхности администратора по исходному IP-адресу или выходу VPN. При использовании Nginxallow/denyили WAF; на Caddy используйте сопоставители, такие какremote_ipсогласно документации вашей версии. Добавлятьlimit_req(или эквивалент) на «горячих» конечных точках, чтобы грубая сила и случайные циклы не вывели из строя шлюз.
Для вебхуков отдавайте предпочтение проверке подписи у провайдера; Диапазоны IP-адресов могут меняться. Списки разрешенных документов и срок действия сертификатов указаны в календаре.
7. Семиэтапная проверка на удаленном Mac VNC
- В терминале VNC запустите
openclaw doctorи подтвердите, что адреса прослушивания соответствуют конфигурации. curl -v http://127.0.0.1:18789/(или ваш вышестоящий) и проверьте коды состояния.- Проверьте синтаксис nginx/caddy и аккуратно перезагрузите его.
- Открыть
https://your-domainв браузере на Mac; подтвердите WebSocket 101 в devtools. - Повторите тестирование с использованием мобильных данных или другой сети, чтобы избежать ложных срабатываний только в локальной сети.
- Сопоставляйте журналы доступа прокси-сервера с журналами OpenClaw при отладке скрытых сбоев (см. статью без ответа).
- После изменения брандмауэра дождитесь распространения и повторно запустите внешний тест.
8. Цитируемые параметры и соответствующие руководства.
proxy_read_timeoutценности разрушают долгоживущие связи; начните с больших тайм-аутов восходящего потока и настраивайтесь на основе показателей.Информацию об ошибках установки и выполнения см.распространенные ошибки и десять исправлений. Для тихих каналов следуйтеустранение неполадок при отсутствии ответа. Для контейнеров начните софициальный Docker Compose на удаленном Mac.
Завершение: почему VNC на удаленном Mac все еще помогает
В настройке Public Gateway сочетаются TLS, долгоживущие соединения и брандмауэры на уровне ОС — их сложно отлаживать только по SSH, когда вам нужны браузер и системные подсказки в одном месте. Аренда удаленного Mac с поддержкой VNC (например, у VNCMac) позволяет запускать Doctor, перезагружать прокси и визуально проверять WebSockets, не покупая оборудование, необходимое только для короткого проекта. Держите край заблокированным: TLS на 443, обратная связь в восходящем направлении, а также Docker этого сайта и сообщения об устранении неполадок в качестве рабочей книги.