SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
Encrypt Your Volumes with Barbican
Agenda
• Introduction
• About OnRamp
• Why Encrypt?
• Key Managers
• How it Works
• Our Encryption Story
• Gotchas & Limitations
• Demo
• Q&A
Meet the Speaker
• Previously Built and Managed Lab
Environments for VMware
Certification Training (VCP5/6)
• Experience with OpenStack:
- Started with Icehouse on Ubuntu
(manually)
- Juno on Canonical MaaS + Juju
- Liberty on CentOS / RDO
- Newton on Platform9
• OpenStack Engineer for OnRamp
• Deployed Barbican and support for
Encrypted Volumes for our OpenStack
Based Public Cloud
Duncan Wannamaker
OpenStack Engineer
OnRamp
But, OpenStack is Far From Simple, Right?
Who Is OnRamp?
OnRamp is a HITRUST-certified data center services company specializing in
high security and compliant hybrid hosting.
OnRamp’s Virtual Private Cloud
■ Built on OpenStack®
■ HITRUST-certified
■ Control costs with capped maximum resource usage
■ Open-source APIs enable simple migrations and eliminate vendor lock-in
■ Hardened Linux and Windows Images
■ Retain full control of your private networks, virtual machines, and storage
Offers the ease-of-use of a public cloud, with the security of a private cloud.
Why Encrypt?
• Protect Data against Leaks
- Personal Health Information (PHI)
- Credit Card Payment Data (PCI)
- Intellectual Property
• Compliance Requirement
- HIPAA requires encryption for data at rest
and in-transit for PHI
- PCI also requires encryption for data at rest
and in-transit for cardholder data
- In shared hosting environments, each Tenant
must only have access to their own stuff
 Per-Tenant or Per-Volume encryption keys
facilitate this
Why Use a Key Manager?
• Security Best Practice
- You don’t leave keys in your car
- You shouldn’t leave your keys next to your encrypted data
• Compliance Requirement
- PCI-DSS Requirements:
 Store keys in the fewest possible locations
 Store secret and private keys used to encrypt/decrypt cardholder data
using a key encryption key at least as strong as the encryption key
itself
- HIPAA- HITRUST Requirements:
 Keys shall be stored separately from encrypted data
 Key manager systems should be physically protected by fewest
number of custodians necessary
What is Barbican?
Provides:
• ReST API for Secrets Management
• Pluggable Backends
- Simple Crypto
- PKCS#11 and KMIP (HSM)
• Integration with Nova, Cinder, and
Swift, Neutron, Heat, and many
other OS projects
• Integration with KeyStone for Auth
and RBAC
• Built to Scale
Does Not Provide:
• Graphical User Interface
• Key Splitting for Secure
Import/Export Plain Text Keys using
multiple Key Custodians
• Generation of X.509 Certificates
(Since Pike)
• Volume Encryption
What about Volume Encryption?
• LUKS - Linux Unified Key Setup
- Allows for multiple user keys or passwords per volume
 Master Key always stays the same
- Supports CPU Hardware Acceleration (it’s fast!)
- Uses CryptSetup and DM-CRYPT
 Decrypts full volume to a Local Block Device
 Protects iSCSI attached volumes
 Can also protect ephemeral storage if using LVM
• Queens = QEMU Native LUKS support
- QEMU 2.6 and LibVirt 2.2 introduce native LUKS support
Transparent Encryption in Nova and Cinder
Thanks to some fantastic work done by Johns Hopkins Applied
Physics Laboratory and others…
• Nova and Cinder Integration exists with Barbican
• Volume Decryption Happens on the Hypervisor instead of
within the Guest OS
- No Agent Required
- Works with Any Operating System
- Works with Bootable Volumes
- Protects Data at Rest and In-Transit to your hypervisor
- Every volume is protected by it’s own unique key
How it Works: Creating an Encrypted Volume
1. User Gets a token from Keystone
2. User Asks Cinder to create volume
(using token)
3. Cinder verifies the user token from
keystone
4. Cinder then asks Barbican for a key
5. Barbican checks the Cinder Token
against keystone
6. Barbican creates the secret and
returns secret HREF to Cinder
7. Cinder stores the returned secret
HREF into the volume metadata
How it Works: Mounting an Encrypted Volume
Nova Keystone Cinder Barbican
Fetch Secret
HREF from
Cinder
Validate
Request
Return Secret
HREF and
Attach
Volume
Receive
Secret HREF
Fetch Secret
from Barbican
Validate
Token
Validate
Token
Receive
User
Mount
Request
Validate
Request
Validate
Requestor
Return Secret
Mount
Volume using
Secret
1. Nova receives request to mount
volume with token
2. Nova Validates User Token
3. Nova Fetches the Secret HREF
from Cinder
4. Cinder Validates Nova Token
5. Cinder returns Secret HREF to
Nova
6. Nova Fetches Secret from
Barbican
7. Barbican Validates Nova Token
8. Barbican Returns Secret
9. Nova Mounts Volume using
Secret
OnRamp Encryption Story
• Followed Documentation
- Wait, these docs are terrible! 
 Thankfully, Barbican Devs on IRC are very helpful! 
• KeyStone:
- Added Endpoints to KeyStone
- Added Barbican Service User
- Added Creator Role
• Installed the Barbican-API:
- Configured Barbican’s database server
- Configured Barbican
- Barbican CLI Access Works!
OnRamp Encryption Story
• Cinder Integration Issues:
- Blank Encrypted Volumes were created successfully
- But they could not be created from an image
• Nova Integration Issues:
- Nova was unable to attach any encrypted volumes
- It wasn’t even trying to talk to Barbican
Issue 1: Key orders not getting to Barbican
cinder-api
Cloud-Hosted
cinder-volume
On-Premise
SSH VPN barbican
On-Premise
Key Orders
LAN
Encrypted
Volume
Cinder DB
Secret HREF: null
key request
for key 0000…
href = all zeros!
Mount
Failed
no key 0000…
Create
Volume
Mount Request
Issue 1 Fix: Key orders not getting to Barbican
cinder-api cinder-volume
forwarder
SSH VPN barbican
Key Order
LAN
Encrypted
Volume
Mount
Cinder DB
Secret HREF: valid
Key Order
Cloud-Hosted On-Premise On-Premise
Secret HREFSecret HREF
Create
Volume
Mount Request
valid href request secretreturn secret
Issue 2: Nova Not Talking to Barbican
• Nova error was mentioning a Fixed Key not being defined
• ConfKeyManager (Nova Default for Volume Encryption)
• Single fixed key for all volumes
• Used for testing to substitute in for a real key manager,
such as Barbican! Not for production.
• Setting the api_class in nova.conf would always use
ConfKeyManager and ignore the setting to use barbican
• Submitted Bug:
• https://bugs.launchpad.net/nova/+bug/1704875
• Fixed in Pike or newer!
• Manual Fix for older releases is to comment out lines 27-31
in nova/keymgr/__init__.py
Some Gotchas using Encrypted Volumes
• Live Migration does not work and is dangerous
- Volume mounts without decryption on new host which will cause
corruption if this is an active file system
- Fixed in Queens!
 Previous releases use symlinks on hypervisor
 New Method uses QEMU Native LUKS support
• Barbican Doesn’t Start after Reboot (CentOS Specific)
- RDO Packaging Issue
- Create /etc/tmpfiles.d/barbican.conf:
 d /var/run/barbican 0755 barbican barbican –
- Bug report submitted…
Some Limitations using Encrypted Volumes
• No mechanism to rotate volume encryption keys
- Manual process of creating a new volume and copying over the
contents
- LUKs supports multiple user keys, so the capability is there
• No UI for key management in horizon
- for securely exporting and importing split-keys
- for managing key ACL’s
- for managing key expiration and revocation
Tips for Running in Production
• Make sure your key manager and database are secured in a
locked cabinet with limited physical access
• Use a private barbican instance not accessible to tenants
• Automated database backups
• Use a highly available database cluster such as Galera
• Use multiple barbican-api nodes behind a load balancer
• Use SSL to protect key requests in-transit to hypervisors
Demo
Questions?
Barbican PoC Guide and Resources
• Step by step instructions in GitHub:
https://github.com/dwannamaker-onr/openstack-queens-barbican-guide
• Video walkthrough available:
- YouTube Search: “Queens Barbican PoC”
 Installing Packstack for Queens (Part 1)
 Installing the Barbican-API (Part 2)
• IRC Channel:
- #openstack-barbican on FreeNode
Thank you! Stay In Touch:
duncan@randomhack.com
@randomhack
888.667.2660
sales@onramp.com
www.onr.com
www.randomhack.com

Weitere ähnliche Inhalte

Was ist angesagt?

Blazing Performance with Flame Graphs
Blazing Performance with Flame GraphsBlazing Performance with Flame Graphs
Blazing Performance with Flame GraphsBrendan Gregg
 
OSSプロジェクトへのコントリビューション はじめの一歩を踏み出そう!(Open Source Conference 2022 Online/Spring...
OSSプロジェクトへのコントリビューション はじめの一歩を踏み出そう!(Open Source Conference 2022 Online/Spring...OSSプロジェクトへのコントリビューション はじめの一歩を踏み出そう!(Open Source Conference 2022 Online/Spring...
OSSプロジェクトへのコントリビューション はじめの一歩を踏み出そう!(Open Source Conference 2022 Online/Spring...NTT DATA Technology & Innovation
 
OpenGurukul : Database : PostgreSQL
OpenGurukul : Database : PostgreSQLOpenGurukul : Database : PostgreSQL
OpenGurukul : Database : PostgreSQLOpen Gurukul
 
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションアーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションMasahiko Sawada
 
How Netflix Tunes EC2 Instances for Performance
How Netflix Tunes EC2 Instances for PerformanceHow Netflix Tunes EC2 Instances for Performance
How Netflix Tunes EC2 Instances for PerformanceBrendan Gregg
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門Kohei Tokunaga
 
[Postgre sql9.4新機能]レプリケーション・スロットの活用
[Postgre sql9.4新機能]レプリケーション・スロットの活用[Postgre sql9.4新機能]レプリケーション・スロットの活用
[Postgre sql9.4新機能]レプリケーション・スロットの活用Kosuke Kida
 
Introduction into Icinga
Introduction into IcingaIntroduction into Icinga
Introduction into IcingaIcinga
 
マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法Takuya ASADA
 
Spannerをrestでつかってみた
SpannerをrestでつかってみたSpannerをrestでつかってみた
SpannerをrestでつかってみたHayato Ito
 
MySQL Performance Schema in 20 Minutes
 MySQL Performance Schema in 20 Minutes MySQL Performance Schema in 20 Minutes
MySQL Performance Schema in 20 MinutesSveta Smirnova
 
Linux SMEP bypass techniques
Linux SMEP bypass techniquesLinux SMEP bypass techniques
Linux SMEP bypass techniquesVitaly Nikolenko
 
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術Unity Technologies Japan K.K.
 
【Zabbix2.0】snmpttによるトラップメッセージの編集 #Zabbix #自宅ラック勉強会
【Zabbix2.0】snmpttによるトラップメッセージの編集 #Zabbix #自宅ラック勉強会【Zabbix2.0】snmpttによるトラップメッセージの編集 #Zabbix #自宅ラック勉強会
【Zabbix2.0】snmpttによるトラップメッセージの編集 #Zabbix #自宅ラック勉強会真乙 九龍
 
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
KubernetesでRedisを使うときの選択肢
KubernetesでRedisを使うときの選択肢KubernetesでRedisを使うときの選択肢
KubernetesでRedisを使うときの選択肢Naoyuki Yamada
 
AngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション
AngularとSpring Bootで作るSPA + RESTful Web ServiceアプリケーションAngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション
AngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーションssuser070fa9
 

Was ist angesagt? (20)

Automated master failover
Automated master failoverAutomated master failover
Automated master failover
 
GitLab から GitLab に移行したときの思い出
GitLab から GitLab に移行したときの思い出GitLab から GitLab に移行したときの思い出
GitLab から GitLab に移行したときの思い出
 
Blazing Performance with Flame Graphs
Blazing Performance with Flame GraphsBlazing Performance with Flame Graphs
Blazing Performance with Flame Graphs
 
OSSプロジェクトへのコントリビューション はじめの一歩を踏み出そう!(Open Source Conference 2022 Online/Spring...
OSSプロジェクトへのコントリビューション はじめの一歩を踏み出そう!(Open Source Conference 2022 Online/Spring...OSSプロジェクトへのコントリビューション はじめの一歩を踏み出そう!(Open Source Conference 2022 Online/Spring...
OSSプロジェクトへのコントリビューション はじめの一歩を踏み出そう!(Open Source Conference 2022 Online/Spring...
 
OpenGurukul : Database : PostgreSQL
OpenGurukul : Database : PostgreSQLOpenGurukul : Database : PostgreSQL
OpenGurukul : Database : PostgreSQL
 
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションアーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーション
 
How Netflix Tunes EC2 Instances for Performance
How Netflix Tunes EC2 Instances for PerformanceHow Netflix Tunes EC2 Instances for Performance
How Netflix Tunes EC2 Instances for Performance
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
 
[Postgre sql9.4新機能]レプリケーション・スロットの活用
[Postgre sql9.4新機能]レプリケーション・スロットの活用[Postgre sql9.4新機能]レプリケーション・スロットの活用
[Postgre sql9.4新機能]レプリケーション・スロットの活用
 
Introduction into Icinga
Introduction into IcingaIntroduction into Icinga
Introduction into Icinga
 
マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法
 
Spannerをrestでつかってみた
SpannerをrestでつかってみたSpannerをrestでつかってみた
Spannerをrestでつかってみた
 
MySQL Performance Schema in 20 Minutes
 MySQL Performance Schema in 20 Minutes MySQL Performance Schema in 20 Minutes
MySQL Performance Schema in 20 Minutes
 
Linux SMEP bypass techniques
Linux SMEP bypass techniquesLinux SMEP bypass techniques
Linux SMEP bypass techniques
 
rtnetlink
rtnetlinkrtnetlink
rtnetlink
 
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
 
【Zabbix2.0】snmpttによるトラップメッセージの編集 #Zabbix #自宅ラック勉強会
【Zabbix2.0】snmpttによるトラップメッセージの編集 #Zabbix #自宅ラック勉強会【Zabbix2.0】snmpttによるトラップメッセージの編集 #Zabbix #自宅ラック勉強会
【Zabbix2.0】snmpttによるトラップメッセージの編集 #Zabbix #自宅ラック勉強会
 
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
KubernetesでRedisを使うときの選択肢
KubernetesでRedisを使うときの選択肢KubernetesでRedisを使うときの選択肢
KubernetesでRedisを使うときの選択肢
 
AngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション
AngularとSpring Bootで作るSPA + RESTful Web ServiceアプリケーションAngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション
AngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション
 

Ähnlich wie Encrypt your volumes with barbican open stack 2018

What's Coming In CloudStack 4.18
What's Coming In CloudStack 4.18What's Coming In CloudStack 4.18
What's Coming In CloudStack 4.18ShapeBlue
 
ITB2019 Multi-language / multi-OS communication using RabbitMQ - Wil de Bruin
ITB2019 Multi-language / multi-OS communication using RabbitMQ - Wil de BruinITB2019 Multi-language / multi-OS communication using RabbitMQ - Wil de Bruin
ITB2019 Multi-language / multi-OS communication using RabbitMQ - Wil de BruinOrtus Solutions, Corp
 
Multi-language/multi-OS communication using RabbitMQ
Multi-language/multi-OS communication using RabbitMQMulti-language/multi-OS communication using RabbitMQ
Multi-language/multi-OS communication using RabbitMQWil de Bruin
 
Webinar - DreamObjects/Ceph Case Study
Webinar - DreamObjects/Ceph Case StudyWebinar - DreamObjects/Ceph Case Study
Webinar - DreamObjects/Ceph Case StudyCeph Community
 
My complicated WordPress site
My complicated WordPress siteMy complicated WordPress site
My complicated WordPress siteMarko Heijnen
 
DEF CON 27 - ORANGE TSAI and MEH CHANG - infiltrating corporate intranet like...
DEF CON 27 - ORANGE TSAI and MEH CHANG - infiltrating corporate intranet like...DEF CON 27 - ORANGE TSAI and MEH CHANG - infiltrating corporate intranet like...
DEF CON 27 - ORANGE TSAI and MEH CHANG - infiltrating corporate intranet like...Felipe Prado
 
Intro to OpenStack Cinder and IceHouse Bound!
Intro to OpenStack Cinder and IceHouse Bound!Intro to OpenStack Cinder and IceHouse Bound!
Intro to OpenStack Cinder and IceHouse Bound!thingee
 
Integrating OpenStack To Existing Infrastructure
Integrating OpenStack To Existing InfrastructureIntegrating OpenStack To Existing Infrastructure
Integrating OpenStack To Existing InfrastructureHui Cheng
 
Secure Your Containers: What Network Admins Should Know When Moving Into Prod...
Secure Your Containers: What Network Admins Should Know When Moving Into Prod...Secure Your Containers: What Network Admins Should Know When Moving Into Prod...
Secure Your Containers: What Network Admins Should Know When Moving Into Prod...Cynthia Thomas
 
Why Kubernetes as a container orchestrator is a right choice for running spar...
Why Kubernetes as a container orchestrator is a right choice for running spar...Why Kubernetes as a container orchestrator is a right choice for running spar...
Why Kubernetes as a container orchestrator is a right choice for running spar...DataWorks Summit
 
Climb Technical Overview
Climb Technical OverviewClimb Technical Overview
Climb Technical OverviewArif Ali
 
Gordonh0945deepdive openstackcompute-140417174059-phpapp02
Gordonh0945deepdive openstackcompute-140417174059-phpapp02Gordonh0945deepdive openstackcompute-140417174059-phpapp02
Gordonh0945deepdive openstackcompute-140417174059-phpapp02Công TÔ
 
Cloud Platform Symantec Meetup Nov 2014
Cloud Platform Symantec Meetup Nov 2014Cloud Platform Symantec Meetup Nov 2014
Cloud Platform Symantec Meetup Nov 2014Miguel Zuniga
 
Net Devops Overview
Net Devops OverviewNet Devops Overview
Net Devops OverviewJoel W. King
 
All the troubles you get into when setting up a production ready Kubernetes c...
All the troubles you get into when setting up a production ready Kubernetes c...All the troubles you get into when setting up a production ready Kubernetes c...
All the troubles you get into when setting up a production ready Kubernetes c...Jimmy Lu
 
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack NetworkingONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networkingmarkmcclain
 
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Mandi Walls
 

Ähnlich wie Encrypt your volumes with barbican open stack 2018 (20)

OpenStack and Windows
OpenStack and WindowsOpenStack and Windows
OpenStack and Windows
 
What's Coming In CloudStack 4.18
What's Coming In CloudStack 4.18What's Coming In CloudStack 4.18
What's Coming In CloudStack 4.18
 
ITB2019 Multi-language / multi-OS communication using RabbitMQ - Wil de Bruin
ITB2019 Multi-language / multi-OS communication using RabbitMQ - Wil de BruinITB2019 Multi-language / multi-OS communication using RabbitMQ - Wil de Bruin
ITB2019 Multi-language / multi-OS communication using RabbitMQ - Wil de Bruin
 
Multi-language/multi-OS communication using RabbitMQ
Multi-language/multi-OS communication using RabbitMQMulti-language/multi-OS communication using RabbitMQ
Multi-language/multi-OS communication using RabbitMQ
 
Neutron scaling
Neutron scalingNeutron scaling
Neutron scaling
 
Webinar - DreamObjects/Ceph Case Study
Webinar - DreamObjects/Ceph Case StudyWebinar - DreamObjects/Ceph Case Study
Webinar - DreamObjects/Ceph Case Study
 
My complicated WordPress site
My complicated WordPress siteMy complicated WordPress site
My complicated WordPress site
 
Ansible E2E Testing
Ansible E2E TestingAnsible E2E Testing
Ansible E2E Testing
 
DEF CON 27 - ORANGE TSAI and MEH CHANG - infiltrating corporate intranet like...
DEF CON 27 - ORANGE TSAI and MEH CHANG - infiltrating corporate intranet like...DEF CON 27 - ORANGE TSAI and MEH CHANG - infiltrating corporate intranet like...
DEF CON 27 - ORANGE TSAI and MEH CHANG - infiltrating corporate intranet like...
 
Intro to OpenStack Cinder and IceHouse Bound!
Intro to OpenStack Cinder and IceHouse Bound!Intro to OpenStack Cinder and IceHouse Bound!
Intro to OpenStack Cinder and IceHouse Bound!
 
Integrating OpenStack To Existing Infrastructure
Integrating OpenStack To Existing InfrastructureIntegrating OpenStack To Existing Infrastructure
Integrating OpenStack To Existing Infrastructure
 
Secure Your Containers: What Network Admins Should Know When Moving Into Prod...
Secure Your Containers: What Network Admins Should Know When Moving Into Prod...Secure Your Containers: What Network Admins Should Know When Moving Into Prod...
Secure Your Containers: What Network Admins Should Know When Moving Into Prod...
 
Why Kubernetes as a container orchestrator is a right choice for running spar...
Why Kubernetes as a container orchestrator is a right choice for running spar...Why Kubernetes as a container orchestrator is a right choice for running spar...
Why Kubernetes as a container orchestrator is a right choice for running spar...
 
Climb Technical Overview
Climb Technical OverviewClimb Technical Overview
Climb Technical Overview
 
Gordonh0945deepdive openstackcompute-140417174059-phpapp02
Gordonh0945deepdive openstackcompute-140417174059-phpapp02Gordonh0945deepdive openstackcompute-140417174059-phpapp02
Gordonh0945deepdive openstackcompute-140417174059-phpapp02
 
Cloud Platform Symantec Meetup Nov 2014
Cloud Platform Symantec Meetup Nov 2014Cloud Platform Symantec Meetup Nov 2014
Cloud Platform Symantec Meetup Nov 2014
 
Net Devops Overview
Net Devops OverviewNet Devops Overview
Net Devops Overview
 
All the troubles you get into when setting up a production ready Kubernetes c...
All the troubles you get into when setting up a production ready Kubernetes c...All the troubles you get into when setting up a production ready Kubernetes c...
All the troubles you get into when setting up a production ready Kubernetes c...
 
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack NetworkingONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
 
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
 

Kürzlich hochgeladen

So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...Karmanjay Verma
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Français Patch Tuesday - Avril
Français Patch Tuesday - AvrilFrançais Patch Tuesday - Avril
Français Patch Tuesday - AvrilIvanti
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...amber724300
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 

Kürzlich hochgeladen (20)

So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Français Patch Tuesday - Avril
Français Patch Tuesday - AvrilFrançais Patch Tuesday - Avril
Français Patch Tuesday - Avril
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 

Encrypt your volumes with barbican open stack 2018

  • 1. Encrypt Your Volumes with Barbican
  • 2. Agenda • Introduction • About OnRamp • Why Encrypt? • Key Managers • How it Works • Our Encryption Story • Gotchas & Limitations • Demo • Q&A
  • 3. Meet the Speaker • Previously Built and Managed Lab Environments for VMware Certification Training (VCP5/6) • Experience with OpenStack: - Started with Icehouse on Ubuntu (manually) - Juno on Canonical MaaS + Juju - Liberty on CentOS / RDO - Newton on Platform9 • OpenStack Engineer for OnRamp • Deployed Barbican and support for Encrypted Volumes for our OpenStack Based Public Cloud Duncan Wannamaker OpenStack Engineer OnRamp
  • 4.
  • 5. But, OpenStack is Far From Simple, Right?
  • 6. Who Is OnRamp? OnRamp is a HITRUST-certified data center services company specializing in high security and compliant hybrid hosting.
  • 7. OnRamp’s Virtual Private Cloud ■ Built on OpenStack® ■ HITRUST-certified ■ Control costs with capped maximum resource usage ■ Open-source APIs enable simple migrations and eliminate vendor lock-in ■ Hardened Linux and Windows Images ■ Retain full control of your private networks, virtual machines, and storage Offers the ease-of-use of a public cloud, with the security of a private cloud.
  • 8. Why Encrypt? • Protect Data against Leaks - Personal Health Information (PHI) - Credit Card Payment Data (PCI) - Intellectual Property • Compliance Requirement - HIPAA requires encryption for data at rest and in-transit for PHI - PCI also requires encryption for data at rest and in-transit for cardholder data - In shared hosting environments, each Tenant must only have access to their own stuff  Per-Tenant or Per-Volume encryption keys facilitate this
  • 9. Why Use a Key Manager? • Security Best Practice - You don’t leave keys in your car - You shouldn’t leave your keys next to your encrypted data • Compliance Requirement - PCI-DSS Requirements:  Store keys in the fewest possible locations  Store secret and private keys used to encrypt/decrypt cardholder data using a key encryption key at least as strong as the encryption key itself - HIPAA- HITRUST Requirements:  Keys shall be stored separately from encrypted data  Key manager systems should be physically protected by fewest number of custodians necessary
  • 10. What is Barbican? Provides: • ReST API for Secrets Management • Pluggable Backends - Simple Crypto - PKCS#11 and KMIP (HSM) • Integration with Nova, Cinder, and Swift, Neutron, Heat, and many other OS projects • Integration with KeyStone for Auth and RBAC • Built to Scale Does Not Provide: • Graphical User Interface • Key Splitting for Secure Import/Export Plain Text Keys using multiple Key Custodians • Generation of X.509 Certificates (Since Pike) • Volume Encryption
  • 11. What about Volume Encryption? • LUKS - Linux Unified Key Setup - Allows for multiple user keys or passwords per volume  Master Key always stays the same - Supports CPU Hardware Acceleration (it’s fast!) - Uses CryptSetup and DM-CRYPT  Decrypts full volume to a Local Block Device  Protects iSCSI attached volumes  Can also protect ephemeral storage if using LVM • Queens = QEMU Native LUKS support - QEMU 2.6 and LibVirt 2.2 introduce native LUKS support
  • 12. Transparent Encryption in Nova and Cinder Thanks to some fantastic work done by Johns Hopkins Applied Physics Laboratory and others… • Nova and Cinder Integration exists with Barbican • Volume Decryption Happens on the Hypervisor instead of within the Guest OS - No Agent Required - Works with Any Operating System - Works with Bootable Volumes - Protects Data at Rest and In-Transit to your hypervisor - Every volume is protected by it’s own unique key
  • 13. How it Works: Creating an Encrypted Volume 1. User Gets a token from Keystone 2. User Asks Cinder to create volume (using token) 3. Cinder verifies the user token from keystone 4. Cinder then asks Barbican for a key 5. Barbican checks the Cinder Token against keystone 6. Barbican creates the secret and returns secret HREF to Cinder 7. Cinder stores the returned secret HREF into the volume metadata
  • 14. How it Works: Mounting an Encrypted Volume Nova Keystone Cinder Barbican Fetch Secret HREF from Cinder Validate Request Return Secret HREF and Attach Volume Receive Secret HREF Fetch Secret from Barbican Validate Token Validate Token Receive User Mount Request Validate Request Validate Requestor Return Secret Mount Volume using Secret 1. Nova receives request to mount volume with token 2. Nova Validates User Token 3. Nova Fetches the Secret HREF from Cinder 4. Cinder Validates Nova Token 5. Cinder returns Secret HREF to Nova 6. Nova Fetches Secret from Barbican 7. Barbican Validates Nova Token 8. Barbican Returns Secret 9. Nova Mounts Volume using Secret
  • 15. OnRamp Encryption Story • Followed Documentation - Wait, these docs are terrible!   Thankfully, Barbican Devs on IRC are very helpful!  • KeyStone: - Added Endpoints to KeyStone - Added Barbican Service User - Added Creator Role • Installed the Barbican-API: - Configured Barbican’s database server - Configured Barbican - Barbican CLI Access Works!
  • 16. OnRamp Encryption Story • Cinder Integration Issues: - Blank Encrypted Volumes were created successfully - But they could not be created from an image • Nova Integration Issues: - Nova was unable to attach any encrypted volumes - It wasn’t even trying to talk to Barbican
  • 17. Issue 1: Key orders not getting to Barbican cinder-api Cloud-Hosted cinder-volume On-Premise SSH VPN barbican On-Premise Key Orders LAN Encrypted Volume Cinder DB Secret HREF: null key request for key 0000… href = all zeros! Mount Failed no key 0000… Create Volume Mount Request
  • 18. Issue 1 Fix: Key orders not getting to Barbican cinder-api cinder-volume forwarder SSH VPN barbican Key Order LAN Encrypted Volume Mount Cinder DB Secret HREF: valid Key Order Cloud-Hosted On-Premise On-Premise Secret HREFSecret HREF Create Volume Mount Request valid href request secretreturn secret
  • 19. Issue 2: Nova Not Talking to Barbican • Nova error was mentioning a Fixed Key not being defined • ConfKeyManager (Nova Default for Volume Encryption) • Single fixed key for all volumes • Used for testing to substitute in for a real key manager, such as Barbican! Not for production. • Setting the api_class in nova.conf would always use ConfKeyManager and ignore the setting to use barbican • Submitted Bug: • https://bugs.launchpad.net/nova/+bug/1704875 • Fixed in Pike or newer! • Manual Fix for older releases is to comment out lines 27-31 in nova/keymgr/__init__.py
  • 20. Some Gotchas using Encrypted Volumes • Live Migration does not work and is dangerous - Volume mounts without decryption on new host which will cause corruption if this is an active file system - Fixed in Queens!  Previous releases use symlinks on hypervisor  New Method uses QEMU Native LUKS support • Barbican Doesn’t Start after Reboot (CentOS Specific) - RDO Packaging Issue - Create /etc/tmpfiles.d/barbican.conf:  d /var/run/barbican 0755 barbican barbican – - Bug report submitted…
  • 21. Some Limitations using Encrypted Volumes • No mechanism to rotate volume encryption keys - Manual process of creating a new volume and copying over the contents - LUKs supports multiple user keys, so the capability is there • No UI for key management in horizon - for securely exporting and importing split-keys - for managing key ACL’s - for managing key expiration and revocation
  • 22. Tips for Running in Production • Make sure your key manager and database are secured in a locked cabinet with limited physical access • Use a private barbican instance not accessible to tenants • Automated database backups • Use a highly available database cluster such as Galera • Use multiple barbican-api nodes behind a load balancer • Use SSL to protect key requests in-transit to hypervisors
  • 23. Demo
  • 25. Barbican PoC Guide and Resources • Step by step instructions in GitHub: https://github.com/dwannamaker-onr/openstack-queens-barbican-guide • Video walkthrough available: - YouTube Search: “Queens Barbican PoC”  Installing Packstack for Queens (Part 1)  Installing the Barbican-API (Part 2) • IRC Channel: - #openstack-barbican on FreeNode
  • 26. Thank you! Stay In Touch: duncan@randomhack.com @randomhack 888.667.2660 sales@onramp.com www.onr.com www.randomhack.com

Hinweis der Redaktion

  1. My previous experience was working for a global training provider where I responsible for developing lab infrastructure for training courses. A lot of my early IaaS experience comes from the operations and automation side of deploying vApps in a vCloud Director environment. OpenStack was one of many open source alternatives to vCloud and I was involved in several different Proof of Concept projects to utilize the stack where possible to save licensing costs and prevent lock-in.
  2. My main design philosophy.  Having worked on small, highly diverse operations teams over the years, this philosophy always produces products with fewer bugs, which is easier to diagnose when there is an issue and easier to understand documentation and add features.   Only caveat, don’t paint yourself into a corner trying to make things too simple.
  3. It’s not as bad as this picture makes it seem. OpenStack is actually just a microservice based virtualization manager built for scale.   You only have to deploy the services you need.   This still presents a challenge for small teams to operate efficiently at scale.  Hence the need for service providers like OnRamp.
  4. OnRamp is a managed service provider headquartered out of Austin, Texas. We have datacenters in Austin as well as on the East Coast in Raleigh, North Carolina. All of our datacenters are world class facilities with fully redundant network and power paths. We offer managed hosting and colocation services with a focus on security and compliance. We also have acquired HIPPA and HiTRUST certification for our security practices.
  5. Last year we released our Virtual Private Cloud product which is built on OpenStack. In addition to using the OpenStack API, we provide our customers pre-hardened Linux and Windows images, and provide usage-based billing to allow for burstable cloud workloads.
  6. So, why should you encrypt? * Protect Against Leaks - PHI - PCI - IP Compliance Requirement: - HIPPA requires PHI data to be encrypted at rest and in-transit - Credit card data also falls under strict guidelines for the handling of credit card data. - Both: Shared environments must be kept private
  7. Perhaps a better question is: What is a key manager? Key managers are basically the equivalent of password managers you might use with your web browser. The only difference is instead of user passwords, they store service passwords or keys.
  8. Barbican is an Open Source secret storage service written specifically for OpenStack. It was designed by the developers at RackSpace and was originally introduced with the Icehouse release.
  9. Thanks to some fantastic work done by Johns Hopkins Applied Physics Laboratory and others…