GH GambleHub

Firewall саясаты және ACL

1) Мақсаттар мен қағидаттар

Firewall/ACL - бұл деректер жазықтығын бақылау: кім, қайда, қашан және қандай хаттама бойынша жүреді. Негізгі қағидаттар:
  • Least privilege: тек қажетті рұқсат ету (айқын allow, implicit deny).
  • Segmentation: қоршаған ортаны оқшаулау (prod/stage/dev), тенанттар, критикалық контурлар (PCI/KMS/DB).
  • Egress-бақылау: шығыс трафигі FQDN/IP тізімдерімен және жеке endpoint 'термен шектелген.
  • Identity-aware (L7): шешімдер тек IP бойынша ғана емес, аутентификацияланған мәні бойынша (SPIFFE/OIDC) қабылданады.
  • Infrastructure as Code: ережелер код ретінде, review/CI/CD, өзгерістер аудиті.

2) Таксономия: қайда және нені сүземіз

2. 1 Қабаттар және күйі

L3/L4 stateless: классикалық ACL (CIDR, протокол, порт).
L3/L4 stateful: security groups/NSG, қосылымдарды бақылайды.
L7-aware: proxy/WAF/mesh RBAC (әдістер, жолдар, JWT-claims, SNI).
Inline vs out-of-band: инлайн-фаервол трафикті бағыттайды; out-of-band - талдау/alert.

2. 2 Контурлар

Perimeter: edge/WAF/Anti-DDoS.
Core: transit hub / меж-VPC/VNet.
Workload: SG/NSG на VM/ENI/POD.
App-level: Envoy/Istio/NGINX policy, service-to-service mTLS.

3) Бұлтты модельдер

AWS

Security Group (SG): stateful на ENI/instance/LB.
Network ACL (NACL): кіші желідегі stateless, ереже тәртібі, екі бағытты жазбалар.
AWS Network Firewall/GWLB: L7 инспекциясы/IDS.
Ұсыным: «SG - негізгі бақылау, NACL - ірі дәнді қоршау/deny-парақ».

Azure

NSG (stateful), ASG (тегтер бойынша қолданбалар тобы), Azure FW үшін L7/IDS, Private Endpoints.
Ұсыным: NSG сабнетте + NIC, ASG арқылы қызмет көрсету тегтері.

GCP

VPC Firewall Rules (stateful), Hierarchical FW (ұйымдастырушылық/папкалық), Cloud Armor (L7), Private Service Connect.
Ұсыныс: org-level guardrails + жобалық allow.

4) Ережелер дизайны: үлгілер

4. 1 Негізгі жиынтықтар

Deny all egress → FQDN/IP бойынша рұқсат етеміз: пакеттік репозиторийлер, артефакт-тіркелімдер, бөгде API (жеке/тіркелген шығулар арқылы).
East-West минимум: сервистер тек қажетті тәуелділіктермен сөйлеседі.
Admin қатынау: MFA бар bastion/JIT арқылы, сессияларды жазу.

4. 2 Тегтер мен топтар

IP орнына labels/tags қолданыңыз: 'env', 'service', 'tier', 'tenant', 'pci = true'.
Тегті өзгерту кезінде саясатты жаңарту - IP торларын қолмен өңдеусіз.

4. 3 Өмірлік цикл

Propose → Evaluate (staging) → Enforce (prod), dry-run/соқтығысу логымен.
Ескіру: әрбір ереже үшін TTL/owner, пайдаланылмайтын автотіркеу.

5) Kubernetes және сервис-меші

5. 1 NetworkPolicy (L3/L4)

Минимумы - «қажеттісінен басқасына тыйым салу».

yaml apiVersion: networking. k8s. io/v1 kind: NetworkPolicy metadata: { name: deny-all, namespace: core }
spec:
podSelector: {}
policyTypes: ["Ingress","Egress"]
kind: NetworkPolicy metadata: { name: api-egress }
spec:
podSelector: { matchLabels: { app: api } }
egress:
- to:
- namespaceSelector: { matchLabels: { ns: db } }
ports: [{ protocol: TCP, port: 5432 }]
- to:
- ipBlock: { cidr: 10. 100. 0. 0/16 } # Private endpoints ports: [{ protocol: TCP, port: 443 }]

5. 2 L7 RBAC в mesh (Istio/Envoy)

mTLS + JWT/claims/scopes/paths бойынша авторизациялау.

yaml apiVersion: security. istio. io/v1 kind: AuthorizationPolicy metadata: { name: api-rbac }
spec:
selector: { matchLabels: { app: api } }
rules:
- from:
- source:
principals: ["spiffe://svc. payments"]
to:
- operation: { methods: ["POST"], paths: ["/v1/payouts"] }
when:
- key: request. headers[x-tenant]
values: ["eu-1","eu-2"]

6) Egress-бақылау және жеке периметрлер

PaaS/тіркелгілерге/қоймаларға PrivateLink/Private Service Connect бағдарламасын таңдаңыз.
Қалған egress NAT/прокси арқылы allowlist FQDN және тіркелген IP (сыртқы allowlist үшін).
Тағалардың/VM интернетке тікелей шығуын бұғаттаңыз; тек egress-шлюз арқылы ғана ерекшеліктер.

7) DNS және SNI-саналы ережелер

Split-horizon: ішкі аймақтар сыртынан бөлінбейді.
Шығыс HTTPS (SNI allow) үшін FQDN/SNI қолдауымен FW/Proxy.
Жеткізушілердің нақты домендеріне pinning орнатыңыз; олардың IP өзгерістерін бақылаңыз.

8) Логи, аудит, бақылау

flow logs (VPC/VNet/NSG/NACL) қосыңыз, SIEM-ге жіберіңіз.
Логтардағы 'trace _ id' бағдарламаларымен корреляциялау.
Өлшемдер: hit/miss ережелері, top-talkers, drop-rates, трафиктің асимметриясы, «egress жылыстауы».
Есептер: «пайдаланылмайтын ережелер», «ең кең рұқсаттар».

9) Код ретінде басқару (IaC) және тексеру

Terraform/CloudFormation + модульдік үлгілер саясаты.
Policy as Code (OPA/Gatekeeper/Conftest): '0. 0. 0. 0/0 ',' description/owner/ttl 'талабы, prod/dev араластыруға тыйым салу.
CI: линт, статанализ, қол жетімділік симуляторлары (reachability analyzer), жоспар-қарау, мандаттық peer review.

10) Қол жетімділікті және хаосты тестілеу

Әртүрлі кіші желілерден/AZ/өңірлерден Synthetic-сынамалар: TCP/443, ДБ/брокерлердің ерекше порттары.
DR жолдарын тексеру үшін уақытша deny: тәуелділікті өшіру → retries/circuit/fallback жұмыс істеуі керек.
MTU/MSS: perimeters (әсіресе IPsec/NAT-T) бөлімдерінің жоқтығына көз жеткізіңіз.

11) Өнімділік және сенімділік

Орталықтандырылған тар жерден аулақ болыңыз: inline-FW (GWLB/scale sets) көлденең масштабтаңыз.
ECMP/AS-path/BGP хабтар арасында бөлу үшін.
TLS-инспекция профильдері: нүктелі (қымбат) қосу, кілттердің таңбаларын бөлек сақтау, комплаенсті сақтау.

12) Пішіндер үлгілері (қысқартылған референстер)

12. 1 AWS SG: API → Postgres + S3 PrivateLink

hcl resource "aws_security_group" "api" {
name    = "sg-api"
description = "Ingress from ALB, egress to DB and PrivateLink"
vpc_id   = var. vpc_id

ingress { from_port=8080 to_port=8080 protocol="tcp" security_groups=[aws_security_group. alb. id] }
egress { from_port=5432 to_port=5432 protocol="tcp" security_groups=[aws_security_group. db. id] }
egress { from_port=443 to_port=443 protocol="tcp" prefix_list_ids=[aws_vpc_endpoint. s3. prefix_list_id] }
tags = { owner="team-api", env=var. env, ttl="2026-01-01" }
}

12. 2 Azure NSG: deny-by-default + allow bastion

bash az network nsg rule create -g rg -n allow-bastion --nsg-name nsg-app \
--priority 100 --direction Inbound --access Allow --protocol Tcp \
--source-address-prefixes 10. 0. 0. 10 --source-port-ranges "" \
--destination-port-ranges 22 --destination-address-prefixes 10. 1. 0. 0/16

12. 3 GCP hierarchical firewall: org-guardrail

yaml direction: INGRESS priority: 1000 action: deny enableLogging: true match:
layer4Configs: [{ ipProtocol: "all" }]
srcIpRanges: ["0. 0. 0. 0/0"]
targetResources: ["organizations/123456"]

12. 4 Envoy RBAC (L7 allow)

yaml
- name: envoy. filters. http. rbac typed_config:
rules:
action: ALLOW policies:
payments-post:
permissions: [{ url_path: { path: "/v1/payouts", ignore_case: true } }]
principals: [{ authenticated: { principal_name: { exact: "spiffe://svc. payments" } } }]

13) Антипаттерндер

`0. 0. 0. 0/0 'in ingress/egress «уақытша» → мәңгі қалады.
«Қар бүршіктері» (консольдегі қолмен түзетулер) кодсыз және ревизиясыз.
prod/stage/dev үшін жалпы SG/NSG; сыни және сыни емес кіші желілерді араластыру.
Egress-бақылаудың және жеке endpoint's → кілттердің/құпиялардың сыртқа шығуының болмауы.
DNS/SNI елемеу: жеткізушінің IP рұқсат - ертең ол ауыстырылды және бүкіл ауқымы ашылды.
flow logs және runbook жоқ → форензия мүмкін емес.

14) iGaming/қаржы ерекшелігі (PCI/реттеуші)

PCI CDE жеке VRF/сегментінде, ешқандай интернет; PSP/логтарға қол жеткізу - private connectivity/mTLS және HMAC бар прокси арқылы.
Data residency: PII/төлем оқиғалары - ел/өңір ішінде; өңіраралық - тек агрегаттар/аноним.
KMS/Vault/HSM: жеке кіші желілер/SG, тек mTLS клиенттері қысқа сертификаттармен.
WORM-аудит: өзгермейтін қоймадағы FW/flow логтары (Object Lock), реттеуші минимумға ≥ ретеншн.
Серіктестер (PSP/KYC): FQDN allowlist, статикалық egress IP, провайдерлер бойынша SLA мониторингі.

15) Prod-дайындық чек-парағы

  • Бірыңғай сегменттеу моделі (hub-and-spoke, VRF), CIDR қиылысусыз.
  • Deny-by-default на egress; PaaS/сақтау орындарына арналған жеке endpoints.
  • SG/NSG stateful workload үшін, NACL/route-filters - кіші желілерге/хабтарға.
  • K8s: NetworkPolicy «deny-all», mesh mTLS + L7 RBAC.
  • IP орнына тегтер/топтар; owner/TTL/description әрбір ережеде.
  • IaC + Policy-as-Code; қол жетімділік симуляциясы бар CI; міндетті peer review.
  • Flow logs қосылған; дашбордтар top-talkers, drop-rates; «egress ағуына» алерта.
  • Әкімшілік қол жеткізу үшін Bastion/JIT; MFA; сессияларды журналға түсіру.
  • Runbook 'i: ережені қалай қосу/алып тастау керек, оқиға кезінде қалай жұмыс істеу керек; «өлі» ережелерге тұрақты ревизия жүргізу.
  • PCI/қаржы үшін: CDE оқшаулау, WORM-аудит, PSP/KYC үшін FQDN-allow, статикалық egress IP.

16) TL; DR

Қорғауды мына қабаттар бойынша жасаңыз: ворклоадтардағы SG/NSG stateful, кіші желілердегі NACL/route-filters, mesh/проксидегі L7 RBAC, периметрдегі WAF/edge. Әдепкі - deny-by-default, egress тек бақыланатын нүктелер немесе private endpoints арқылы. Ережелерді код ретінде сипаттаңыз, оларды қол жетімділік саясаттарымен және симуляторларымен тексеріңіз, flow-логтерді жинаңыз. iGaming/Қаржы үшін PCI сегментациясын, WORM аудитін және қатаң FQDN-allow PSP/KYC қосыңыз.

Contact

Бізбен байланысыңыз

Кез келген сұрақ немесе қолдау қажет болса, бізге жазыңыз.Біз әрдайым көмектесуге дайынбыз!

Telegram
@Gamble_GC
Интеграцияны бастау

Email — міндетті. Telegram немесе WhatsApp — қосымша.

Сіздің атыңыз міндетті емес
Email міндетті емес
Тақырып міндетті емес
Хабарлама міндетті емес
Telegram міндетті емес
@
Егер Telegram-ды көрсетсеңіз — Email-ге қоса, сол жерге де жауап береміз.
WhatsApp міндетті емес
Пішім: +ел коды және номер (мысалы, +7XXXXXXXXXX).

Батырманы басу арқылы деректерді өңдеуге келісім бересіз.