Verified by Garnet Grid

Network Security Architecture

Design defense-in-depth network security. Covers zero trust networking, network segmentation, firewall policies, WAF configuration, DDoS protection, and network monitoring.

The network perimeter is dead. Attackers don’t break through firewalls — they phish credentials, exploit APIs, and move laterally through flat networks. Zero trust networking assumes every request is potentially hostile, regardless of where it originates. This guide covers practical network security architecture for modern cloud-native applications.


Zero Trust Architecture

Traditional (Castle & Moat)          Zero Trust
┌─────────────────────────┐          ┌─────────────────────────┐
│ Trust boundary = network│          │ Trust boundary = every  │
│                         │          │ request                 │
│ ┌─────┐  ┌─────┐       │          │                         │
│ │ App │──│ DB  │ trusted│          │ ┌─────┐  ┌─────┐       │
│ └─────┘  └─────┘       │          │ │ App │──│ DB  │ verify │
│                         │          │ └──┬──┘  └──┬──┘ every  │
│ Inside = trusted        │          │    │mTLS    │mTLS req   │
│ Outside = untrusted     │          │    │auth    │auth       │
└─────────────────────────┘          └─────────────────────────┘

Network Segmentation

ZoneContainsAccess
DMZLoad balancers, WAF, CDNPublic internet
Web tierApplication servers, API gatewaysFrom DMZ only
App tierBusiness logic servicesFrom web tier only
Data tierDatabases, caches, queuesFrom app tier only
ManagementBastion, CI/CD, monitoringAdmin VPN only

AWS Security Groups Example

# Web tier: only accepts traffic from ALB
resource "aws_security_group" "web" {
  ingress {
    from_port       = 8080
    to_port         = 8080
    security_groups = [aws_security_group.alb.id]
  }
}

# Data tier: only accepts traffic from app tier
resource "aws_security_group" "database" {
  ingress {
    from_port       = 5432
    to_port         = 5432
    security_groups = [aws_security_group.app.id]
  }
  # No egress to internet
}

WAF Rules

Rule CategoryWhat It BlocksExample
SQL injection' OR 1=1 -- in parametersOWASP CRS rule 942100
XSS<script> in user inputOWASP CRS rule 941100
Rate limitingBrute force, scraping> 100 req/min from single IP
Geo-blockingTraffic from embargoed countriesBlock by country code
Bot managementAutomated abuseChallenge suspicious user agents
CustomApplication-specificBlock /admin from non-VPN IPs

Anti-Patterns

Anti-PatternProblemFix
Flat networkCompromised host can reach everythingNetwork segmentation with security groups
Allow all egressExfiltration of data undetectedRestrict egress, allow only needed destinations
IP-based trustIPs can be spoofed, changeIdentity-based auth (mTLS, service mesh)
No network monitoringAttacks undetected for monthsVPC flow logs, IDS/IPS, anomaly detection
WAF in monitor-only mode foreverRules never enforcedStart in monitor, then enforce within 30 days

Checklist

  • Network segmented: DMZ, web, app, data, management tiers
  • Security groups: least privilege, no 0.0.0.0/0 ingress
  • Egress restricted: only allow required outbound traffic
  • WAF deployed on all public endpoints
  • DDoS protection: AWS Shield / Cloudflare / similar
  • mTLS between internal services
  • VPC flow logs: enabled, monitored for anomalies
  • DNS security: DNSSEC, DNS filtering
  • No public-facing databases or admin interfaces

:::note[Source] This guide is derived from operational intelligence at Garnet Grid Consulting. For network security consulting, visit garnetgrid.com. :::

Jakub Dimitri Rezayev
Jakub Dimitri Rezayev
Founder & Chief Architect • Garnet Grid Consulting

Jakub holds an M.S. in Customer Intelligence & Analytics and a B.S. in Finance & Computer Science from Pace University. With deep expertise spanning D365 F&O, Azure, Power BI, and AI/ML systems, he architects enterprise solutions that bridge legacy systems and modern technology — and has led multi-million dollar ERP implementations for Fortune 500 supply chains.

View Full Profile →