OHNE KOPFSCHMERZEN CC-BY-SA Anders Henke Topics (My) Situation - - PowerPoint PPT Presentation

ohne kopfschmerzen
SMART_READER_LITE
LIVE PREVIEW

OHNE KOPFSCHMERZEN CC-BY-SA Anders Henke Topics (My) Situation - - PowerPoint PPT Presentation

GUUG Frhjahrsfachgesprch 2015 FIREWALLMANAGEMENT OHNE KOPFSCHMERZEN CC-BY-SA Anders Henke Topics (My) Situation Rock-Solid Technology Approach Data Model 2 25.03.2015 1&1 Internet AG (My) Situation


slide-1
SLIDE 1

Anders Henke

FIREWALLMANAGEMENT OHNE KOPFSCHMERZEN

GUUG Frühjahrsfachgespräch 2015 CC-BY-SA

slide-2
SLIDE 2

 (My) Situation  Rock-Solid Technology  Approach  Data Model

1&1 Internet AG 2

Topics

25.03.2015

slide-3
SLIDE 3

(My) Situation

25.03.2015 3 1&1 Internet AG

  • Internet Service Provider (Hosting, Access, …)
  • Hundreds of public services
  • Thousands of non-public services
  • Service-Oriented Architecture (SOA)
  • No constraints on technology
  • ~ 1200 developers, ~ 200 sysadmins, ~20 network engineers
  • There’s more than one way to do it!
  • Traditional Software development, Systems Operations, Applications Operations
  • DevOps(ish)
  • OpsDev(ish)
  • … and more.
  • Multi-layered defense in Depth
  • Using proven, rock-solid technology
slide-4
SLIDE 4

Rock-Solid Technology

25.03.2015 4 1&1 Internet AG

“Roadblock in Palestine” by Harry Pockets, CC-BY-SA 3.0

slide-5
SLIDE 5

Firewall Technology

25.03.2015 5 1&1 Internet AG

  • Stateless Packetfilters
  • Simple, robust technology
  • Avoid Stateful Packetfilters
  • Easier to break than stateless packetfilters
  • Cool for egress traffic, not for ingress traffic
  • →little/no benefit to us and avoided, if possible
  • No “Next-Generation Firewalls”
  • Adds features we have no use for
  • Adds caveats we don’t want to have
  • →no benefits to us

“Roadblock in Palestine” by Harry Pockets, CC-BY-SA 3.0

slide-6
SLIDE 6

Traditional Firewall

25.03.2015 6 1&1 Internet AG

slide-7
SLIDE 7

Traditional Firewall

25.03.2015 7 1&1 Internet AG

  • Roadblock strictly separating any networks
  • Internet from internal networks
  • Internal networks from each other
  • Internal networks from Internet
slide-8
SLIDE 8

Traditional Firewall Management

25.03.2015 8 1&1 Internet AG

  • Lost in Translation
  • Dev gives connection requirements to Ops,

Ops gives translates requirements to sysadmin, sysadmin translates to network-speak, firewall engineer translates to management software, firewall software translates to Cisco/Juniper/…

  • Consequences
  • Many Firewall tickets require “rework”
  • Getting firewall rules done right may take weeks.
slide-9
SLIDE 9

Scalability

25.03.2015 9 1&1 Internet AG

  • High demand of fine-granular internal firewall rules
  • More services, more hosts, more firewall rules
  • “We’re really secure, we do have tons of firewall rules”
  • Adding a single node to a cluster: up to 100 extra rules
  • Adding “infrastructure” nodes: extra rules for every network
  • Exponential growth of fine-granular rules
  • Exceeding growth of customers
  • Exceeding growth of applications
  • Exceeding Moore’s law
slide-10
SLIDE 10

Restart

25.03.2015 10 1&1 Internet AG

  • Restart
slide-11
SLIDE 11

New Network Firewalling Concept

25.03.2015 11 1&1 Internet AG

  • Network Firewalling Zones
  • Fine-granular ACLs for public services
  • Subnet-granular ACLs from DMZ to internal networks
  • No network ACLs between internal networks
  • No network ACLs from internal networks to DMZ

Public DMZ Internal

slide-12
SLIDE 12

New Firewalling Concept

25.03.2015 12 1&1 Internet AG

  • Network Firewalling Zones
  • Fine-granular ACLs for public services
  • Subnet-granular ACLs from DMZ to internal networks
  • No network ACLs between internal networks
  • No network ACLs from internal networks to DMZ
  • Host Firewall
  • Fine-granular netfilter ACLs on every host
  • Also secures access within the same subnet
  • Every host only has its own set of ACLs: O(1)
  • Application
  • Enforce Authentication / Authorization

Public DMZ Internal

slide-13
SLIDE 13

How to manage netfilter?

25.03.2015 13 1&1 Internet AG

  • Custom scripting
  • Shell script, macro processor
  • Works well for very specific environments
  • You need to know what you’re doing.
  • Off-the-shelf software
  • Typically: one admin to rule them all
  • Does not fit our environment
  • Custom Management Software
  • Multi-user-aware
  • Tight integration with corporate Intranet, processes and tooling
slide-14
SLIDE 14

Firewall Rule Management Software

25.03.2015 14 1&1 Internet AG

  • Approach
  • Changes do typically affect a fraction of hosts
  • Diff is centrally calculated, a change notification broadcasted to affected hosts
  • On notification or agent restart, agents do poll new netfilter configuration
  • Netfilter configuration is cached locally and applied on agent restart.
slide-15
SLIDE 15

Firewall Rule Management Software

25.03.2015 15 1&1 Internet AG

  • No spreadsheet, no scripting language,

no macro processor, no security groups

  • Sysadmins do know about IP addresses, ports and protocols
  • … Application Owners, Developers and Management don’t necessarily do.
  • Use a data model everyone understands!
  • Everyone should be able to read firewall rules!
  • Everyone should be able to write correct firewall rules!
  • Everyone should be able to approve/deploy their firewall rules!
slide-16
SLIDE 16

Systems Architecture

25.03.2015 16 1&1 Internet AG

slide-17
SLIDE 17

Systems Architecture, Excerpt

25.03.2015 17 1&1 Internet AG

Application,

Consumer,

Client

Service,

Provider,

Server

slide-18
SLIDE 18

Firewall Management Data Model

25.03.2015 18 1&1 Internet AG

  • Remember your average Monitoring system?
  • A cluster of hosts is running service “A”
  • Every object does have a distinct name and responsible team
  • Apply the same principles to firewalling.

A

slide-19
SLIDE 19

Firewall Management Data Model

25.03.2015 19 1&1 Internet AG

  • Service A does access Service B.

A B

slide-20
SLIDE 20

Treat everything as a graph of linked nodes

25.03.2015 20 1&1 Internet AG

  • Follow from service A (source) to its hosts
  • Destination = Definition of B
  • Consult source hosts for “ip route get $destination”
  • (Cache result as a fallback)
  • Deploy rule on hosts running service B
  • Create/Replace custom chain for service B
  • Fill in pre-calculated, ordered rules
  • Link custom chain to INPUT chain
  • Done!
  • Optionally: deploy on hosts running service A as an egress filter

A B

slide-21
SLIDE 21

Legacy and Management

25.03.2015 21 1&1 Internet AG

  • Networks
  • CIDR-style networks do exist to integrate legacy sources
  • Groups
  • One can create and manage groups
  • Groups can contain any other objects

A B

slide-22
SLIDE 22

Spot the error!

25.03.2015 22 1&1 Internet AG

A B C D

slide-23
SLIDE 23

Default Policies

25.03.2015 23 1&1 Internet AG

  • Every service does have its own default policy
  • Restricted Service: default policy “reject”
  • Unrestricted Service: default policy “accept”
  • Host default policy = catch-all for “unknown”
  • If you’d like to access all services, create a rule involving all services.
  • If you need “access all areas”, create a rule involving all services AND the host.
slide-24
SLIDE 24

Responsibilities

25.03.2015 24 1&1 Internet AG

  • Responsibilities
  • Services running on a host

are owned by the team running the host.

  • The team running the host may assign

approval permissions for specific services to other teams.

  • Approvals
  • The requesting team has to be responsible for source or destination (host/service).
  • If the requesting team is responsible for destination, we’ll assume their approval;
  • therwise, we’ll request their approval.
  • Changes
  • Changing anything which results in re-deployment requires re-approval.
  • Until re-approval, the last approved stated is deployed.

A B

slide-25
SLIDE 25

Stories solved

25.03.2015 25 1&1 Internet AG

  • Distributed authoring, approval and deployment of firewall rules
  • Simple data model, simple rules, simple auditing
  • “Workstations of Team Y and Jenkins may access Tomcat Admin Consoles of Team Y”
  • “Do what I mean” for IPv4/IPv6, incl. Default Address Selection

A B C

slide-26
SLIDE 26

Stories solved (2)

25.03.2015 26 1&1 Internet AG

  • Rules may become more static
  • Clients do have less (recognizable) rules: more auditable
  • At best, every client only has a single rule with all destination services
  • When endpoints change: change the rule, don’t create additional rules

A B C

slide-27
SLIDE 27

Images

25.03.2015 27 1&1 Internet AG

  • “Roadblock in Palestine” by Harry Pockets – Own work. Licensed under

CC BY-SA 3.0 via Wikimedia Commons https://commons.wikimedia.org/wiki/File:Roadblock_in_Palestine.jpg

slide-28
SLIDE 28

BACKUP

25.03.2015 28 1&1 Internet AG

slide-29
SLIDE 29

Firewall Management Data Model

25.03.2015 29 1&1 Internet AG

  • How does this work?
slide-30
SLIDE 30

Firewall Management Data Model

25.03.2015 30 1&1 Internet AG

  • How does this work?
slide-31
SLIDE 31

Services may be hosted on groups

25.03.2015 31 1&1 Internet AG

A B C D

slide-32
SLIDE 32

Services are not limited to a single cluster.

25.03.2015 32 1&1 Internet AG

A B C D

slide-33
SLIDE 33

Not yet implemented…

25.03.2015 33 1&1 Internet AG

  • Calculate & Request Network-ACLs
  • Graphical Audit
slide-34
SLIDE 34

Transformation of System Architecture to Firewall Rules

25.03.2015 34 1&1 Internet AG

Application Service

slide-35
SLIDE 35

Transformation of System Architecture to Firewall Rules

25.03.2015 35 1&1 Internet AG

slide-36
SLIDE 36

Transformation of System Architecture to Firewall Rules

25.03.2015 36 1&1 Internet AG

slide-37
SLIDE 37

Transformation of System Architecture to Firewall Rules

25.03.2015 37 1&1 Internet AG

slide-38
SLIDE 38

Transformation of System Architecture to Firewall Rules

25.03.2015 38 1&1 Internet AG

slide-39
SLIDE 39

Transformation of System Architecture to Firewall Rules

25.03.2015 39 1&1 Internet AG

iptables -I INPUT --src 192.0.2.34 --dst 192.0.2.97 --dport 8443 -p tcp -j ACCEPT iptables -I INPUT --src 192.0.2.34 --dst 192.0.2.56 --dport 8443 -p tcp -j ACCEPT iptables -I INPUT --src 192.0.2.34 --dst 192.0.2.2 --dport 8443 -p tcp -j ACCEPT iptables -I INPUT --src 192.0.2.38 --dst 192.0.2.97 --dport 8443 -p tcp -j ACCEPT iptables -I INPUT --src 192.0.2.38 --dst 192.0.2.56 --dport 8443 -p tcp -j ACCEPT iptables -I INPUT --src 192.0.2.38 --dst 192.0.2.2 --dport 8443 -p tcp -j ACCEPT iptables -I INPUT --src 192.0.2.45 --dst 192.0.2.97 --dport 8443 -p tcp -j ACCEPT iptables -I INPUT --src 192.0.2.45 --dst 192.0.2.56 --dport 8443 -p tcp -j ACCEPT iptables -I INPUT --src 192.0.2.45 --dst 192.0.2.2 --dport 8443 -p tcp -j ACCEPT