Private endpoinae և ներքին ցանցեր
1) Ինչո՞ ւ է մասնավոր ցանցը
Նպատակն է նվազագույնի հասցնել հարձակման մակերեսը և egress արժեքը, միացնելով մասնավոր ոսպնյակների քննադատական ծառայությունները առանց ինտերնետի։ Սա տալիս է
PaaS/DB/պահեստ հանրային IP-ից;
ստանդարտ (PCI DSS/GDPR);
կանխատեսելի ձգձգումներ և միկրոօրգանիզացիա։
2) Ռուսական մոդելը 'CSC/VNet և հաբեր։
Հասցեային տարածքը 'CIDR պլանը, առանց հատումների (օրինակ' 10։ 0. 0. 0/12 "կտրվում է շրջապատով և հաբերով)։
Սեգմենացիա ՝ ենթահող «ingress», «app», «ops», «shared» առանձին երթուղիներով/ACL/SG։
Հիբրիդային պաշտպանություն ՝ կենտրոնական SDC/VNet դռներով (SNN/WindectConnect/Windows/Interconnations), մինչդեռ SDC peering/Transit Gateway և ցանցային ֆեյվոլներ։
Dox-stack: IPv6 պլանավորումը նախապես (խնայում է NAT, բարելավում է հասցեների մասշտաբը)։
3) Private endpoinae: Սկզբունքներ
Private endpoint/Privice Link/Private You Connect-ը մասնավոր ինտերֆեյս է կառավարման ծառայության (օբյեկտի պահեստ, գծեր, BD, գաղտնի պահեստ), որը հասանելի է միայն ձեր հասցեային տարածքից
Մոսկվան գնում է պրովայդերական ցանցի ներսում (ոչ ինտերնետի միջոցով)։
Endpoint policy-ը սահմանափակում է, թե որտեղ կարելի է քայլել (նախածանց/ARN/ռեսուրսներ)։
RF-ն վերարտադրվում է մասնավոր IP (տե՛ ս 366)։
Տիպային նպատակներ ՝ օբյեկտ (S3/GCS/Blob), secret/KMS, գծեր, BD ղեկավարվող իրադարձությունների անվադողեր, վերլուծական ծառայություններ, արտեֆակտային գրանցումներ։
4) Մոսկվան և հավասարակշռությունը ներսում
Coral Load Balancer (ILB) L4/7-ի համար, տեսնում ենք միայն մասնավոր հաշվարկներից։
Kubernetes:- «LoadBalancer» տեսակի «LoadBalancer» տեսակի emental-սենսացիաներով։
- Մուտքը Mastal Ingress (Nginx/Windour/Gateway API) միջոցով մասնավոր հասցեով։
- API Gateway (private) 'մասնավոր ինտեգրումը backends; միայն 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-2019 '«լռելյայն' deny»
Առանց ուղղակի ինտերնետի մասնավոր հաշվարկներից 'ամեն ինչ դուրս է գալիս միայն
NAT Gateway (apdeit/reposorities) + egress allowlist FQDN/IP;
TFC ստուգում/2019, եթե քաղաքական գործիչները պահանջում են վերահսկողություն։
Private endpoinics-ը PaaS/գրանցման փոխարեն NAT-ի փոխարեն։
SG/NACL 'per-ծառայության ակնհայտ լուծումները, «արևելք-արևմուտքը» նվազագույն է։
Egress-քաղաքականության K8s (CNI/OPA Gatekeeper/Calico NetworkPolicy) - արտաքին IP-ի արգելք, կլաստերների/endpoints թույլտվություն։
6) DNS: split-horizon и private zones
Կիսեք ներքին տարածքները ('.internal)։ 4p ') և հանրային։
Private CORzones-ը պրովայդերի ծառայությունների համար 'վերագրանցում են հասարակական անունները (օրինակ ՝ «bucket»)։ s3. region. amazonaws. com ') մասնավոր A/AAAA գրառումների վրա։
Forwarders/Conditional DNS между on-prem ↔ cloud.
Անունների ձևաչափը 'incapulation միջավայրը/տարածաշրջանը ("api. eu1. internal. 4p '), խուսափեք PII-ից։
Ձայնագրման օրինակ
api. internal. corp. A 10. 20. 30. 40 s3. bucket. corp. A 10. 100. 0. 25 # via private endpoint
7) Կերամիկական կապերի պատրանքները
Peering (MSC NPC/VNet no VNet) 'պարզ և արագ; Տրանզիտը միշտ չէ, որ աջակցվում է 'օգտագործեք Transit Gateway/Virtum WAN/Cloud Router աստղի համար (hub-and-spoke)։
On-24m: IPsec VI-ը սկսելու համար, ապա ընտրված գիծը (DC/ER/IC) BGP-ի և պահեստի հետ (երկու պրովայդեր, տարբեր մուտքի կետեր)։
VRF/Roult-domain հատվածները ՝ 108/stage/dev և քարտեզի պարագծի մեկուսացում։
8) Zero Trust և ներքին վավերացում
MTMS-լռելյայն (wwww.mesh: Istio/Linkerd/Consul), մեքենայական ինքնությունը 'SPIFE/SPIRE։
L7 քաղաքականությունները 'JWT/claims/scopes-ի հեղինակային իրավունքը, երթուղիների/մեթոդների սահմանափակումը մրցույթի մակարդակում։
Secrets: HashiCorp Vault/КMS + External Secrets Operator; կարճատև քրեդենշելներ (STS)։
Bastion/Privileged Express-ը 'մասնագետի հասանելիությունը միայն բրոքերի/JIT-2019 (MFA, թիմերի ձայնագրումը) միջոցով։
Օրինակ ՝ Envoy ֆիլտրը mTSA + 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-ի միջոցով։
Մոսկվա 'MSC հասանելիությունը private endpoint; endpoint policy-ը թույլ է տալիս միայն անհրաժեշտ տանկեր/բեռնարկղեր։
Հերթեր/անվադողեր 'մասնավոր ինտերֆեյսներ; Unowsers/consumers - նույն CPC/peering-ում։
Արտեֆակտների գրանցումները 'մասնավոր մուտք CI/CD runners մասնավոր հաշվարկներում։
10) Մասնավոր ցանցերում դիտարկումը
OpenTelemetry Collector-ը հեռուստացույցի դարպասի նման է 'ներքին ինտերիերը www.f-hosted (Prometheus/Tempo/Loki/ClickHouse) կամ կառավարվող backends-ում' private endpoin.ru։
Flow logs/NSG/NACL logs-ը և reachability anportzer-ը պարտադիր են։
SLO-seress: 'site/region/www.c/wwww.net ", egress արտահոսքի ալտերտեր և անսպասելի" ինտերնետային ուղղություն "։
11) Փորձարկում և հավատարմագրում
Policy as Code (OPA/Gatekeeper) ցանցային կանոնների համար/Ingress/Lenta.ru։
Canary-երթուղիներ 'թեստային ֆորումներ private III-ում, www.nthetic-ստուգումներ տարբեր հաշվարկներից/AZ/տարածաշրջաններից։
Chaos-ցանցը 'SNC/up-AZ (netem/Toxiproxy), թայմաուտների և retry-քաղաքական ստուգումներ։
12) Միգրացիայի օրինակներ
12. 1 Terraform: 112 և երթուղիներ (գաղափար)
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) Անտիպատերնի
Ընդհանուր «տեղեկատվական համացանցը» մասնավոր հաշվարկներից. egress-վերահսկողության բացակայություն։
Սպլիտ-բրայն III և պատահական ձեռքով '/etc/hos.ru "։
Հատվող CIDR-ը և NAT-մատրեշները։
Հանրային endpoint 's BD/պահեստավորման համար «հարմարավետության համար»։
Հոսքերի/կանոնների բացակայությունը. «Բաց» SG '0։ 0. 0. 0/0`.
Երկար գոյատևող ստատիկ բանալիները կոդում/CI-ում։
14) Արժեքը և արտադրողականությունը
Private endpoinae-ը հաճախ ավելի էժան է, քան մշտական NAT egress-ը և ավելի ապահով։
Պլանավորեք NAT կլաստերներ/az-ental, որպեսզի չստեղծեք bottleneck։
Քաշ/edge և SWR-ը կրճատում են քրոսս-ռուսական։
Մրցույթի ընտրությունը 'HTTP/2/gRPC-ի ներսում ավելի քիչ ռուսական և TMS-ovensaeda։
15) iGaming/ֆինանսական առանձնահատկությունները
PCI DSS 'քարտեզի գրանցումը (CDE) առանձին ցանցում/VRF, ոչ ինտերնետը; սթորի/PSA լոգարանների հասանելիությունը միայն private endpoinae; անփոփոխ աուդիտներ (WORM/Object Prok)։
KFC/Vance: բանալիները սեգմենտացված են per տարածաշրջանի/բրենդի; Վիրահատությունները (HSM) հասանելի են միայն CDE-ից mTLS-ով։
PMS/KYC: Եթե կա private connectivity/պիտակներ, օգտագործեք; հակառակ դեպքում, egress-ը HMAC/mTSA-ի և ակնհայտ allowlist-ի հետ վստահված գործընկերության միջոցով։
Multi-tenanty 'tegi և քաղաքականությունը' tenae '/' brand '; առանձին private III-անուններ և SG շերտեր։
16) Չեկ-թուղթ պատրաստակամության համար
- CIDR պլանը առանց հատման; dj-stack պատրաստ է (IPv6)։
- Hub-and-Spoke, Transit, peering; on-24m 24cloud - BGP, պահուստային լինկ զույգեր։
- Ամեն ինչ PaaS/2019/BD - private endpoin.ru + endpoint policies միջոցով։
- Internal LB/Ingress; հանրային պարիմետրը միայն edge/WAF-ի վրա է։
- Split-horizon III, private zones և conditional-forwarding։
- Egress լռելյայն «deny»; NAT/2019 սահմանափակված և ամսագրեր են։
- Mesh mTLS + SPIFFE; JWT-authz-authz-ը L7-ում; Vox/ESO, կարճ գաղտնիքներ։
- NetworkPolicy/SG/NACL - «նվազագույն անհրաժեշտ», flow-logs և reachability-վերլուծություն։
- OTel Collector ներսում; ալտերտերը egress, SLO արտահոսքի վրա 'site/region/www.c'։
- PCI/աուդիտ ՝ WORM ամսագրեր, KMS/HSM, CDE մեկուսացում, runbook մուտք։
17) TL; DR
Ցանցը կառուցեք hub-and-spoke սխեմայի համաձայն 'հստակ CIDR պլանով, օգտագործեք private endpoin.ru յուրաքանչյուր PaaS/պահեստավորման/BD-ի համար, իսկ արտաքին տեսքը միայն կառավարվող egress կետերի միջոցով է։ Ներսում 'all LB/Ingress, mTSA + SPIFFE, split-horizon III, խիստ NetworkPolicy/SG և հեռուստաչափություն OTel-ի միջոցով։ IGaming/ֆինանսավորման համար ավելացրեք PCI հատվածը, KMS/Vance-ը և անփոփոխ աուդիտը։ PMS/KYC-ն ուղարկեք մասնավոր ալիքների միջոցով կամ կոշտ վերահսկվող։