Files
bit-flight-deck/infra/cloudflared-routes.md
2026-05-14 17:25:18 +05:00

2.6 KiB
Raw Permalink Blame History

Cloudflare Tunnel — публичные поддомены для bit-flight-deck

Туннель bitra-llm (managed mode, ID b2680cd3-472b-4813-a7b8-42baf7a4f645) обслуживает несколько поддоменов *.bigmadnekenny.ru. Конфигурация хранится в Cloudflare Dashboard (не в локальном /etc/cloudflared/config.yml).

Текущие ingress-правила (version 5, по состоянию на 2026-05-14)

Hostname Service Назначение
ssh.bigmadnekenny.ru ssh://localhost:22 SSH через тоннель (был выключен CF Access — см. ROADMAP инфры)
llm.bigmadnekenny.ru http://localhost:4000 LiteLLM публичный endpoint
gitea.bigmadnekenny.ru http://localhost:3000 Gitea публичный endpoint
bitlink-parser.bigmadnekenny.ru http://localhost:8001 Bitlink parser сервис
n8n.bigmadnekenny.ru http://localhost:5678 N8N — приём webhook'ов от Bitrix24 (этот проект)
(catch-all) http_status:404 По умолчанию 404

DNS

CNAME n8n.bigmadnekenny.rub2680cd3-472b-4813-a7b8-42baf7a4f645.cfargotunnel.com (proxied через CF).

Как добавляется новый поддомен

Через Cloudflare API (managed-mode не позволяет редактировать локальный config):

# 1. DNS CNAME
curl -X POST "https://api.cloudflare.com/client/v4/zones/<ZONE_ID>/dns_records" \
  -H "Authorization: Bearer <API_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{"type":"CNAME","name":"<sub>","content":"<TUNNEL_ID>.cfargotunnel.com","proxied":true}'

# 2. Tunnel ingress
curl -X PUT "https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/cfd_tunnel/<TUNNEL_ID>/configurations" \
  -H "Authorization: Bearer <API_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{"config":{"ingress":[...все правила, новое перед catch-all...]}}'

Альтернативно — через UI: https://one.dash.cloudflare.com → Networks → Tunnels → bitra-llm → Configure → Public Hostname.

Безопасность webhook-endpoint'а

Bitrix24 outbound webhooks приходят на https://n8n.bigmadnekenny.ru/webhook/bitrix/<secret>. Защита:

  • Секрет в URL — известен только Bitrix-админу и N8N webhook-trigger'у.
  • (Опц.) проверка IP-источника в N8N (диапазоны IP Битрикса).
  • HTTPS обязателен (Cloudflare выдаёт валидный SSL автоматически).