SlideShare a Scribd company logo
1 of 49
Don’t Mind the Gap
Doing DevOps in an Air-gapped World
Galen Emery
Federal Solutions Architect
3/8/2017
Who am I?
I work with the Federal Government and
Integrators
DoD, Civilian, or IC? Yes.
I help users understand how to build and
structure their infrastructure (using Chef) to
solve their problems
Former Windows Server Admin
Been with Chef since March 2014
Born and raised in Seattle (Nathen, you’re
wrong about Seattle crab)
What we cover
What is “air-gapped”?
What issues do we encounter?
Assumptions
How to solve it (technical)
How to solve it (process)
What about … ?
Food for Thought
What is air-gapped?
air-gapped
adjective
(of a computer) having no direct
connection to the Internet or to any
other computer that is connected to
the Internet, for security reasons.
"a USB drive or other hardware
approach would be required to
infect the air-gapped machine"
What about mitm?
• Corporate man-in-the-middle
• Terminates SSL sessions and re-initiates
• Often includes packet inspection
• Requires you to trust its generated certificates
• May still include a firewall blocking access to sites
Maybe its just a firewall
• Restricts access to:
• Github or gist.github.com
• slack
• Pastebin
• Rubygems.org / some other artifact repository
• etc
No restrictions?
• Congratulations!
• You might still have a
firewall/proxy, its just permissive
• Do you trust those systems will
be up when you need them?
Issues
Getting stuff into production
• How do we “cross the gap”?
• How do we distribute it?
• How do we ensure its integrity?
Process?!
You want to talk about PROCESS? You kidding me?!
I just hope we can make one change!
Velocity
How do we achieve velocity if we burn a DVD for every change?
Or if a proxy is inspecting all of our packets, every time we download a
package?
Okay, I’m not air-gapped but…
• I have a firewall between my systems and the internet
• I have a proxy that inspects all traffic and slows me down
• I don’t have {level of access necessary} to make changes
• Tool {X} does not understand authenticating proxies
Ground Rules
You know that I know that you know…
• How you get code into your
high-side environment
Everything is code
• If its source code, it goes into SCM
• If it is an artifact, it goes into artifact store, and has a checksum
• We can (and do) write tests
• We build a pipeline
Solution (High-Level)
Go from Low to High
Assume you don’t have internet
• Even if you do
• Build this into your pipeline
• Test this on the low side
• Your systems should NOT assume internet access
• Most tooling by default assumes it does
Do this work on the low-side
Build your pipeline in a way that removes internet access for your systems,
they must grab their code and artifacts locally
If you can build your infrastructure without internet access in Dev, you can
absolutely do it in Prod
Protect the Data, not the Infra
The data is sensitive, not the infrastructure itself. Keep the data in the high-
side, but ensure that you build your infrastructure with the same code in Dev
and Prod
Workstation
This is your “loading dock” for the rest of the infrastructure
Everything comes through here
It needs:
• A way to serve files (directly or indirectly)
• A way to create artifacts (zip, tar, etc)
• built programmatically
Workstation
Use the workstation to:
• Stand up your artifact repo
• Stand up your configuration management infra
• Publish your artifacts
• Run tests
Workstation (Chef Example)
Bring in to the workstation a zip/tar with the following
• ChefDK
• A FTP/SSH/SCP Server binary (if it doesn’t already exist on your box)
• Your cookbooks
• Any extra gems necessary
• Chef packages (client, server)
Use Chef Zero to stand up your FTP Server, populate it with the artifacts and
prepare it for use in the rest of the process
What about dependencies?
I could download, transfer, attempt to install, download, transfer, attempt to
install..
I could skip using the gem and instead write it myself
I can create a full gem mirror of all 80,000+ gems on rubygems.org
I can install what I need into a directory, and then move that directory over as
an artifact
Simplest is to create an artifact
I used “gem install –i $PATH $GEM” && tar cf $PATH
Its not pretty but it works
Benefit is: I have a moment-in-time artifact of the gems I’m using
Ideally you’d create this at the end of your development pipeline
You should be using an artifact repo
• Use something that can store and manage your artifacts
• You can version your artifacts
• Often supports the correct dependency structure for your artifacts
Once you have Workstation + Artifact
• You can setup your configuration management
• Use a tool, running from your workstation to setup the infrastructure you
need
• Example
• Chef Provisioning SSH
• Doesn’t require internet access
• Can bootstrap Chef from a FTP or SCP server
Everything is set, right?
• Have workstation, Config Mgmt + Artifact store
• But I haven’t told any of my infrastructure that it shouldn’t reach out to the
internet for X, Y or Z
Tell your systems to stay inside
• Remove unreachable Satellite repositories
• If using ruby, remove rubygems from your sources. Add your artifact store
• If using Chef, update berksfile to an internal supermarket
• If using X, update Y to Z
• Don’t do this manually, do it with code and test it on the low side!
What if I have a proxy instead?
Most of the tooling supports HTTP_PROXY and HTTPS_PROXY
Some of it does not
It is often easier to design the system to assume no network access than to
keep fighting proxies
That said, if you can poke holes out to slack, rubygems, github, chef, etc you’ll
be much happier (unless they go down)
Changing the Process
Do this in Dev
• Do not wait for Prod to test your systems without internet access
• Along these lines, harden your Dev systems to the same standards as Prod
Create and Use
• CI/CD Pipelines
• Unit and Integration Tests
Identify where you assume risk
• If you let users ssh/rdp into production, that is where the risk lies
• If you only let users make changes to production through a pipeline, that’s
where the risk lies
• If the risk lies in a pipeline and someone else has to approve code changes,
the risk of any single change/actor is much lower
Imagine This Scenario
• Nobody can ever log into Production
• All changes flow through a pipeline that tracks who committed, reviewed
and shipped the change
• All changes are tested through Dev, QA, etc before deploying to Prod
• We build a new Prod every time we make a change
What About … ?
My laptop can’t reach X
• If you can’t reach GitHub, or Slack, etc ever; not just in Production that’s an
issue
Security won’t let me!
• Work with them. They are a vital component of
your business (or should be)
• Identify where the risk is. The risk is with the
data, not with the user.
• Consume Risk in Dev, not in Prod (Fail Fast)
• Progress is coming
How often do we update our packages?
Where are the gates?
What are the metrics?
Velocity: How fast we ship
Efficiency: How good we are at shipping
Risk: How long does it take us to fix
Food for Thought
Alaskan King Crab
• Biggest crab, legs alone can be a meal
• Served steamed or chilled with drawn butter and lemon
• Fishing Season:
• October
• January
Dungeness Crab
• Similar size to blue crab, hard shell
• Served steamed or chilled with drawn butter and lemon
• Fishing Season:
• Starts in November
• Ends in June/July
Blue Crab
• #CrabFeast
• Old Bay
• Fishing Season:
• Starts In April
Proof of Concept code
www.github.com/galenemery/chef-mre
Want a USB Key with it?
Google “stuxnet” or “vault 7”
If you asked for a USB Key, please let me know who holds your clearance so
we can have it revoked
ACKNOWLEDGEMENTS
Robb Kidd
ChefConf 2014: Mind the Gap:
Deployments with Chef in
unforgiving Environments
ACKNOWLEDGEMENTs
Thank you JOKES ON YOU, THERES NOTHING HERE
Thank you DevOpsDays Baltimore

More Related Content

What's hot

Release the Monkeys ! Testing in the Wild at Netflix
Release the Monkeys !  Testing in the Wild at NetflixRelease the Monkeys !  Testing in the Wild at Netflix
Release the Monkeys ! Testing in the Wild at NetflixGareth Bowles
 
Puppet Camp Melbourne 2014:
Puppet Camp Melbourne 2014: Puppet Camp Melbourne 2014:
Puppet Camp Melbourne 2014: Puppet
 
Hashicorp at holaluz
Hashicorp at holaluzHashicorp at holaluz
Hashicorp at holaluzRicard Clau
 
The New Frontend Toolchain
The New Frontend ToolchainThe New Frontend Toolchain
The New Frontend ToolchainBruno Abrantes
 
Continuous delivery with Codeship
Continuous delivery with CodeshipContinuous delivery with Codeship
Continuous delivery with CodeshipTetiana Chupryna
 
Managing changes to eZPublish Database
Managing changes to eZPublish DatabaseManaging changes to eZPublish Database
Managing changes to eZPublish DatabaseGaetano Giunta
 
Powerful Automation Made Simple
Powerful Automation Made SimplePowerful Automation Made Simple
Powerful Automation Made SimpleGaetano Giunta
 
How to Test PowerShell Code Using Pester
How to Test PowerShell Code Using PesterHow to Test PowerShell Code Using Pester
How to Test PowerShell Code Using PesterChris Wahl
 
Effective approaches to web application security
Effective approaches to web application security Effective approaches to web application security
Effective approaches to web application security Zane Lackey
 
My Little Webap - DevOpsSec is Magic
My Little Webap - DevOpsSec is MagicMy Little Webap - DevOpsSec is Magic
My Little Webap - DevOpsSec is MagicApollo Clark
 
Lares from LOW to PWNED
Lares from LOW to PWNEDLares from LOW to PWNED
Lares from LOW to PWNEDChris Gates
 
What we talk about when we talk about DevOps
What we talk about when we talk about DevOpsWhat we talk about when we talk about DevOps
What we talk about when we talk about DevOpsRicard Clau
 
Five Easy Ways to QA Your Drupal Site
Five Easy Ways to QA Your Drupal SiteFive Easy Ways to QA Your Drupal Site
Five Easy Ways to QA Your Drupal SiteMediacurrent
 
Puppet Camp Sydney Feb 2014 - A Build Engineering Team’s Journey of Infrastru...
Puppet Camp Sydney Feb 2014 - A Build Engineering Team’s Journey of Infrastru...Puppet Camp Sydney Feb 2014 - A Build Engineering Team’s Journey of Infrastru...
Puppet Camp Sydney Feb 2014 - A Build Engineering Team’s Journey of Infrastru...Peter Leschev
 
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012Nick Galbreath
 
eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...
eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...
eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...Gaetano Giunta
 

What's hot (20)

Release the Monkeys ! Testing in the Wild at Netflix
Release the Monkeys !  Testing in the Wild at NetflixRelease the Monkeys !  Testing in the Wild at Netflix
Release the Monkeys ! Testing in the Wild at Netflix
 
Puppet Camp Melbourne 2014:
Puppet Camp Melbourne 2014: Puppet Camp Melbourne 2014:
Puppet Camp Melbourne 2014:
 
Hashicorp at holaluz
Hashicorp at holaluzHashicorp at holaluz
Hashicorp at holaluz
 
The New Frontend Toolchain
The New Frontend ToolchainThe New Frontend Toolchain
The New Frontend Toolchain
 
Continuous delivery with Codeship
Continuous delivery with CodeshipContinuous delivery with Codeship
Continuous delivery with Codeship
 
Managing changes to eZPublish Database
Managing changes to eZPublish DatabaseManaging changes to eZPublish Database
Managing changes to eZPublish Database
 
Powerful Automation Made Simple
Powerful Automation Made SimplePowerful Automation Made Simple
Powerful Automation Made Simple
 
How to Test PowerShell Code Using Pester
How to Test PowerShell Code Using PesterHow to Test PowerShell Code Using Pester
How to Test PowerShell Code Using Pester
 
Effective approaches to web application security
Effective approaches to web application security Effective approaches to web application security
Effective approaches to web application security
 
My Little Webap - DevOpsSec is Magic
My Little Webap - DevOpsSec is MagicMy Little Webap - DevOpsSec is Magic
My Little Webap - DevOpsSec is Magic
 
Lares from LOW to PWNED
Lares from LOW to PWNEDLares from LOW to PWNED
Lares from LOW to PWNED
 
What DevOps Isn't
What DevOps Isn'tWhat DevOps Isn't
What DevOps Isn't
 
What we talk about when we talk about DevOps
What we talk about when we talk about DevOpsWhat we talk about when we talk about DevOps
What we talk about when we talk about DevOps
 
Five Easy Ways to QA Your Drupal Site
Five Easy Ways to QA Your Drupal SiteFive Easy Ways to QA Your Drupal Site
Five Easy Ways to QA Your Drupal Site
 
Hacking on gems
Hacking on gemsHacking on gems
Hacking on gems
 
Raise the bar! Reloaded
Raise the bar! ReloadedRaise the bar! Reloaded
Raise the bar! Reloaded
 
Puppet Camp Sydney Feb 2014 - A Build Engineering Team’s Journey of Infrastru...
Puppet Camp Sydney Feb 2014 - A Build Engineering Team’s Journey of Infrastru...Puppet Camp Sydney Feb 2014 - A Build Engineering Team’s Journey of Infrastru...
Puppet Camp Sydney Feb 2014 - A Build Engineering Team’s Journey of Infrastru...
 
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
 
eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...
eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...
eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...
 
Oscp preparation
Oscp preparationOscp preparation
Oscp preparation
 

Viewers also liked

Transversal Delivery Pipeline by Mike Nescot and Nick Grace
Transversal Delivery Pipeline by Mike Nescot and Nick GraceTransversal Delivery Pipeline by Mike Nescot and Nick Grace
Transversal Delivery Pipeline by Mike Nescot and Nick GraceDevOpsDays Baltimore
 
Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe DevOpsDays Baltimore
 
Building the Baltimore DevOps Community
Building the Baltimore DevOps CommunityBuilding the Baltimore DevOps Community
Building the Baltimore DevOps CommunityDevOpsDays Baltimore
 
Continuous Integration: a bittersweet love story
Continuous Integration: a bittersweet love storyContinuous Integration: a bittersweet love story
Continuous Integration: a bittersweet love storyDevOpsDays Baltimore
 
Decoding Culture: Beyond the Fluff and Back to Business
Decoding Culture: Beyond the Fluff and Back to BusinessDecoding Culture: Beyond the Fluff and Back to Business
Decoding Culture: Beyond the Fluff and Back to BusinessDevOpsDays Baltimore
 
Best Practices for IT management: Investment‐based Budgeting
Best Practices for IT management: Investment‐based BudgetingBest Practices for IT management: Investment‐based Budgeting
Best Practices for IT management: Investment‐based BudgetingDevOpsDays Baltimore
 
Getting Away from it All - Living an Unplugged Life as an IT Pro
Getting Away from it All - Living an Unplugged Life as an IT ProGetting Away from it All - Living an Unplugged Life as an IT Pro
Getting Away from it All - Living an Unplugged Life as an IT ProDevOpsDays Baltimore
 
el ABC de la Diplomacia publica
el ABC de la Diplomacia publicael ABC de la Diplomacia publica
el ABC de la Diplomacia publicaHugo Guerra
 
Achats des Français en fleurs et plantes au printemps
Achats des Français en fleurs et plantes au printempsAchats des Français en fleurs et plantes au printemps
Achats des Français en fleurs et plantes au printempsVal'hor - En Quête de Vert
 
SearchLove 2016 - WhatsAppening with Chat App Marketing
SearchLove 2016 - WhatsAppening with Chat App MarketingSearchLove 2016 - WhatsAppening with Chat App Marketing
SearchLove 2016 - WhatsAppening with Chat App MarketingJes Scholz
 
Mafalda Autoestima Femenina
Mafalda Autoestima FemeninaMafalda Autoestima Femenina
Mafalda Autoestima FemeninaKarla Poser
 
U.S. secondary markets see record multifamily investment
U.S. secondary markets see record multifamily investmentU.S. secondary markets see record multifamily investment
U.S. secondary markets see record multifamily investmentJLL
 
BEING a change agent
BEING a change agentBEING a change agent
BEING a change agentNHS Horizons
 
WordPress development checklist
WordPress development checklistWordPress development checklist
WordPress development checklistBinh Quan Duc
 

Viewers also liked (20)

Transversal Delivery Pipeline by Mike Nescot and Nick Grace
Transversal Delivery Pipeline by Mike Nescot and Nick GraceTransversal Delivery Pipeline by Mike Nescot and Nick Grace
Transversal Delivery Pipeline by Mike Nescot and Nick Grace
 
Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe Making Your Product Manager Productive by Clinton Wolfe
Making Your Product Manager Productive by Clinton Wolfe
 
Building the Baltimore DevOps Community
Building the Baltimore DevOps CommunityBuilding the Baltimore DevOps Community
Building the Baltimore DevOps Community
 
Continuous Integration: a bittersweet love story
Continuous Integration: a bittersweet love storyContinuous Integration: a bittersweet love story
Continuous Integration: a bittersweet love story
 
Hacking the A3
Hacking the A3Hacking the A3
Hacking the A3
 
Decoding Culture: Beyond the Fluff and Back to Business
Decoding Culture: Beyond the Fluff and Back to BusinessDecoding Culture: Beyond the Fluff and Back to Business
Decoding Culture: Beyond the Fluff and Back to Business
 
Lost art of troubleshooting
Lost art of troubleshootingLost art of troubleshooting
Lost art of troubleshooting
 
Best Practices for IT management: Investment‐based Budgeting
Best Practices for IT management: Investment‐based BudgetingBest Practices for IT management: Investment‐based Budgeting
Best Practices for IT management: Investment‐based Budgeting
 
Getting Away from it All - Living an Unplugged Life as an IT Pro
Getting Away from it All - Living an Unplugged Life as an IT ProGetting Away from it All - Living an Unplugged Life as an IT Pro
Getting Away from it All - Living an Unplugged Life as an IT Pro
 
el ABC de la Diplomacia publica
el ABC de la Diplomacia publicael ABC de la Diplomacia publica
el ABC de la Diplomacia publica
 
Achats des Français en fleurs et plantes au printemps
Achats des Français en fleurs et plantes au printempsAchats des Français en fleurs et plantes au printemps
Achats des Français en fleurs et plantes au printemps
 
SearchLove 2016 - WhatsAppening with Chat App Marketing
SearchLove 2016 - WhatsAppening with Chat App MarketingSearchLove 2016 - WhatsAppening with Chat App Marketing
SearchLove 2016 - WhatsAppening with Chat App Marketing
 
Mapa do Emprego
Mapa do EmpregoMapa do Emprego
Mapa do Emprego
 
2016 Land Markets Survey
2016 Land Markets Survey2016 Land Markets Survey
2016 Land Markets Survey
 
Brecha digital de género
Brecha digital de géneroBrecha digital de género
Brecha digital de género
 
Mafalda Autoestima Femenina
Mafalda Autoestima FemeninaMafalda Autoestima Femenina
Mafalda Autoestima Femenina
 
U.S. secondary markets see record multifamily investment
U.S. secondary markets see record multifamily investmentU.S. secondary markets see record multifamily investment
U.S. secondary markets see record multifamily investment
 
Smart TV Insecurity
Smart TV InsecuritySmart TV Insecurity
Smart TV Insecurity
 
BEING a change agent
BEING a change agentBEING a change agent
BEING a change agent
 
WordPress development checklist
WordPress development checklistWordPress development checklist
WordPress development checklist
 

Similar to Don't Mind the Gap by Galen Emery

Creating Havoc using Human Interface Device
Creating Havoc using Human Interface DeviceCreating Havoc using Human Interface Device
Creating Havoc using Human Interface DevicePositive Hack Days
 
Beyond TDD: Enabling Your Team to Continuously Deliver Software
Beyond TDD: Enabling Your Team to Continuously Deliver SoftwareBeyond TDD: Enabling Your Team to Continuously Deliver Software
Beyond TDD: Enabling Your Team to Continuously Deliver SoftwareChris Weldon
 
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeConfoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeSteve Mercier
 
ProdSec: A Technical Approach
ProdSec: A Technical ApproachProdSec: A Technical Approach
ProdSec: A Technical ApproachJeremy Brown
 
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Michael Lihs
 
'Intro to Infrastructure as Code' - DevOps Belfast
'Intro to Infrastructure as Code' - DevOps Belfast'Intro to Infrastructure as Code' - DevOps Belfast
'Intro to Infrastructure as Code' - DevOps BelfastJohn Fitzpatrick
 
Automated Acceptance Testing from Scratch
Automated Acceptance Testing from ScratchAutomated Acceptance Testing from Scratch
Automated Acceptance Testing from ScratchExcella
 
Sai devops - the art of being specializing generalist
Sai   devops - the art of being specializing generalistSai   devops - the art of being specializing generalist
Sai devops - the art of being specializing generalistOdd-e
 
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austinDev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austinMatt Tesauro
 
Django production
Django productionDjango production
Django productionpythonsd
 
Smart Platform Infrastructure with AWS
Smart Platform Infrastructure with AWSSmart Platform Infrastructure with AWS
Smart Platform Infrastructure with AWSJames Huston
 
DCRUG: Achieving Development-Production Parity
DCRUG: Achieving Development-Production ParityDCRUG: Achieving Development-Production Parity
DCRUG: Achieving Development-Production ParityGeoff Harcourt
 
OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...
OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...
OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...NETWAYS
 
Continuous integration, delivery & deployment
Continuous integration,  delivery & deploymentContinuous integration,  delivery & deployment
Continuous integration, delivery & deploymentMartijn van der Kamp
 
Deploying software at Scale
Deploying software at ScaleDeploying software at Scale
Deploying software at ScaleKris Buytaert
 
Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...
Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...
Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...Lean IT Consulting
 
Code Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsCode Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsDana Luther
 
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...Hackito Ergo Sum
 
Owasp tds
Owasp tdsOwasp tds
Owasp tdssnyff
 

Similar to Don't Mind the Gap by Galen Emery (20)

Creating Havoc using Human Interface Device
Creating Havoc using Human Interface DeviceCreating Havoc using Human Interface Device
Creating Havoc using Human Interface Device
 
Beyond TDD: Enabling Your Team to Continuously Deliver Software
Beyond TDD: Enabling Your Team to Continuously Deliver SoftwareBeyond TDD: Enabling Your Team to Continuously Deliver Software
Beyond TDD: Enabling Your Team to Continuously Deliver Software
 
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeConfoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
 
ProdSec: A Technical Approach
ProdSec: A Technical ApproachProdSec: A Technical Approach
ProdSec: A Technical Approach
 
Dev Ops without the Ops
Dev Ops without the OpsDev Ops without the Ops
Dev Ops without the Ops
 
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
 
'Intro to Infrastructure as Code' - DevOps Belfast
'Intro to Infrastructure as Code' - DevOps Belfast'Intro to Infrastructure as Code' - DevOps Belfast
'Intro to Infrastructure as Code' - DevOps Belfast
 
Automated Acceptance Testing from Scratch
Automated Acceptance Testing from ScratchAutomated Acceptance Testing from Scratch
Automated Acceptance Testing from Scratch
 
Sai devops - the art of being specializing generalist
Sai   devops - the art of being specializing generalistSai   devops - the art of being specializing generalist
Sai devops - the art of being specializing generalist
 
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austinDev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
Dev ops ci-ap-is-oh-my_security-gone-agile_ut-austin
 
Django production
Django productionDjango production
Django production
 
Smart Platform Infrastructure with AWS
Smart Platform Infrastructure with AWSSmart Platform Infrastructure with AWS
Smart Platform Infrastructure with AWS
 
DCRUG: Achieving Development-Production Parity
DCRUG: Achieving Development-Production ParityDCRUG: Achieving Development-Production Parity
DCRUG: Achieving Development-Production Parity
 
OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...
OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...
OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...
 
Continuous integration, delivery & deployment
Continuous integration,  delivery & deploymentContinuous integration,  delivery & deployment
Continuous integration, delivery & deployment
 
Deploying software at Scale
Deploying software at ScaleDeploying software at Scale
Deploying software at Scale
 
Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...
Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...
Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...
 
Code Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsCode Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application Migrations
 
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
 
Owasp tds
Owasp tdsOwasp tds
Owasp tds
 

More from DevOpsDays Baltimore

DevOpsDays Baltimore 2018: Black Mirror Season 5: DevOps - Brendan O'Leary
DevOpsDays Baltimore 2018: Black Mirror Season 5: DevOps - Brendan O'LearyDevOpsDays Baltimore 2018: Black Mirror Season 5: DevOps - Brendan O'Leary
DevOpsDays Baltimore 2018: Black Mirror Season 5: DevOps - Brendan O'LearyDevOpsDays Baltimore
 
DevOpsDays Baltimore 2018:: Avoiding pitfalls of non technical managers - Vic...
DevOpsDays Baltimore 2018:: Avoiding pitfalls of non technical managers - Vic...DevOpsDays Baltimore 2018:: Avoiding pitfalls of non technical managers - Vic...
DevOpsDays Baltimore 2018:: Avoiding pitfalls of non technical managers - Vic...DevOpsDays Baltimore
 
DevOpsDays Baltimore 2018: 9 biases in tech - Leon Fayer
DevOpsDays Baltimore 2018: 9 biases in tech - Leon FayerDevOpsDays Baltimore 2018: 9 biases in tech - Leon Fayer
DevOpsDays Baltimore 2018: 9 biases in tech - Leon FayerDevOpsDays Baltimore
 
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene Gotimer
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene GotimerDevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene Gotimer
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene GotimerDevOpsDays Baltimore
 
DevOpsDays Baltimore 2018: The Difference Between DevOps and Everything Else ...
DevOpsDays Baltimore 2018: The Difference Between DevOps and Everything Else ...DevOpsDays Baltimore 2018: The Difference Between DevOps and Everything Else ...
DevOpsDays Baltimore 2018: The Difference Between DevOps and Everything Else ...DevOpsDays Baltimore
 
DevOpsDays Baltimore 2018: Comparative studies in highways, organizations, au...
DevOpsDays Baltimore 2018: Comparative studies in highways, organizations, au...DevOpsDays Baltimore 2018: Comparative studies in highways, organizations, au...
DevOpsDays Baltimore 2018: Comparative studies in highways, organizations, au...DevOpsDays Baltimore
 
DevOpsDays Baltimore 2018: MBTF V. MTTR - Aaron Aldrich
DevOpsDays Baltimore 2018: MBTF V. MTTR - Aaron AldrichDevOpsDays Baltimore 2018: MBTF V. MTTR - Aaron Aldrich
DevOpsDays Baltimore 2018: MBTF V. MTTR - Aaron AldrichDevOpsDays Baltimore
 
Integrating Infrastructure as Code into a Continuous Delivery Pipeline
Integrating Infrastructure as Code into a Continuous Delivery PipelineIntegrating Infrastructure as Code into a Continuous Delivery Pipeline
Integrating Infrastructure as Code into a Continuous Delivery PipelineDevOpsDays Baltimore
 
Reanimating DevOps to Build Things that Work
Reanimating DevOps to Build Things that WorkReanimating DevOps to Build Things that Work
Reanimating DevOps to Build Things that WorkDevOpsDays Baltimore
 
Disaster Resilience the Waffle House Way: Flat-tops, feature flags, and finit...
Disaster Resilience the Waffle House Way: Flat-tops, feature flags, and finit...Disaster Resilience the Waffle House Way: Flat-tops, feature flags, and finit...
Disaster Resilience the Waffle House Way: Flat-tops, feature flags, and finit...DevOpsDays Baltimore
 
Cutting-edge DevOps at National Center for Biotechnology Information
Cutting-edge DevOps at National Center for Biotechnology InformationCutting-edge DevOps at National Center for Biotechnology Information
Cutting-edge DevOps at National Center for Biotechnology InformationDevOpsDays Baltimore
 
Production Testing Through Monitoring
Production Testing Through MonitoringProduction Testing Through Monitoring
Production Testing Through MonitoringDevOpsDays Baltimore
 

More from DevOpsDays Baltimore (12)

DevOpsDays Baltimore 2018: Black Mirror Season 5: DevOps - Brendan O'Leary
DevOpsDays Baltimore 2018: Black Mirror Season 5: DevOps - Brendan O'LearyDevOpsDays Baltimore 2018: Black Mirror Season 5: DevOps - Brendan O'Leary
DevOpsDays Baltimore 2018: Black Mirror Season 5: DevOps - Brendan O'Leary
 
DevOpsDays Baltimore 2018:: Avoiding pitfalls of non technical managers - Vic...
DevOpsDays Baltimore 2018:: Avoiding pitfalls of non technical managers - Vic...DevOpsDays Baltimore 2018:: Avoiding pitfalls of non technical managers - Vic...
DevOpsDays Baltimore 2018:: Avoiding pitfalls of non technical managers - Vic...
 
DevOpsDays Baltimore 2018: 9 biases in tech - Leon Fayer
DevOpsDays Baltimore 2018: 9 biases in tech - Leon FayerDevOpsDays Baltimore 2018: 9 biases in tech - Leon Fayer
DevOpsDays Baltimore 2018: 9 biases in tech - Leon Fayer
 
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene Gotimer
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene GotimerDevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene Gotimer
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene Gotimer
 
DevOpsDays Baltimore 2018: The Difference Between DevOps and Everything Else ...
DevOpsDays Baltimore 2018: The Difference Between DevOps and Everything Else ...DevOpsDays Baltimore 2018: The Difference Between DevOps and Everything Else ...
DevOpsDays Baltimore 2018: The Difference Between DevOps and Everything Else ...
 
DevOpsDays Baltimore 2018: Comparative studies in highways, organizations, au...
DevOpsDays Baltimore 2018: Comparative studies in highways, organizations, au...DevOpsDays Baltimore 2018: Comparative studies in highways, organizations, au...
DevOpsDays Baltimore 2018: Comparative studies in highways, organizations, au...
 
DevOpsDays Baltimore 2018: MBTF V. MTTR - Aaron Aldrich
DevOpsDays Baltimore 2018: MBTF V. MTTR - Aaron AldrichDevOpsDays Baltimore 2018: MBTF V. MTTR - Aaron Aldrich
DevOpsDays Baltimore 2018: MBTF V. MTTR - Aaron Aldrich
 
Integrating Infrastructure as Code into a Continuous Delivery Pipeline
Integrating Infrastructure as Code into a Continuous Delivery PipelineIntegrating Infrastructure as Code into a Continuous Delivery Pipeline
Integrating Infrastructure as Code into a Continuous Delivery Pipeline
 
Reanimating DevOps to Build Things that Work
Reanimating DevOps to Build Things that WorkReanimating DevOps to Build Things that Work
Reanimating DevOps to Build Things that Work
 
Disaster Resilience the Waffle House Way: Flat-tops, feature flags, and finit...
Disaster Resilience the Waffle House Way: Flat-tops, feature flags, and finit...Disaster Resilience the Waffle House Way: Flat-tops, feature flags, and finit...
Disaster Resilience the Waffle House Way: Flat-tops, feature flags, and finit...
 
Cutting-edge DevOps at National Center for Biotechnology Information
Cutting-edge DevOps at National Center for Biotechnology InformationCutting-edge DevOps at National Center for Biotechnology Information
Cutting-edge DevOps at National Center for Biotechnology Information
 
Production Testing Through Monitoring
Production Testing Through MonitoringProduction Testing Through Monitoring
Production Testing Through Monitoring
 

Recently uploaded

TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
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
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
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
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
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
 

Recently uploaded (20)

TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
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...
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 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
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
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
 

Don't Mind the Gap by Galen Emery

  • 1. Don’t Mind the Gap Doing DevOps in an Air-gapped World Galen Emery Federal Solutions Architect 3/8/2017
  • 2. Who am I? I work with the Federal Government and Integrators DoD, Civilian, or IC? Yes. I help users understand how to build and structure their infrastructure (using Chef) to solve their problems Former Windows Server Admin Been with Chef since March 2014 Born and raised in Seattle (Nathen, you’re wrong about Seattle crab)
  • 3. What we cover What is “air-gapped”? What issues do we encounter? Assumptions How to solve it (technical) How to solve it (process) What about … ? Food for Thought
  • 4. What is air-gapped? air-gapped adjective (of a computer) having no direct connection to the Internet or to any other computer that is connected to the Internet, for security reasons. "a USB drive or other hardware approach would be required to infect the air-gapped machine"
  • 5. What about mitm? • Corporate man-in-the-middle • Terminates SSL sessions and re-initiates • Often includes packet inspection • Requires you to trust its generated certificates • May still include a firewall blocking access to sites
  • 6. Maybe its just a firewall • Restricts access to: • Github or gist.github.com • slack • Pastebin • Rubygems.org / some other artifact repository • etc
  • 7. No restrictions? • Congratulations! • You might still have a firewall/proxy, its just permissive • Do you trust those systems will be up when you need them?
  • 9. Getting stuff into production • How do we “cross the gap”? • How do we distribute it? • How do we ensure its integrity?
  • 10. Process?! You want to talk about PROCESS? You kidding me?! I just hope we can make one change!
  • 11. Velocity How do we achieve velocity if we burn a DVD for every change? Or if a proxy is inspecting all of our packets, every time we download a package?
  • 12. Okay, I’m not air-gapped but… • I have a firewall between my systems and the internet • I have a proxy that inspects all traffic and slows me down • I don’t have {level of access necessary} to make changes • Tool {X} does not understand authenticating proxies
  • 14. You know that I know that you know… • How you get code into your high-side environment
  • 15. Everything is code • If its source code, it goes into SCM • If it is an artifact, it goes into artifact store, and has a checksum • We can (and do) write tests • We build a pipeline
  • 17. Go from Low to High
  • 18. Assume you don’t have internet • Even if you do • Build this into your pipeline • Test this on the low side • Your systems should NOT assume internet access • Most tooling by default assumes it does
  • 19. Do this work on the low-side Build your pipeline in a way that removes internet access for your systems, they must grab their code and artifacts locally If you can build your infrastructure without internet access in Dev, you can absolutely do it in Prod
  • 20. Protect the Data, not the Infra The data is sensitive, not the infrastructure itself. Keep the data in the high- side, but ensure that you build your infrastructure with the same code in Dev and Prod
  • 21. Workstation This is your “loading dock” for the rest of the infrastructure Everything comes through here It needs: • A way to serve files (directly or indirectly) • A way to create artifacts (zip, tar, etc) • built programmatically
  • 22. Workstation Use the workstation to: • Stand up your artifact repo • Stand up your configuration management infra • Publish your artifacts • Run tests
  • 23. Workstation (Chef Example) Bring in to the workstation a zip/tar with the following • ChefDK • A FTP/SSH/SCP Server binary (if it doesn’t already exist on your box) • Your cookbooks • Any extra gems necessary • Chef packages (client, server) Use Chef Zero to stand up your FTP Server, populate it with the artifacts and prepare it for use in the rest of the process
  • 24. What about dependencies? I could download, transfer, attempt to install, download, transfer, attempt to install.. I could skip using the gem and instead write it myself I can create a full gem mirror of all 80,000+ gems on rubygems.org I can install what I need into a directory, and then move that directory over as an artifact
  • 25. Simplest is to create an artifact I used “gem install –i $PATH $GEM” && tar cf $PATH Its not pretty but it works Benefit is: I have a moment-in-time artifact of the gems I’m using Ideally you’d create this at the end of your development pipeline
  • 26. You should be using an artifact repo • Use something that can store and manage your artifacts • You can version your artifacts • Often supports the correct dependency structure for your artifacts
  • 27. Once you have Workstation + Artifact • You can setup your configuration management • Use a tool, running from your workstation to setup the infrastructure you need • Example • Chef Provisioning SSH • Doesn’t require internet access • Can bootstrap Chef from a FTP or SCP server
  • 28. Everything is set, right? • Have workstation, Config Mgmt + Artifact store • But I haven’t told any of my infrastructure that it shouldn’t reach out to the internet for X, Y or Z
  • 29. Tell your systems to stay inside • Remove unreachable Satellite repositories • If using ruby, remove rubygems from your sources. Add your artifact store • If using Chef, update berksfile to an internal supermarket • If using X, update Y to Z • Don’t do this manually, do it with code and test it on the low side!
  • 30. What if I have a proxy instead? Most of the tooling supports HTTP_PROXY and HTTPS_PROXY Some of it does not It is often easier to design the system to assume no network access than to keep fighting proxies That said, if you can poke holes out to slack, rubygems, github, chef, etc you’ll be much happier (unless they go down)
  • 32. Do this in Dev • Do not wait for Prod to test your systems without internet access • Along these lines, harden your Dev systems to the same standards as Prod
  • 33. Create and Use • CI/CD Pipelines • Unit and Integration Tests
  • 34. Identify where you assume risk • If you let users ssh/rdp into production, that is where the risk lies • If you only let users make changes to production through a pipeline, that’s where the risk lies • If the risk lies in a pipeline and someone else has to approve code changes, the risk of any single change/actor is much lower
  • 35. Imagine This Scenario • Nobody can ever log into Production • All changes flow through a pipeline that tracks who committed, reviewed and shipped the change • All changes are tested through Dev, QA, etc before deploying to Prod • We build a new Prod every time we make a change
  • 37. My laptop can’t reach X • If you can’t reach GitHub, or Slack, etc ever; not just in Production that’s an issue
  • 38. Security won’t let me! • Work with them. They are a vital component of your business (or should be) • Identify where the risk is. The risk is with the data, not with the user. • Consume Risk in Dev, not in Prod (Fail Fast) • Progress is coming
  • 39. How often do we update our packages?
  • 40. Where are the gates?
  • 41. What are the metrics? Velocity: How fast we ship Efficiency: How good we are at shipping Risk: How long does it take us to fix
  • 43. Alaskan King Crab • Biggest crab, legs alone can be a meal • Served steamed or chilled with drawn butter and lemon • Fishing Season: • October • January
  • 44. Dungeness Crab • Similar size to blue crab, hard shell • Served steamed or chilled with drawn butter and lemon • Fishing Season: • Starts in November • Ends in June/July
  • 45. Blue Crab • #CrabFeast • Old Bay • Fishing Season: • Starts In April
  • 46. Proof of Concept code www.github.com/galenemery/chef-mre Want a USB Key with it?
  • 47. Google “stuxnet” or “vault 7” If you asked for a USB Key, please let me know who holds your clearance so we can have it revoked
  • 48. ACKNOWLEDGEMENTS Robb Kidd ChefConf 2014: Mind the Gap: Deployments with Chef in unforgiving Environments
  • 49. ACKNOWLEDGEMENTs Thank you JOKES ON YOU, THERES NOTHING HERE Thank you DevOpsDays Baltimore