Firewall саясаты жана ACL
1) Максаттары жана принциптери
Firewall/ACL - бул маалыматтар тегиздигин көзөмөлдөө: ким, кайда, качан жана кандай протокол менен жүрөт. Негизги принциптери:- Least privilege: гана зарыл жол (ачык allow, implicit deny).
- Сегментация: чөйрөнү изоляциялоо (prod/stage/dev), тенанттар, критикалык контурлар (PCI/KMS/DB).
- Egress-Control: чыгуучу трафик FQDN/IP тизмелери жана жеке endpoint's менен чектелет.
- 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: прокси/WAF/Mesh RBAC (ыкмалары, жолдору, JWT-claims, SNI).
Inline vs out-of-band: inline-коопсуздук трафикти багыттайт; 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 - ири бүртүкчөлүү тосмо/дени-лист".
Azure
NSG (stateful), ASG (тегдер боюнча колдонмо топтору), L7/IDS үчүн Azure FW, 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 жетүү: МФА менен 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 ар бир эреже үчүн, autoprection пайдаланылбаган.
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-Control жана жеке периметрлер
PaaS/реестрлер/сактоо үчүн PrivateLink/Private Service Connect артык.
Калган egress NAT/FQDN allowlist жана белгиленген IP менен прокси аркылуу (үчүнчү тараптын allowlist үчүн).
Интернетке түз этек/VM кирүүгө бөгөт коюу; egress-шлюз аркылуу гана өзгөчөлүктөр.
7) DNS жана SNI-аң-сезимдүү эрежелер
Split-horizon: ички аймактар сыртта эмес.
FW/Proxy FQDN/SNI колдоо менен чыгуучу HTTPS (SNI allow).
конкреттүү жөнөтүүчүлөр домендери боюнча 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) жеткиликтүүлүгүн жана башаламандыкты сыноо
Synthetic ар кандай көмөкчордондордон/AZ/региондордон үлгүлөрү: TCP/443, DD/брокерлердин өзгөчө порттору.
DR жолдорун текшерүү үчүн убактылуу дени: көз карандылыкты өчүрүү → retries/circuit/fallback иштеши керек.
MTU/MSS: perimeters (өзгөчө IPsec/NAT-T) боюнча эч кандай үзүндү жок экенин текшерип.
11) Аткаруу жана ишенимдүүлүк
борборлоштурулган тар жерден качуу: горизонталдуу масштабда inline-FW (GWLB/scale sets).
ECMP/AS-жол/BGP хаб ортосунда бөлүштүрүү үчүн.
TLS текшерүү Profiles: чекит (кымбат), өзүнчө ачкыч издерин сактоо, комплаенс сактоо.
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 "убактылуу" → түбөлүккө калат.
"Кар бүртүкчөлөрү" (консолдогу кол менен оңдоолор) кодсуз жана ревизиясыз.
Жалпы SG/NSG үчүн prod/этап/dev; сындуу жана сындуу эмес көмөкчордондордун аралашуусу.
Эч кандай egress-контролдоо жана жеке endpoint's → ачкычтар/сырларды сыртка агып.
DNS/SNI четке кагуу: IP берүүчүгө уруксат берилди - эртең ал өзгөрдү жана бүт диапазону ачылды.
Жок flow logs жана runbook's → forensics мүмкүн эмес.
14) iGaming/каржы өзгөчөлүктөрү (PCI/жөнгө салуучу)
PCI CDE өзүнчө VRF/сегментинде, эч кандай интернет; PSP/логдорго кирүү - mTLS жана HMAC менен private connectivity/proxy аркылуу.
Data residency: PII/төлөм окуялары - өлкө/аймак ичинде; аймактар аралык - агрегаттар/анонимдүү.
KMS/Vault/HSM: өзүнчө подсети/SG, кыска күбөлүктөрү менен гана mTLS кардарлар.
WORM-аудит: өзгөрүлбөс сактоо FW/flow Логи (Object Lock), жөнгө салуучу минималдуу ≥ retenshn.
Өнөктөштөр (PSP/KYC): FQDN allowlist, статикалык egress IP, провайдерлер боюнча SLA мониторинг.
15) Prod-даярдык чек тизмеси
- Бирдиктүү сегментациялоо модели (hub-and-spoke, VRF), CIDR кесилишсиз.
- Deny-by-default на egress; PaaS/сактоо үчүн жеке endpoints.
- Workload үчүн SG/NSG stateful, NACL/route-filters - көмөкчордондордо/хабдарда.
- K8s: NetworkPolicy «deny-all», mesh mTLS + L7 RBAC.
- Tags/IP ордуна топтор; owner/TTL/description ар бир эреже.
- IaC + Policy-as-Code; жеткиликтүүлүк симуляциясы менен CI; милдеттүү peer review.
- Flow logs киргизилген; dashbord top-talkers, drop-rates; "агып egress".
- Bastion/JIT башкаруу үчүн; MFA; сессияларды каттоо.
- Runbook 'i: кантип кошуу/алып салуу эрежесин, окуя учурунда кантип иштөө керек; "өлүк" эрежелерди үзгүлтүксүз текшерүү.
- PCI/каржы үчүн: CDE изоляция, WORM аудит, PSP/KYC үчүн FQDN-allow, статикалык egress IP.
16) TL; DR
катмарлар боюнча коргоону куруу: Workloads боюнча SG/NSG stateful, көмөкчордондордо NACL/route-filters, mesh/прокси L7 RBAC, WAF/периметри боюнча edge. демейки - deny-by-default, egress гана контролдонуучу чекиттер же жеке endpoints аркылуу. Эрежелерди код катары сүрөттөңүз, аларды жеткиликтүүлүк саясатчылары жана симуляторлору менен текшериңиз, flow-logs чогултуңуз. iGaming/каржы үчүн PSP/KYC үчүн PCI сегменттөө, WORM аудит жана катуу FQDN-allow кошуу.