SlideShare a Scribd company logo
Webinar
Gus Luxton
Solutions Engineer
Industry Best Practices
for SSH Access
Why securing SSH is important
● Managing access to servers has traditionally
involved sharing passwords via a password
manager or copying SSH keys around to servers
using automation.
● This doesn’t scale well with growing
organisations and can make
onboarding/offboarding users hard.
● Credential leaks and compromises are very real
and present a huge security risk.
● Once access is provided, there’s very
little visibility into what anyone is doing.
Summary
● Step 1: Switch from using public keys to certificates
● Step 2: Use a highly available bastion host as an access gateway
● Step 3: Enforce the use of a second factor
● Step 4: Get user identities from a identity provider
Step 1: Switch from public keys to certificates
Some pros of public keys
● Far more secure than shared passwords due to greater entropy
● Can’t be keylogged - nobody ever types a private key
● Cryptographically secure - reliable way to authenticate that the
person accessing your server actually has that private key in their
possession
Some cons of public keys
● Can be hard to keep track of which key goes where
● No expiration by default
● Requires a process for distribution to be useful
We’re all too busy for this...
● Lack of built-in accountability regarding what key belongs to who
● Makes credential rotation hard without building a separate process
Step 1: Switch from public keys to certificates
Some benefits of certificates
● All the benefits of public keys as described
beforehand, with none of the explicit downsides
● Support for additional metadata - add an email
address, internal username or ticket reference to
every certificate issued, and define a list of users that
the certificate is permitted to authenticate as
● Simple to issue and reissue without external
changes meaning credential expiry and rotation can
be built in automatically
● Can be revoked by synchronizing a CRL to servers
Certificate metadata: example
● Customizable ID that you can set per-certificate
● Short validity period to limit access by default
● Contains a list of authorized principals (logins) that the certificate will permit
● Extensions to limit permissions further if desired
But wait - there’s more!
It’s called “Trust on first use” or “TOFU” and represents a
fundamentally insecure model.
Messages like these can be a thing of the past if you switch to
using certificates to authenticate your hosts.
Anyone seen a prompt like this before?
Step 2: Use a bastion server for access
● In an era of more remote work we’re all connecting from different
locations regularly
● Whitelisting on a server-by-server basis is tricky - borderline impossible
● Bastions can be highly available and provide you with a reduced attack
surface by limiting locations you can connect from - no need for a VPN
● It doesn’t have to be hard - SSH supports the use of jump hosts out of
the box with the -J flag
● Blocking or revoking access becomes much simpler when you know that
all your connections are coming from a limited number of locations
● Provides a central location for logging and auditing access to your fleet
Step 3: Enforce the use of a second factor
● Two-factor authentication (2FA/2-Fac) refers to the idea of requiring
multiple factors before allowing access
○ “Something you know” like a password
○ “Something you have” like an authenticator app, or an SMS*
○ “Something you are” like a fingerprint/retina scan or voice print
● Lots of flexibility in ways to provide this
○ TOTP application - scan QR code, get a new code every 30 seconds
○ Push services like Duo, Okta, Auth0
○ Linux PAM (pluggable authentication modules) available for these
* SMS is not very secure. I don’t recommend you ever use it for a second factor.
● Can you make a list of every user you have?
○ Could you do this for 100 users? 1,000 users? 10,000
users?
● If an SSH user leaves, you want to revoke their access
○ How do you know you’ve got all their keys?
● Use an identity provider as the source of truth for users
○ Active Directory, Okta, OneLogin, Auth0, Github
○ One place to add users, one place to remove users
Step 4: Get identity from a third party
Summary
● Step 1: Switch from using public keys to certificates
● Step 2: Use a highly available bastion host as an access gateway
● Step 3: Enforce the use of a second factor
● Step 4: Get user identities from a identity provider
How can you do this easily?
● Open source, written in Go
● Written by engineers for engineers
● Doesn’t get in the way
● Fully compatible with SSH and your existing tooling
https://github.com/gravitational/teleport
Recommended Next Steps
Read “How to SSH Properly”
https://gravitational.com/blog/how-to-ssh-properly/
Check us out on Github
https://github.com/gravitational/teleport
Download Teleport
https://gravitational.com/teleport/download
Thanks!

More Related Content

What's hot

SSL Secure socket layer
SSL Secure socket layerSSL Secure socket layer
SSL Secure socket layer
Ahmed Elnaggar
 
PPT ON WEB SECURITY BY MONODIP SINGHA ROY
PPT ON WEB SECURITY BY MONODIP SINGHA ROYPPT ON WEB SECURITY BY MONODIP SINGHA ROY
PPT ON WEB SECURITY BY MONODIP SINGHA ROY
Monodip Singha Roy
 

What's hot (20)

Transport layer security (tls)
Transport layer security (tls)Transport layer security (tls)
Transport layer security (tls)
 
SSL Secure socket layer
SSL Secure socket layerSSL Secure socket layer
SSL Secure socket layer
 
SSL TLS Protocol
SSL TLS ProtocolSSL TLS Protocol
SSL TLS Protocol
 
Web Security and SSL - Secure Socket Layer
Web Security and SSL - Secure Socket LayerWeb Security and SSL - Secure Socket Layer
Web Security and SSL - Secure Socket Layer
 
Transport Layer Security (TLS)
Transport Layer Security (TLS)Transport Layer Security (TLS)
Transport Layer Security (TLS)
 
ssl
sslssl
ssl
 
Ssl (Secure Sockets Layer)
Ssl (Secure Sockets Layer)Ssl (Secure Sockets Layer)
Ssl (Secure Sockets Layer)
 
Transport Layer Security
Transport Layer Security Transport Layer Security
Transport Layer Security
 
Ssl in a nutshell
Ssl in a nutshellSsl in a nutshell
Ssl in a nutshell
 
PPT ON WEB SECURITY BY MONODIP SINGHA ROY
PPT ON WEB SECURITY BY MONODIP SINGHA ROYPPT ON WEB SECURITY BY MONODIP SINGHA ROY
PPT ON WEB SECURITY BY MONODIP SINGHA ROY
 
TLS 1.3: Everything You Need to Know - CheapSSLsecurity
TLS 1.3: Everything You Need to Know - CheapSSLsecurityTLS 1.3: Everything You Need to Know - CheapSSLsecurity
TLS 1.3: Everything You Need to Know - CheapSSLsecurity
 
Transport Layer Security - Mrinal Wadhwa
Transport Layer Security - Mrinal WadhwaTransport Layer Security - Mrinal Wadhwa
Transport Layer Security - Mrinal Wadhwa
 
UTD Computer Security Group - Cracking the domain
UTD Computer Security Group - Cracking the domainUTD Computer Security Group - Cracking the domain
UTD Computer Security Group - Cracking the domain
 
Secure Socket Layer
Secure Socket LayerSecure Socket Layer
Secure Socket Layer
 
SSL/TLS Handshake
SSL/TLS HandshakeSSL/TLS Handshake
SSL/TLS Handshake
 
secure socket layer
secure socket layersecure socket layer
secure socket layer
 
SSL
SSLSSL
SSL
 
Secure Socket Layer (SSL)
Secure Socket Layer (SSL)Secure Socket Layer (SSL)
Secure Socket Layer (SSL)
 
SSL
SSLSSL
SSL
 
Ssl (Secure Socket Layer)
Ssl (Secure Socket Layer)Ssl (Secure Socket Layer)
Ssl (Secure Socket Layer)
 

Similar to Industry Best Practices for SSH Access

encryption presentation (SAGE-WA, 2010-10-05)
encryption presentation (SAGE-WA, 2010-10-05)encryption presentation (SAGE-WA, 2010-10-05)
encryption presentation (SAGE-WA, 2010-10-05)
Alastair Irvine
 
Public key infrastrucure and its uses.pptx
Public key infrastrucure and its uses.pptxPublic key infrastrucure and its uses.pptx
Public key infrastrucure and its uses.pptx
GayathriSanthosh11
 

Similar to Industry Best Practices for SSH Access (20)

SSL certificates
SSL certificatesSSL certificates
SSL certificates
 
Managing secrets at scale
Managing secrets at scaleManaging secrets at scale
Managing secrets at scale
 
Cloud Identity Management
Cloud Identity ManagementCloud Identity Management
Cloud Identity Management
 
Certificate Management on pfSense 2.4 - pfSense Hangout September 2017
Certificate Management on pfSense 2.4 - pfSense Hangout September 2017Certificate Management on pfSense 2.4 - pfSense Hangout September 2017
Certificate Management on pfSense 2.4 - pfSense Hangout September 2017
 
Authentication Concepts
Authentication ConceptsAuthentication Concepts
Authentication Concepts
 
Securing Your Resources with Short-Lived Certificates!
Securing Your Resources with Short-Lived Certificates!Securing Your Resources with Short-Lived Certificates!
Securing Your Resources with Short-Lived Certificates!
 
PKI & SSL
PKI & SSLPKI & SSL
PKI & SSL
 
#Morecrypto (with tis) - version 2.2
#Morecrypto (with tis) - version 2.2#Morecrypto (with tis) - version 2.2
#Morecrypto (with tis) - version 2.2
 
Authentication Methods authauthauthauthauthautha
Authentication Methods authauthauthauthauthauthaAuthentication Methods authauthauthauthauthautha
Authentication Methods authauthauthauthauthautha
 
Secure shell ppt
Secure shell pptSecure shell ppt
Secure shell ppt
 
encryption presentation (SAGE-WA, 2010-10-05)
encryption presentation (SAGE-WA, 2010-10-05)encryption presentation (SAGE-WA, 2010-10-05)
encryption presentation (SAGE-WA, 2010-10-05)
 
Public key infrastrucure and its uses.pptx
Public key infrastrucure and its uses.pptxPublic key infrastrucure and its uses.pptx
Public key infrastrucure and its uses.pptx
 
Digital signature
Digital  signatureDigital  signature
Digital signature
 
Mutual Authentication For Wireless Communication
Mutual Authentication For Wireless CommunicationMutual Authentication For Wireless Communication
Mutual Authentication For Wireless Communication
 
The Myth of SSH Key Rotation Mythcracker Webcast Series Part 3
The Myth of SSH Key Rotation Mythcracker Webcast Series Part 3 The Myth of SSH Key Rotation Mythcracker Webcast Series Part 3
The Myth of SSH Key Rotation Mythcracker Webcast Series Part 3
 
CISSP Prep: Ch 6. Identity and Access Management
CISSP Prep: Ch 6. Identity and Access ManagementCISSP Prep: Ch 6. Identity and Access Management
CISSP Prep: Ch 6. Identity and Access Management
 
Keycloak SSO basics
Keycloak SSO basicsKeycloak SSO basics
Keycloak SSO basics
 
Single Sign-On & Strong Authentication
Single Sign-On & Strong AuthenticationSingle Sign-On & Strong Authentication
Single Sign-On & Strong Authentication
 
OpenId Connect Protocol
OpenId Connect ProtocolOpenId Connect Protocol
OpenId Connect Protocol
 
5. Identity and Access Management
5. Identity and Access Management5. Identity and Access Management
5. Identity and Access Management
 

More from DevOps.com

Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
DevOps.com
 
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
DevOps.com
 

More from DevOps.com (20)

Modernizing on IBM Z Made Easier With Open Source Software
Modernizing on IBM Z Made Easier With Open Source SoftwareModernizing on IBM Z Made Easier With Open Source Software
Modernizing on IBM Z Made Easier With Open Source Software
 
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
 
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
 
Next Generation Vulnerability Assessment Using Datadog and Snyk
Next Generation Vulnerability Assessment Using Datadog and SnykNext Generation Vulnerability Assessment Using Datadog and Snyk
Next Generation Vulnerability Assessment Using Datadog and Snyk
 
Vulnerability Discovery in the Cloud
Vulnerability Discovery in the CloudVulnerability Discovery in the Cloud
Vulnerability Discovery in the Cloud
 
2021 Open Source Governance: Top Ten Trends and Predictions
2021 Open Source Governance: Top Ten Trends and Predictions2021 Open Source Governance: Top Ten Trends and Predictions
2021 Open Source Governance: Top Ten Trends and Predictions
 
A New Year’s Ransomware Resolution
A New Year’s Ransomware ResolutionA New Year’s Ransomware Resolution
A New Year’s Ransomware Resolution
 
Getting Started with Runtime Security on Azure Kubernetes Service (AKS)
Getting Started with Runtime Security on Azure Kubernetes Service (AKS)Getting Started with Runtime Security on Azure Kubernetes Service (AKS)
Getting Started with Runtime Security on Azure Kubernetes Service (AKS)
 
Don't Panic! Effective Incident Response
Don't Panic! Effective Incident ResponseDon't Panic! Effective Incident Response
Don't Panic! Effective Incident Response
 
Creating a Culture of Chaos: Chaos Engineering Is Not Just Tools, It's Culture
Creating a Culture of Chaos: Chaos Engineering Is Not Just Tools, It's CultureCreating a Culture of Chaos: Chaos Engineering Is Not Just Tools, It's Culture
Creating a Culture of Chaos: Chaos Engineering Is Not Just Tools, It's Culture
 
Role Based Access Controls (RBAC) for SSH and Kubernetes Access with Teleport
Role Based Access Controls (RBAC) for SSH and Kubernetes Access with TeleportRole Based Access Controls (RBAC) for SSH and Kubernetes Access with Teleport
Role Based Access Controls (RBAC) for SSH and Kubernetes Access with Teleport
 
Monitoring Serverless Applications with Datadog
Monitoring Serverless Applications with DatadogMonitoring Serverless Applications with Datadog
Monitoring Serverless Applications with Datadog
 
Deliver your App Anywhere … Publicly or Privately
Deliver your App Anywhere … Publicly or PrivatelyDeliver your App Anywhere … Publicly or Privately
Deliver your App Anywhere … Publicly or Privately
 
Securing medical apps in the age of covid final
Securing medical apps in the age of covid finalSecuring medical apps in the age of covid final
Securing medical apps in the age of covid final
 
How to Build a Healthy On-Call Culture
How to Build a Healthy On-Call CultureHow to Build a Healthy On-Call Culture
How to Build a Healthy On-Call Culture
 
The Evolving Role of the Developer in 2021
The Evolving Role of the Developer in 2021The Evolving Role of the Developer in 2021
The Evolving Role of the Developer in 2021
 
Service Mesh: Two Big Words But Do You Need It?
Service Mesh: Two Big Words But Do You Need It?Service Mesh: Two Big Words But Do You Need It?
Service Mesh: Two Big Words But Do You Need It?
 
Secure Data Sharing in OpenShift Environments
Secure Data Sharing in OpenShift EnvironmentsSecure Data Sharing in OpenShift Environments
Secure Data Sharing in OpenShift Environments
 
How to Govern Identities and Access in Cloud Infrastructure: AppsFlyer Case S...
How to Govern Identities and Access in Cloud Infrastructure: AppsFlyer Case S...How to Govern Identities and Access in Cloud Infrastructure: AppsFlyer Case S...
How to Govern Identities and Access in Cloud Infrastructure: AppsFlyer Case S...
 
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
 

Recently uploaded

Recently uploaded (20)

AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John Staveley
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 

Industry Best Practices for SSH Access

  • 1. Webinar Gus Luxton Solutions Engineer Industry Best Practices for SSH Access
  • 2. Why securing SSH is important ● Managing access to servers has traditionally involved sharing passwords via a password manager or copying SSH keys around to servers using automation. ● This doesn’t scale well with growing organisations and can make onboarding/offboarding users hard. ● Credential leaks and compromises are very real and present a huge security risk. ● Once access is provided, there’s very little visibility into what anyone is doing.
  • 3. Summary ● Step 1: Switch from using public keys to certificates ● Step 2: Use a highly available bastion host as an access gateway ● Step 3: Enforce the use of a second factor ● Step 4: Get user identities from a identity provider
  • 4. Step 1: Switch from public keys to certificates Some pros of public keys ● Far more secure than shared passwords due to greater entropy ● Can’t be keylogged - nobody ever types a private key ● Cryptographically secure - reliable way to authenticate that the person accessing your server actually has that private key in their possession
  • 5. Some cons of public keys ● Can be hard to keep track of which key goes where ● No expiration by default ● Requires a process for distribution to be useful We’re all too busy for this... ● Lack of built-in accountability regarding what key belongs to who ● Makes credential rotation hard without building a separate process Step 1: Switch from public keys to certificates
  • 6. Some benefits of certificates ● All the benefits of public keys as described beforehand, with none of the explicit downsides ● Support for additional metadata - add an email address, internal username or ticket reference to every certificate issued, and define a list of users that the certificate is permitted to authenticate as ● Simple to issue and reissue without external changes meaning credential expiry and rotation can be built in automatically ● Can be revoked by synchronizing a CRL to servers
  • 7. Certificate metadata: example ● Customizable ID that you can set per-certificate ● Short validity period to limit access by default ● Contains a list of authorized principals (logins) that the certificate will permit ● Extensions to limit permissions further if desired
  • 8. But wait - there’s more! It’s called “Trust on first use” or “TOFU” and represents a fundamentally insecure model. Messages like these can be a thing of the past if you switch to using certificates to authenticate your hosts. Anyone seen a prompt like this before?
  • 9. Step 2: Use a bastion server for access ● In an era of more remote work we’re all connecting from different locations regularly ● Whitelisting on a server-by-server basis is tricky - borderline impossible ● Bastions can be highly available and provide you with a reduced attack surface by limiting locations you can connect from - no need for a VPN ● It doesn’t have to be hard - SSH supports the use of jump hosts out of the box with the -J flag ● Blocking or revoking access becomes much simpler when you know that all your connections are coming from a limited number of locations ● Provides a central location for logging and auditing access to your fleet
  • 10. Step 3: Enforce the use of a second factor ● Two-factor authentication (2FA/2-Fac) refers to the idea of requiring multiple factors before allowing access ○ “Something you know” like a password ○ “Something you have” like an authenticator app, or an SMS* ○ “Something you are” like a fingerprint/retina scan or voice print ● Lots of flexibility in ways to provide this ○ TOTP application - scan QR code, get a new code every 30 seconds ○ Push services like Duo, Okta, Auth0 ○ Linux PAM (pluggable authentication modules) available for these * SMS is not very secure. I don’t recommend you ever use it for a second factor.
  • 11. ● Can you make a list of every user you have? ○ Could you do this for 100 users? 1,000 users? 10,000 users? ● If an SSH user leaves, you want to revoke their access ○ How do you know you’ve got all their keys? ● Use an identity provider as the source of truth for users ○ Active Directory, Okta, OneLogin, Auth0, Github ○ One place to add users, one place to remove users Step 4: Get identity from a third party
  • 12. Summary ● Step 1: Switch from using public keys to certificates ● Step 2: Use a highly available bastion host as an access gateway ● Step 3: Enforce the use of a second factor ● Step 4: Get user identities from a identity provider
  • 13. How can you do this easily? ● Open source, written in Go ● Written by engineers for engineers ● Doesn’t get in the way ● Fully compatible with SSH and your existing tooling https://github.com/gravitational/teleport
  • 14. Recommended Next Steps Read “How to SSH Properly” https://gravitational.com/blog/how-to-ssh-properly/ Check us out on Github https://github.com/gravitational/teleport Download Teleport https://gravitational.com/teleport/download