GH GambleHub

Қабатҳои прокси ва масири баръакс

Хулосаи мухтасар

Қабати прокси "автобуси пеши" платформа аст: он TLS-ро ба итмом мерасонад, муштариёнро тасдиқ мекунад, трафикро тақсим мекунад, қуллаҳоро ҳамвор мекунад ва озодкуниро бехатар мекунад (канарейкаҳо, кабуд-сабз). Маҷмӯи ҳадди ақали камолот: стратификатсияи дақиқи нақшҳои прокси, қоидаҳои масири муайянкунанда, назорати вақт/бозгашт, кэш + меъёри маҳдудият, мушоҳидаи ниҳоӣ ва автоматизатсия.

Прокси таксономия

Прокси пешрафта - трафики берунаи муштариён/хидматҳо берун аз (egress), филтрҳо/оинаҳо, DLP.
Прокси баръакс - дархостҳо ва хатсайрҳои берунаро барои пуштибонӣ қабул мекунад (диққати асосии мо).

Қабатҳо дар роҳи истеҳсолӣ:

1. Edge/CDN/WAF (Anycast, филтрҳои бот, кэш)

2. L7 Ingress/API-дарвоза (масир, аутентификатсия, сиёсат)

3. Қабати хидматрасонӣ/Mesh (sidecar) барои шарқу ғарб, m: TLS ва Retras

4. Egress-дарвоза барои ҳамгироии берунӣ (PSP, шарикон)

Масир (L4/L7) ва алгоритмҳо

L4 (TCP/UDP, гузаргоҳи TLS): таъхири ҳадди аққал, бидуни фаҳмидани HTTP.
L7 (HTTP/1. 1, HTTP/2, HTTP/3/GRPC): қоидаҳои мизбон/роҳ/сарлавҳа/куки, тағирот, WAF, кэш.

Алгоритмҳо:
  • Робин-робин/Пайвастҳои камтарин/EWMA - ҳолатҳои маъмул.
  • Пайваста-ҳаш (бо куки/идентификатор) - ҷаласаҳои часпанда ва маҳалли кэш.
  • Header-/Geo-/Latency-асоси - ҳадаф аз ҷониби минтақа/провайдер, ТҶ-ҳои зуд.
  • Canary/Weighted - иҷрои марҳила ба марҳила (5 → 25 → 50 → 100%).
  • Соя/Зеркало - нусхаи трафик ба хидмати нав бидуни таъсир ба посухҳо.

Табдилдиҳии дархост/посух

URL аз нав сабт кардан/равона кардан: муттаҳид кардани роҳҳо, санҷиш ('/v1/→/svc/v1/').
Сарлавҳаҳо: 'X-Forwarded-For/Proto/Host' -ро муқаррар кунед, 'traceparent '/' x-request-id' -ро илова кунед, филтрро нолозим кунед.
CORS/CSRF: дар дарвоза мутамарказ шавед, дар ҳар як хидмат танзимот истеҳсол накунед.
Фишурдасозӣ/Декомпрессия: Brotli/gzip, назорат аз рӯи намуд.
Маҳдудиятҳои бадан ва муҳофизат аз slowloris/сарлавҳаҳои калонҳаҷм.

Аутентификатсия ва амният

TLS 1. 3 + stapling OCSP + HSTS дар ҷабҳаҳои беруна.
MTLS: маъмурон, API-ҳои амалиётӣ, каналҳои шарикӣ.
OAuth2/OIDC: иҷозат тавассути дарвоза (introspection/JWT-verify) → интиқол ба даъвоҳо дар болооб.
API Калидҳо/Имзоҳо (HMAC) барои ҳамгироии хизматрасонӣ ва шарикӣ.
Филтрҳои WAF/бот: имзоҳо + қоидаҳои рафтор, greypass/captcha.
CSP/X-Frame-Options/Referrer-Policy - сарлавҳаҳои амният дар канор.

Эътимоднокӣ: Retras/Timeouts/TT

Вақтсанҷҳо: пайвастшавӣ/хондан/навиштан дар L4/L7, сиёсати ягона (масалан, '500 м пайваст кунед', 'барои API 3-5s хонед).
Бозёфтҳо: танҳо idempotent ('GET/HEAD'), маҳдудияти вақт/миқдор, 'retry-budget'.
Қатъи гардиш: маҳдудиятҳо барои дархостҳо/хатогиҳои ҳамзамон, нокомии зуд ва таназзул.
Муайянкунии берунӣ - ҳолатҳои бадро аз ҳавз хориҷ мекунад.
Backoff + jitter: то ки "эффекти галаи" эҷод нашавад.

Кэш ва идоракунии ҳаракат

Кэш L7: статикӣ/нимҷазира (каталогҳо, конфигуратсияҳо), 's-maxage' + 'кӯҳна-дар ҳоле ки-таҷдиди назар'.
Меъёри лимит/квота: аз ҷониби IP/ASN/дастгоҳ/куки, ҳисобкунаки тақсимшуда (Redis/Rate-service).
Ҷаласаҳои часпанда: куки/пайваста-ҳаш; баррасии нокомӣ ва "дубора гузоштан".
Пошхӯрии дархост (dedupe): муҳофизати пайдоиш аз "тӯфон" -и GET-ҳои шабеҳ.

Протоколҳо ва хусусиятҳо

HTTP/2: мултиплексинг, афзалиятҳо; 'ALPN: h2' нигоҳ доред.
HTTP/3/QUIC: муқовимати гум/ҷиттер; UDP/443 кушоед, MTU/PMTUD-ро назорат кунед.
GRPC: муоинаи тиббӣ, ҷараён, мӯҳлатҳо; шахсони боэътимод бояд 'grpc-status' -ро дастгирӣ кунанд.
Web-Socket/SSE: пайвастҳои дарозмуддат, мӯҳлатҳои бекорхобида ва маҳдудиятҳо.

Мушоҳида ва SLO

Нишондиҳандаҳо:
  • L4/L7: 'p50/p95/p99', ошибки ('4xx/5xx/Grpc-рамзҳо'), 'open _ conns', 'CPS/RPS', 'retry _ rate'.
  • TLS: версия/шифр, дастнависи p95, дубора.
  • Масир: саҳмияҳо аз рӯи масир/кластер, баровардани берунӣ.
  • Меъёри маҳдудият/WAF: триггерҳо/FP-меъёри.
  • Гузоришҳо: дастрасӣ (бидуни PII), сабабҳои масир, сарлавҳаҳои пайгирӣ.
  • Нишонаҳо: 'пайгирӣ '/B3, интихоб.
SLO (намунаҳо):
  • p95 TTFB API ≤ 250-300 мс; хато L7 ≤ 0. 5%.
  • Муваффақияти канарейкаҳо (бе таназзули ченакҳо) ≥ 99% роҳандозӣ.
  • FP-меъёри WAF ≤ 0. 1%.

Конфигуратсияҳои маъмулӣ

Nginx (прокси баръакс, HTTP/2, канарӣ, фишурдасозӣ)

nginx map $http_x_canary $upstream_pool {
default "stable";
~^1$ "canary";
}

upstream api_stable { zone zst 64k; server 10. 0. 1. 10:8443; server 10. 0. 1. 11:8443; keepalive 256; }
upstream api_canary { zone zcn 64k; server 10. 0. 2. 10:8443; keepalive 64; }

server {
listen 443 ssl http2 reuseport;
server_name api. example. com;

ssl_protocols TLSv1. 2 TLSv1. 3;
ssl_stapling on; ssl_stapling_verify on;
add_header Strict-Transport-Security "max-age=31536000" always;

basic limits/protection client_max_body_size 10m;
sendfile on; brotli on; gzip on;

location / {
proxy_http_version 1. 1;
proxy_set_header Host $host;
proxy_set_header X-Request-Id $request_id;
proxy_set_header X-Forwarded-Proto https;
proxy_connect_timeout 500ms;
proxy_read_timeout 5s;
proxy_next_upstream error timeout http_502 http_503 http_504;
proxy_next_upstream_tries 1; # Retrays are limited to proxy_pass https://api_$upstream_pool;
}
}

HAP-roxy (JWT-санҷиш + MTLS барои пуштибонӣ + меъёри маҳдудият)

haproxy frontend fe_https bind:443 ssl crt /etc/haproxy/certs/ alpn h2,http/1. 1 http-request set-header X-Request-Id %[unique-id]
http-request lua. jwt_verify # external verification script JWT stick-table type ip size 1m expire 10m store http_req_rate (10s)
http-request deny if { src_http_req_rate(10s) gt 100 }

default_backend be_api

backend be_api balance roundrobin option httpchk GET /healthz server s1 10. 0. 1. 10:8443 check ssl verify required ca-file /etc/haproxy/ca. pem server s2 10. 0. 1. 11:8443 check ssl verify required ca-file /etc/haproxy/ca. pem

Фиристанда (JWT + масирҳои вазншуда + муайянкунии берунӣ)

yaml static_resources:
listeners:
- name: https address: { socket_address: { address: 0. 0. 0. 0, port_value: 443 } }
filter_chains:
- filters:
- name: envoy. filters. network. http_connection_manager typed_config:
"@type": type. googleapis. com/envoy. extensions. filters. network. http_connection_manager. v3. HttpConnectionManager stat_prefix: ingress route_config:
virtual_hosts:
- name: api domains: ["api. example. com"]
routes:
- match: { prefix: "/" }
route:
weighted_clusters:
clusters:
- { name: api-stable, weight: 95 }
- { name: api-canary, weight: 5 }
http_filters:
- name: envoy. filters. http. jwt_authn typed_config: { "@type": type. googleapis. com/envoy. extensions. filters. http. jwt_authn. v3. JwtAuthentication }
- name: envoy. filters. http. router clusters:
- name: api-stable connect_timeout: 0. 5s type: STRICT_DNS lb_policy: ROUND_ROBIN outlier_detection: { consecutive_5xx: 3, interval: 2s, base_ejection_time: 30s }
transport_socket:
name: envoy. transport_sockets. tls
- name: api-canary connect_timeout: 0. 5s type: STRICT_DNS lb_policy: ROUND_ROBIN transport_socket:
name: envoy. transport_sockets. tls

Трефик (хатсайрҳои қоидаҳо, консепсия)

yaml http:
routers:
api:
rule: "Host(`api. example. com`) && PathPrefix(`/v1/`)"
service: api-svc tls: { certResolver: letsencrypt }
services:
api-svc:
loadBalancer:
servers:
- url: "https://10. 0. 1. 10:8443"
- url: "https://10. 0. 1. 11:8443"

Иҷрои прокси

Муттаҳидсозии пайвастшавӣ ва нигоҳдорӣ ба ақибгоҳ, маҳдудияти пайвастшавӣ дар як мисол.
Reuseport, PIN CPU/IRQ, буферҳои кофии васл.
TLS: ECDSA + занҷирҳои кӯтоҳ, барқароршавӣ ≥ 70%, фаъол HTTP/2/3.
Кэш дар прокси барои посухҳои "гарм" (аз ҷумла 304-тасдиқ).
Гармкунӣ: гарм кардани DNS/TLS/пайвастҳо пеш аз қуллаҳо.

ДР ва таҳаммулпазирии гуноҳ

Худкоркунии гиреҳҳои таназзулёфта ('outlier-ejection').
Санҷиши саломатӣ (HTTP-нусхаи бадан).
Fail-open/Fail-пӯшида - огоҳона барои пардохт/роҳҳои муҳим интихоб кунед.
Ҳолати соя пеш аз гузаштани трафик ба хидмати нав.
Китобчаҳо: "пошхӯрии кластер", "ҳалқаи равона", "ихроҷи пайвастшавӣ", "тӯфони бозгашт".

Рӯйхати назоратии татбиқ

  • Стратификатсия: Edge → Ingress/API-GW → Mesh/Egress, нақшҳо ва масъулиятҳо.
  • Сиёсати масир: мизбон/роҳ/сарлавҳа/вазн, канарӣ/кабуд-сабз, соя.
  • Амният: TLS 1. 3, mTLS барои роҳҳои ҳассос, JWT/OAuth2, WAF.
  • Вақтсанҷӣ/Бозгашт/CB: арзишҳои ягона, номутобиқатӣ, буҷети такрорӣ.
  • Кэш/Меъёри маҳдудият/Дар ҳолати зарурӣ шикастани дархост.
  • Мушоҳидаҳо: ченакҳо/гузоришҳо/роҳҳо, идентификаторҳои коррелятсия.
  • SLO: p95/хатогиҳо/захираҳо; ҳушдор дар бораи нокомии периметр.
  • Ia
  • Санҷишҳо: хатсайрҳои e2e, скриптҳои бетартибӣ, сарборӣ пеш аз рӯйдодҳо.

Хатогиҳои умумӣ

Ҳосили прокси "ҷодугарӣ" бидуни ҷудокунии нақш → RCA мураккаб ва радиуси таркиши баланд.
Бознигариҳо барои дархостҳои ғайримуқаррарӣ → амалиёти такрорӣ.
Бе сарлавҳа/URL нормализатсия → заҳролудшавӣ аз кэш ва калидҳои бад.
Ҷаласаҳои часпанда бидуни нақшаҳои ноком → часпидан ба мисоли таназзулёфта.
Набудани 'traceparent '/' x-request-id' → наметавонад мушкилотро ба ҳам орад.
Hard 301/302 дар сатҳи прокси → ҳалқаҳо ва аз даст додани назорати версияи API.

IGaming/fintech мушаххас

Пардохтҳо/PSP: дарвозаи махсусгардонидашуда бо m-TLS, танаффусҳои қатъӣ, калидҳои idempotent, whitelists IP/ASN.
Қуллаҳо (гугирдҳо/мусобиқаҳо): канарӣ/вазншуда, масирҳои хокистарӣ барои ботҳо, кэши хашмгин GET, муҳофизати пайдоиш аз "тӯфон".
Танзим/сабти ном: ислоҳи версияҳои сиёсат ва сабабҳои масир дар гузоришҳои аудит; PII-ро кам кунед.
Таъминкунандагони мундариҷа: пайваста-хэш аз ҷониби калиди провайдер барои ҷойгиршавии кэш ва ҳатто тақсимот.

Китобҳои бозикунии хурд

1) Нашри Canary API

1. 5% вазнро ба 'api-canary' дохил кунед; 2) p95/мониторинги хатогӣ; 3) зиёд кардани ҳисса; 4) худкор ҳангоми таназзул.

2) Бартараф кардани фаврии гиреҳи таназзулёфта

1. Баровардани дастӣ ё дастӣ 'холӣ кардан'; 2) санҷидани ҳавз ва зарбаи кэш; 3) пас аз ҳодиса RCA.

3) Оинаи функсия

1. Сояро бидуни таъсир ба посухҳо фаъол созед; 2) муқоиса кардани ченакҳо/посухҳо; 3) дар бораи гузариш қарор қабул кунед.

4) Тӯфони Retray

1. Кам кардани мӯҳлати такрорӣ-буҷа/вақт; 2) имкон додани шикастани дархост; 3) чӯбҳои маҳаллӣ/кэш; 4) ба эътидол овардани пайдоиш.

Натиҷа

Қабати боэътимоди тарроҳишуда ҷудокунии нақшҳо, масири детерминистӣ, сиёсатҳои боэътимод (вақт/бозсозӣ/CB), амният (MTLS/JWT/WAF) ва мушоҳида мебошад. Конфигуратсияҳои PIN ба IA, канарейкаҳо ва сояҳоро истифода баред, SLO-ро чен кунед - ва платформаи шумо ҳатто дар соатҳои гармтарини баландтарин миқёспазир, пешгӯишаванда ва бехатар хоҳад буд.

Contact

Тамос гиред

Барои саволҳо е дастгирӣ ба мо муроҷиат кунед.Мо ҳамеша омодаем!

Оғози интегратсия

Email — муҳим аст. Telegram е WhatsApp — ихтиерӣ.

Номи шумо ихтиерӣ
Email ихтиерӣ
Мавзӯъ ихтиерӣ
Паем ихтиерӣ
Telegram ихтиерӣ
@
Агар Telegram нависед — ҷавобро ҳамон ҷо низ мегиред.
WhatsApp ихтиерӣ
Формат: рамзи кишвар + рақам (масалан, +992XXXXXXXXX).

Бо фиристодани форма шумо ба коркарди маълумот розӣ ҳастед.