High level Network Architecture design

Imagine you are tasked to design the network architecture of a firm.

First thoughts

  1. Should all the devices be exposed to the internet ?
  2. When some devices are infiltrated by an attack, should there be a way to simply turn off all connections from the rogue devices to other devices
  3. Categorize devices into layers/zones based on attack surface exposure?

Functional requirements

  1. Add multiple layers for defense in depth
  2. Only expose the outermost layer to the external internet

Architectural choices

  1. Separate each layer by a network layer 3 firewall
  2. Blacklist all connections between device across layers by default
  3. Have a mechanism to whitelist connections as need arises.

Network Architecture

Zones

  • E : External Internet
  • P : Perimeter
  • I : Intermediate
  • S : Safe

Devices in ‘S’ zone are the most secure

Devices in ‘I’ zone are less secure

Devices in ‘P’ zone face the external internet

Connectivity requirement submission

How do application developers of the firm submit their connectivity requirement ?

Connectivity requirement format

We need a list of connections (represented as Quadruples) which the platform is going to whitelist for the app developers

  1. Source IP/Subnet
  2. Destination IP/Subnet
  3. Port
  4. Protocol