phase-1: n8n.bigmadnekenny.ru subdomain added via CF API

This commit is contained in:
Roman Chesnokov
2026-05-14 17:25:18 +05:00
parent ba2059ae15
commit 2b96f18435
+45
View File
@@ -0,0 +1,45 @@
# 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.ru``b2680cd3-472b-4813-a7b8-42baf7a4f645.cfargotunnel.com` (proxied через CF).
## Как добавляется новый поддомен
Через **Cloudflare API** (managed-mode не позволяет редактировать локальный config):
```bash
# 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 автоматически).