holistic security for openstack clouds

53
Holistic Security for OpenStack Clouds Major Hayden Principal Architect, Rackspace @majorhayden Photo credit: bastiend (Flickr)

Upload: major-hayden

Post on 15-Apr-2017

377 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Holistic Security for OpenStack Clouds

Holistic Security for OpenStack Clouds

Major HaydenPrincipal Architect, Rackspace

@majorhayden

Photo credit: bastiend (Flickr)

Page 4: Holistic Security for OpenStack Clouds

Securing complex systems createsmore challenges

Page 5: Holistic Security for OpenStack Clouds

Securing OpenStack can feel liketaking a trip to the Upside Down.

Page 6: Holistic Security for OpenStack Clouds

It doesn’t have to be that way(even with something as complex as OpenStack)

Image credit: Pixabay

Page 7: Holistic Security for OpenStack Clouds

The key istaking the right approach to secure a complex system.

Page 8: Holistic Security for OpenStack Clouds

Major HaydenPrincipal Architect

● At Rackspace since 2006

● Working on OpenStack since 2012

● Focused on information security for Rackspace Private Cloud

● Fedora Linux contributor; Fedora Security Team and Server Working Group member

● Has a terrible domain name purchase habit(please, no ideas for domain names today)

Page 9: Holistic Security for OpenStack Clouds

Holisticcharacterized by comprehension of the

parts of something as intimately interconnected and explicable only by

reference to the whole

-- Oxford English Dictionary

Page 10: Holistic Security for OpenStack Clouds

The holistic approach for humans considers a person to be made of a body, a mind, and a spirit.

Image credit: Pixabay

Page 11: Holistic Security for OpenStack Clouds

The holistic approach for OpenStack considersa cloud to be made of servers, software, and a business goal.

Page 12: Holistic Security for OpenStack Clouds

A holistic approach to security involves people, processes, and technologies working in tandem.

Page 13: Holistic Security for OpenStack Clouds

“The whole is greaterthan the sum of its parts,especially in the case of OpenStack.”

-- (partially) Aristotle

Image credit: Wikipedia

Page 14: Holistic Security for OpenStack Clouds

How does this apply to securing an OpenStack cloud?

Let’s do a quick security refresher.

Page 15: Holistic Security for OpenStack Clouds

Assume that attackerswill get inside eventually.

Image credit: Pixabay

Page 16: Holistic Security for OpenStack Clouds

Attackers are on offense.They can be wrong many times.

Defenders can only be wrong once for a breach to occur.

Page 17: Holistic Security for OpenStack Clouds

Securing only the outer perimeteris not sufficient.

Page 18: Holistic Security for OpenStack Clouds

We must secure our OpenStack cloud.We need to go deeper.

Page 19: Holistic Security for OpenStack Clouds

We just bought an expensive firewall for the perimeter. Isn’t that enough?

Page 20: Holistic Security for OpenStack Clouds

(no caption necessary)

Page 21: Holistic Security for OpenStack Clouds

Build small security improvementsat multiple layers.*

* This is the cornerstone of defense-in-depth.

Page 22: Holistic Security for OpenStack Clouds

Individually, these changes may not seem to have much value.

All of these changes create a strong, valuable security strategy when they are added together.

Page 23: Holistic Security for OpenStack Clouds

Let’s get to the good stuff.

Image credit: Pexels

Page 24: Holistic Security for OpenStack Clouds

Work from the outside in(just like you would at a fancy dinner)

Image credit: Wikipedia

Page 25: Holistic Security for OpenStack Clouds

Four layersOuter perimeter

Control and data planes

Control plane deep dive:OpenStack services and backend services

OpenStack services deep dive

Image credit: imageme (Flickr)

Page 26: Holistic Security for OpenStack Clouds

The outer perimeter

Image credit: Pixabay

Page 27: Holistic Security for OpenStack Clouds

OUTER PERIMETER SECURITY GOAL:Convince your attackers that it’s easier to attack someone else’s cloud

Page 28: Holistic Security for OpenStack Clouds

Key concepts

Make it expensive for attackers to breach your perimeter defense

When they do make it through, ensure that you know about it immediately

Perimeters usually have openings on the outside and inside -- secure both of them

Page 29: Holistic Security for OpenStack Clouds

Tactical objectives

Require a VPN for access from external networks

Segregate internal networks using a firewall or an internally-facing VPN

Monitor all logins (successful and unsuccessful) for unusual activity

Track bandwidth usage trends using netflow data

Page 30: Holistic Security for OpenStack Clouds

Secure the perimeter

VPN

Internet Corporate network

Firewall

Log collector Alert system

Netflow collector

Auth system

Page 31: Holistic Security for OpenStack Clouds

Control and data planes

Image credit: Pixabay

Page 32: Holistic Security for OpenStack Clouds

Control and data plane

Control planekeystone, nova, glance,

cinder, neutron, horizon, rabbitmq, mysql,

memcached

Data planeHypervisors and

tenant-built items (VMs, containers, networks,

storage)

Page 33: Holistic Security for OpenStack Clouds

CONTROL/DATA PLANES SECURITY GOAL:Keep the inner workingsof your OpenStack cloud separated fromtenant infrastructure

Page 34: Holistic Security for OpenStack Clouds

Key concepts

Tenant infrastructure should have extremely limited access to the control plane, and vice versa

A misconfigured tenant VM could open a wide hole in your secure network

Protect your cloud from VM exit exploits that allow attackers to gain hypervisor access

Page 35: Holistic Security for OpenStack Clouds

Tactical objectives

Separate control plane, hypervisors and tenant infrastructure with VLANs and strict firewall rules (and monitor dropped packets)

Use SELinux or AppArmor on hypervisors to reduce the impact of VM and container exit exploits

Page 36: Holistic Security for OpenStack Clouds

Hypervisor

Linux Security Module refresher

Three popular implementations: SELinux, AppArmor, and TOMOYO

sVirt (in libvirt) ensures that all processes are labeled properly (SELinux) or have profiles configured (AppArmor)

VM exit exploits are confined in most situations

Tenant VM

Storage Network

Linux Security Module

Page 37: Holistic Security for OpenStack Clouds

Do not disableSELinux or AppArmoron your hypervisors.

(Seriously. Leave it enabled.)

Page 38: Holistic Security for OpenStack Clouds

Control plane deep dive:OpenStack and backend services

Image credit: Wikipedia

Page 39: Holistic Security for OpenStack Clouds

CONTROL PLANE SECURITY GOAL:Heavily restrict lateral movement and restrict access to the “crown jewels”

“crown jewels” are the databases and message queuesin your OpenStack cloud

Page 40: Holistic Security for OpenStack Clouds

Control plane deep dive

OpenStack serviceskeystone, nova, glance,

cinder, neutron, horizon

Backend servicesmysql, rabbitmq,

memcached, syslog

The “crown jewels” are hereThe map to the “crown jewels” is here

Page 41: Holistic Security for OpenStack Clouds

Key concepts

Allow the least amount of access possible from the OpenStack services to backend services

Further restrict access to specific ports, sources, and destinations

Deploy services into containers to apply fine-tuned network and process restrictions

Page 42: Holistic Security for OpenStack Clouds

Tactical objectives

Use a load balancer or firewall to create a “choke point” between OpenStack and backend services

Monitor messaging and database performance closely to look for anomalies or unauthorized access

Use unique credentials for each MySQL database and RabbitMQ virtual host

Page 44: Holistic Security for OpenStack Clouds

OPENSTACK SERVICES SECURITY GOAL:Know what valid communication looks like and alert oneverything else

Page 45: Holistic Security for OpenStack Clouds

OpenStack has many (predictable) interactions

Page 46: Holistic Security for OpenStack Clouds

Key concepts

OpenStack services are heavily interconnected, but the connections are predictable

Limit access between OpenStack services and monitor any invalid questions

Page 47: Holistic Security for OpenStack Clouds

Tactical objectives

Use iptables rules to limit access between OpenStack services; alert on any invalid connections

Give each service a different keystone service account (with different credentials)

Monitor closely for high bandwidth usage and high connection counts

Page 48: Holistic Security for OpenStack Clouds

Let’s wrap up

Page 49: Holistic Security for OpenStack Clouds

Analyze.Isolate.Monitor.Repeat.

Page 50: Holistic Security for OpenStack Clouds

These small security changesadd up to a strong defense

Image credit: Wikipedia

Page 51: Holistic Security for OpenStack Clouds

Try OpenStack-Ansible

OpenStack-Ansible deploys enterprise-grade OpenStack clouds using Ansible.

Security and reliability are two of the core priorities for the project. Most of the security changes in this talk are already implemented.

Learn more: http://bit.ly/openstack-ansible

Page 52: Holistic Security for OpenStack Clouds

RACKSPACE PRIVATE CLOUDPOWERED BY OPENSTACK®

Learn more about ourproven operational expertise,

industry-leading reliability,and OpenStack Everywhere.

Join us at the Rackspace booth (A22)in the OpenStack Marketplace.

RACKSPACE INVENTED OPENSTACK® – NOW WE'RE PERFECTING IT

Page 53: Holistic Security for OpenStack Clouds

Thank you!Major Hayden

@[email protected]

Photo credit: bastiend (Flickr)