Private endpoints және ішкі желілер
1) Неге жеке желі
Мақсаты - интернетке шықпай-ақ жекеменшік желілер бойынша сындарлы сервистерді қосу арқылы шабуыл беті мен egress құнын барынша азайту. Бұл:- PaaS/DB/сақтау орындарын жария IP-тен оқшаулау;
- сәйкестікті оңайлату (PCI DSS/GDPR);
- болжамды кідірістер мен бағыттау.
2) Базалық модель: VPC/VNet және хабтар
Мекенжай кеңістігі: CIDR бірыңғай жоспары, қиылысусыз (мысалы, '10. 0. 0. 0/12 'қоршаулар мен хабтарға бөлінеді).
Сегментация: 'ingress', 'app', 'data', 'ops', 'shared' кіші желілері жеке бағыттармен/ACL/SG.
Транзиттік хаб: шлюздері (VPN/DirectConnect/ExpressRoute/Interconnect), өзара-VPC peering/Transit Gateway және желілік фаерволдары бар орталық VPC/VNet.
Dual-stack: алдын ала IPv6 жоспарлау (NAT үнемдейді, мекенжайлар ауқымын жақсартады).
3) Private endpoints: қағидаттары
Private endpoint/PrivateLink/Private Service Connect - тек сіздің мекенжай кеңістігіңізден қол жетімді басқарылатын сервистің жеке интерфейсі (нысанды сақтау орны, кезектер, ДҚ, құпия сақтау орны):- Трафик провайдерлік желі ішінде жүреді (интернет арқылы емес).
- Endpoint policy қайда баруға болатынын шектейді (префикстер/ARN/ресурстар).
- DNS жеке IP-ге қайта анықталады (§ 6 қараңыз).
Үлгілік мақсаттар: объектілік сторлар (S3/GCS/Blob), secret/KMS, кезектер, оқиғалар шиналары, басқарылатын БД, аналитикалық сервистер, артефакт-тіркелімдер.
4) Ішіне кіру және теңгеру
Internal Load Balancer (ILB) L4/7 үшін тек жеке кіші желілерден көреміз.
Kubernetes:- internal-аннотациялары бар 'LoadBalancer' түріндегі 'Service'.
- Internal Ingress (Nginx/Contour/Gateway API) жеке мекенжайына кіру.
- API Gateway (private): бэкендерге жеке интеграция; сыртқа - тек edge арқылы, егер талап етілсе.
Мысал: K8s Ingress ішкі ретінде
yaml apiVersion: networking. k8s. io/v1 kind: Ingress metadata:
name: api-internal annotations:
kubernetes. io/ingress. class: "nginx"
alb. ingress. kubernetes. io/scheme: internal # or provider equivalent spec:
rules:
- host: api. internal. corp http:
paths:
- path: /v1/
pathType: Prefix backend:
service:
name: api port: { number: 8080 }
5) Egress-контур: «әдепкі - deny»
Жекеменшік кіші желілерден тікелей интернетсіз: барлығы тек:- NAT Gateway (кеңейтулер/репозиторийлер үшін) + FQDN/IP бойынша egress allowlist;
- Егер саясаткерлер бақылауды талап етсе, TLS инспекциясы/прокси;
- NAT орнына PaaS/тіркелімдерге Private endpoints.
- SG/NACL: анық рұқсаттар per-сервис, «шығыс-батысқа» - минимум.
- Egress-саясат K8s (CNI/OPA Gatekeeper/Calico NetworkPolicy) - сыртқы IP, кластерлерге/ендпойнттарға рұқсаттарға тыйым салу.
6) DNS: split-horizon и private zones
Ішкі аймақтарды бөліңіз ('.internal. corp ') және жария.
Провайдер қызметтері үшін Private DNS аймақтары: жария атауларды қайта анықтайды (мысалы, 'bucket. s3. region. amazonaws. com ') жеке A/AAAA жазбаларына.
Forwarders/Conditional DNS между on-prem ↔ cloud.
Атаулардың пішімі: қоршауды/аймақты ('api. eu1. internal. corp '), PII-ден аулақ болыңыз.
api. internal. corp. A 10. 20. 30. 40 s3. bucket. corp. A 10. 100. 0. 25 # via private endpoint
7) Желіаралық байланыстардың паттерндері
Peering (VPC, VPC/VNet, VNet): қарапайым және жылдам; транзит әрдайым қолдана бермейді → жұлдыз (hub-and-spoke) үшін Transit Gateway/Virtual WAN/Cloud Router пайдаланыңыз.
On-prem ⇄ cloud: бастау үшін IPsec VPN, содан кейін BGP және резерві бар бөлінген желі (DC/ER/IC) (екі провайдер, әртүрлі кіру нүктелері).
VRF/Route-domain сегментациясы: prod/stage/dev және карта периметрін оқшаулау.
8) Zero Trust және ішкі аутентификация
mTLS-әдепкі (service mesh: Istio/Linkerd/Consul), машиналық ұқсастығы: SPIFFE/SPIRE.
L7 саясаты: JWT/claims/scopes бойынша авторизациялау, прокси деңгейінде маршруттарды/әдістерді шектеу.
Secrets: HashiCorp Vault/КMS + External Secrets Operator; қысқа өмір сүретін креденшелдер (STS).
Bastion/Privileged Access: тек брокер/JIT сессиясы (MFA, командаларды жазу) арқылы қол жетімділік.
Мысалы: Envoy сүзгі mTLS + JWT-authz (фрагмент)
yaml transport_socket:
name: tls typed_config: {... spiffe://svc. api... }
http_filters:
- name: envoy. filters. http. jwt_authn typed_config:
providers:
oidc: { issuer: https://idp. corp, audiences: ["api"], remote_jwks: {...} }
rules: [{ match: { prefix: "/v1" }, requires: { provider_name: oidc } }]
9) Дәнекерлеу ішіндегі деректер және PaaS
Базалар/кластерлер: тек жеке мекенжайлар; bastion/JIT арқылы әкімші.
Сақтау орны: private endpoint бойынша VPC-дан қатынау; endpoint policy тек қажетті бакеттерге/контейнерлерге рұқсат береді.
Кезектер/шиналар: жеке интерфейстер; продюсерлер/консьюмерлер - сол VPC/peering.
Артефактілер тіркелімдері: Жеке кіші желілердегі CI/CD runners бағдарламасынан жеке қатынау.
10) Жекеменшік желілердегі бақылау
OpenTelemetry Collector - телеметрия шлюзі ретінде: ішкі экспорттаушылар self-hosted (Prometheus/Tempo/Loki/ClickHouse) немесе басқарылатын backends private endpoints.
Flow logs/NSG/NACL logs және reachability analyzer - міндетті.
SLO-бөліктер: 'site/region/vpc/subnet', egress ағымына арналған алерта және күтпеген «интернет-бағыт».
11) Тестілеу және верификация
/ Ingress/Service желілік ережелеріне арналған Policy as Code (OPA/Gatekeeper).
Canary-маршруттары: private DNS тестілік домендері, әртүрлі кіші желілерден/AZ/аймақтардан synthetic-тексерулер.
Chaos-желісі: VPC/AZ (netem/Toxiproxy) арасындағы кідірістер/шығындар, таймауттарды тексеру және retry-саясат.
12) Конфигурация мысалдары
12. 1 Terraform: белгілер мен бағыттар (идея)
hcl resource "aws_route_table" "app" {
vpc_id = aws_vpc. core. id tags = { Name = "rt-app", env = var. env, zone = "private" }
}
Route on PrivateLink endpoint (interface endpoint is created separately)
resource "aws_vpc_endpoint_route_table_association" "s3" {
route_table_id = aws_route_table. app. id vpc_endpoint_id = aws_vpc_endpoint. s3. id
}
12. 2 K8s NetworkPolicy: қажеттісінен басқасына тыйым салу
yaml apiVersion: networking. k8s. io/v1 kind: NetworkPolicy metadata: { name: deny-all }
spec:
podSelector: {}
policyTypes: ["Ingress","Egress"]
kind: NetworkPolicy metadata: { name: allow-core }
spec:
podSelector: { matchLabels: { app: api } }
egress:
- to:
- namespaceSelector: { matchLabels: { ns: db } }
ports: [{ port: 5432, protocol: TCP }]
- to:
- ipBlock: { cidr: 10. 100. 0. 0/16 } # private endpoints ports: [{ port: 443, protocol: TCP }]
12. 3 Nginx Ingress (internal scheme) + HSTS
yaml metadata:
annotations:
alb. ingress. kubernetes. io/scheme: internal nginx. ingress. kubernetes. io/hsts: "true"
13) Антипаттерндер
Жеке кіші желілерден жалпы «management-интернет»; egress-бақылаудың болмауы.
DNS сплит-брейн және кездейсоқ қол '/etc/hosts '.
Қиылысатын CIDR және «NAT-матрешкалар».
«Қолайлылық үшін» БД/сақтау үшін ашық endpoint '.
Ережелер ағындарының/аудитінің логтарының болмауы; «ашық» SG '0. 0. 0. 0/0`.
/ CI кодындағы ұзақ өмір сүретін статикалық кілттер.
14) Құны және өнімділігі
Private endpoints жиі тұрақты NAT egress арзан және қауіпсіз.
bottleneck жасамау үшін/az-local NAT кластерлерін жоспарлаңыз.
Кэш/edge және SWR кросс-аймақтық трафикті азайтады.
Протоколдарды таңдау: HTTP/2/gRPC ішінде → аз қосылыстар және TLS-оверхаед.
15) iGaming/Қаржы ерекшелігі
PCI DSS: карточкалық контур (CDE) жеке желіде/VRF, ешқандай интернет; тек private endpoints бойынша стор/PSP-логтарға қатынау; өзгермейтін аудиттер (WORM/Object Lock).
KMS/Vault: кілттер сегменттелген per өңір/бренд; қолтаңба операциялары (HSM) тек mTLS бойынша CDE-ден қол жетімді.
PSP/KYC: егер private connectivity/маркеттер болса - пайдаланыңыз; әйтпесе - HMAC/mTLS және айқын allowlist бар сенімді прокси арқылы egress.
Мульти-тенанттылық: тегтер және саясаттар бойынша 'tenant '/' brand'; жеке private DNS аттары мен SG қабаттары.
16) Prod-дайындық чек-парағы
- CIDR жоспары қиылысусыз; dual-stack дайын (IPv6).
- Hub-and-Spoke, Transit, peering; on-prem ⇄ cloud - BGP, резервтік линк-жұптар.
- Барлық PaaS/сақтау орындары/БД - private endpoints + endpoint policies арқылы.
- Internal LB/Ingress; көпшілік периметрі - тек edge/WAF.
- Split-horizon DNS, private zones және conditional-forwarding бапталған.
- Әдепкі Egress «deny»; NAT/прокси шектеулі және журналданады.
- Mesh mTLS + SPIFFE; JWT-authz L7; Vault/ESO, қысқа құпиялар.
- NetworkPolicy/SG/NACL - «ең аз қажетті», flow-logs және reachability-талдау.
- ішіндегі OTel Collector; site/region/vpc 'бойынша SLO.
- PCI/аудит: WORM журналдары, KMS/HSM, CDE оқшаулау, runbook қатынау.
17) TL; DR
Нақты CIDR-жоспары бар hub-and-spoke схемасы бойынша желі құрыңыз, әрбір PaaS/сақтау/ДҚ-ға private endpoints пайдаланыңыз, ал сыртқа трафик - тек басқарылатын egress-нүктелер арқылы ғана. Ішінде - internal LB/Ingress, mTLS + SPIFFE, split-horizon DNS, қатаң NetworkPolicy/SG және OTel арқылы телеметрия. iGaming/Қаржы үшін PCI сегментациясын, KMS/Vault және өзгермейтін аудитті қосыңыз; PSP/KYC бағдарламасын жеке арналар немесе қатаң бақыланатын прокси арқылы шығарыңыз.