چگونه mikroHUB از زیرساخت شبکه شما محافظت می کند
نسخه سند: 2026-03-22 · سوالات: [email protected]
INTERNET
┌────────────────────┬──────────────────────┐
│ HTTPS/443 │ WSS/443 │ WG/UDP 51820
│ (TLS 1.2+) │ (WebSocket) │ (WireGuard)
▼ ▼ ▼
┌─────────────────────────────────────────────────────────────────┐
│ NGINX REVERSE PROXY (mikrohub.io) │
│ ┌──────────────┐ ┌──────────────┐ ┌────────────────────────┐ │
│ │ Let's Encrypt │ │ HSTS Preload │ │ CSP + Security Headers │ │
│ │ ECDSA cert │ │ max-age=2yr │ │ X-Frame, X-Content │ │
│ └──────────────┘ └──────────────┘ └────────────────────────┘ │
│ Ports open : 80 (→301), 443, 51820/UDP │
│ Ports BLOCKED: 3001 (API), 6379 (Redis) │
└──────────┬──────────────────────┬───────────────────┬───────────┘
│ :3001 │ :3001/ws │ :51820
▼ ▼ ▼
┌──────────────────┐ ┌──────────────┐ ┌──────────────────────────┐
│ EXPRESS API │ │ WebSocket │ │ WireGuard (wg0) │
│ (Node.js) │ │ Server │ │ 10.99.0.1/16 │
│ │ │ One-time │ │ Per-device /32 peer │
│ JWT validation │ │ ticket auth │ │ No split tunnel │
│ 60s session cache│ │ (no JWT │ │ │
│ 1h max token age │ │ in URL) │ │ Devices: 10.99.x.y │
└────────┬─────────┘ └──────────────┘ └──────────────────────────┘
│
┌─────┴──────┐
▼ ▼
┌────────┐ ┌────────┐
│Supabase│ │ Redis │
│Postgres│ │ TLS │
│(cloud) │ │(local) │
│RLS on │ │ Auth │
│all tbl │ │ reqd │
└────────┘ └────────┘تمام ترافیک خارجی در Nginx با TLS 1.2+ خاتمه می یابد. سرویس های داخلی (درگاه API 3001، پورت Redis 6379) در سطح فایروال مسدود شده اند و هرگز در معرض اینترنت قرار نمی گیرند.
| لایه | مکانیسم |
|---|---|
احراز هویت کاربرPKCE | Supabase Auth با جریان PKCE (غیر ضمنی) |
ذخیره سازی توکنCOOKIE | امن + SameSite = کوکیهای ضعیف (نه محلی ذخیرهسازی) |
طول عمر رمزTTL | حداکثر 1 ساعت، کش 60 ثانیه، بهروزرسانی اجباری |
لغو جلسهREVOKE | باطل شدن در حافظه + لیست سیاه نشانه |
WebSocket AuthTICKET | تعویض بلیط یکباره (JWT هرگز در URL) |
API Key AuthSHA-256 | SHA-256 هش شده، محدوده به ازای هر منبع، انقضا اجرا شده است |
Device Agent AuthAGENT | رمز هش SHA-256، با نرخ محدود (2 req/30s) |
وزارت امور خارجهMFA | TOTP (برنامه احراز هویت) + WebAuthn/FIDO2 (کلیدهای عبور، YubiKey) |
AES-256-GCM با IV تصادفی در هر ورودی، برچسب تأیید اعتبار
ذخیره شده به صورت iv:tag:ciphertext در Supabase (هرگز متن ساده)
رمزگشایی فقط در زمان نظرسنجی، در حافظه، هرگز وارد سیستم نشده است
RouterOS API-SSL با اتصال رمزگذاری شده TLS
اتصال مستقیم TLS از طریق API-SSL (پورت 8729). دسترسی کامل مدیریتی
تونل رمزگذاری شده - صفر پورت باز مورد نیاز در روتر.
اتصال TLS مستقیم فقط خواندنی. دسترسی نوشتن به روتر وجود ندارد.
دستگاه دادهها را از طریق HTTPS به بیرون هدایت میکند. هیچ چیز ورودی نیست.
| جزء | حفاظت |
|---|---|
| ✓TLS | TLSv1.2 + TLSv1.3، رمزهای ECDHE، بارگذاری اولیه HSTS |
| ✓فایروال (UFW) | فقط 80، 443، 51820/UDP در معرض دید قرار گرفت. API (3001) و Redis (6379) DENY |
| ✓ردیس | TLS فعال است، رمز عبور لازم است، فقط برای لوکال هاست الزام آور است |
| ✓هدرهای Nginx | HSTS، X-Frame-Options، X-Content-Type-Options، CSP، Permissions-Policy |
| ✓محدود کردن نرخ | Global 300/15min، Auth 5/min، Admin 30/15min، Agent 2/30s |
| ✓پارامترهای DH | dhparam 2048 بیتی برای محرمانگی فوروارد |
| استاندارد | وضعیت |
|---|---|
| HTTPS در همه جا | ✅اجرا شد |
| رمزگذاری در حالت استراحت | ✅AES-256-GCM برای اعتبارنامه |
| رمزگذاری در حمل و نقل | ✅TLS + WireGuard |
| احراز هویت | ✅JWT + MFA + PKCE |
| مجوز | ✅RBAC + RLS |
| دنباله حسابرسی | ✅گزارش حسابرسی کامل با ردیابی IP |
| حذف داده ها (GDPR) | ✅نقطه پایان پاک کردن حساب |
| مدیریت جلسه | ✅لیست سیاه رمز + تازه سازی اجباری |
ما خوشحالیم که به هرگونه سوال مشتریان و حسابرسان بالقوه پاسخ دهیم.