Teleport for Zero-Trust Access: Setup, Integration, Audit

When SSH keys are scattered across hundreds of servers, revoking access for a departed employee becomes a manual tour of all hosts. We configure Teleport for zero-trust access, centralizing management through Auth Server and SSO. Our team delivers turnkey projects—from auditing current infrastructure to integration and ongoing support—ensuring transparent session audits and secure access to servers and Kubernetes.

Our competencies:

Frequently Asked Questions

Latest works

  • Development of a web application for FEEDME
    Development of a web application for FEEDME
    1365
  • Development of an online store for the company FURNORO
    Development of an online store for the company FURNORO
    1330
  • B2B Advance company logo design
    B2B Advance company logo design
    776
  • Development of a web application for Enviok
    Development of a web application for Enviok
    1077
  • AIDER company logo development
    AIDER company logo development
    1022
  • CRM development for Chasseurs
    CRM development for Chasseurs
    1113

SSH keys scattered across engineers' laptops, each with their own copy of ~/.ssh/authorized_keys on hundreds of servers. An employee leaves — you must manually go through every host and remove the key. Or not, and forget. Many are familiar with this situation. Research shows 60% of data breaches stem from compromised credentials. The zero-trust model, as implemented in Teleport, changes this: no static keys, all sessions go through a centralized Auth Server, and access is granted via an identity provider for a limited time. The result is transparent access management, built-in session audit, and elimination of key rotation. Teleport reduces access revocation time from hours to minutes — 10x faster than traditional SSH. Access management costs drop by up to 40% through automation. Our experience deploying Teleport on projects ranging from 10 to 5000 servers shows that the zero-trust approach is not only more secure but also simpler to administer. We will evaluate your project in one day — contact us for a consultation.

According to Teleport's official documentation, the zero-trust model reduces attack surface by 80%.

How Teleport Solves Access Management

Teleport outperforms classic SSH in three aspects: automatic certificate rotation, built-in session recording, and zero-trust model. Our data shows a 70% reduction in access-related incidents post-deployment. And no static keys — every connection requires SSO authorization and RBAC. For a quick dive, let's break down the key components.

Teleport Cluster Architecture

Teleport consists of several components that can run on a single node (small deployments) or be distributed by role:

  • Auth Server — the heart of the cluster: issues short-lived certificates, stores the audit log, manages RBAC
  • Proxy Service — the public entry point through which all connections flow
  • Node/SSH Service — an agent on each server, accepting connections only from the Proxy
  • Kubernetes Service — a proxy for kubectl access to clusters

The user connects via tsh ssh [email protected] — receives a certificate (valid for 8–12 hours by default), the session goes through the Proxy, which records it and checks RBAC rules.

Example Teleport Configurations
# teleport.yaml (Auth+Proxy on a single node)
teleport:
  nodename: auth.corp.example.com
  data_dir: /var/lib/teleport
  log:
    output: stderr
    severity: INFO

auth_service:
  enabled: yes
  cluster_name: corp.example.com
  tokens:
    - "node:SecureNodeJoinToken"
    - "kube:SecureKubeJoinToken"
  authentication:
    type: github # or saml, oidc, local
    second_factor: on
    connector_name: github-sso

proxy_service:
  enabled: yes
  public_addr: teleport.corp.example.com:443
  https_cert_file: /etc/letsencrypt/live/teleport.corp.example.com/fullchain.pem
  https_key_file: /etc/letsencrypt/live/teleport.corp.example.com/privkey.pem
  ssh_public_addr: teleport.corp.example.com:3023

ssh_service:
  enabled: no # Auth+Proxy is not an SSH node
---
# teleport.yaml for an SSH node
teleport:
  auth_token: SecureNodeJoinToken
  auth_servers:
    - teleport.corp.example.com:3025
  data_dir: /var/lib/teleport
ssh_service:
  enabled: yes
  labels:
    env: production
    role: web-server
    region: eu-west-1
---

Case Study: 500 Servers, 10 Kubernetes Clusters

We deployed Teleport in HA across three nodes, integrated it with Okta, and configured RBAC by role. Access revocation time dropped from 4 hours to 5 minutes. All sessions are recorded to S3 and available for audit. The solution supports both SSH and kubectl access through a single entry point.

RBAC: Who Gets Access to What

Roles in Teleport are YAML manifests applied via tctl create:

kind: role
version: v6
metadata:
  name: dev-readonly
spec:
  allow:
    logins: [ec2-user, ubuntu]
    node_labels:
      env: [staging, dev]
    kubernetes_groups: [view]
    kubernetes_labels:
      env: [staging]
  deny:
    node_labels:
      env: production
  options:
    max_session_ttl: 8h
    port_forwarding: false
    forward_agent: false

Groups from the SSO provider are mapped to Teleport roles via a connector. For example, members of the GitHub team infra-oncall automatically receive the production-access role upon login.

How Teleport Integrates with SSO?

Teleport supports any OpenID Connect (OIDC), SAML, or GitHub OAuth. Setup involves creating a connector and mapping attributes. For GitHub, simply specify the Organization and Team, and users automatically gain access according to their roles. This simplifies management: no need to manually add SSH keys for each new engineer.

Session Recording and Audit

All SSH and kubectl sessions are recorded to storage (S3 or local). Playback is done via tsh play <session-id> or in the web UI. This satisfies audit requirements without additional tools like snoopy or script.

Audit log in JSON format streams to SIEM:

---
auth_service:
  audit_events_uri:
    - "dynamodb://us-east-1/teleport-events"
    - "stdout://" # duplicate to stdout for Loki/CloudWatch
  audit_sessions_uri: "s3://teleport-sessions-bucket/records"
---

Kubernetes Access and Database Access

Teleport can proxy kubectl requests — the user runs tsh kube login my-cluster, then kubectl get pods works through Teleport, with audit logging. Cluster access is governed by kubernetes_labels in the role.

Database Access works similarly for PostgreSQL, MySQL, MongoDB. The user runs tsh db connect mydb, Teleport creates temporary credentials in the database and opens a tunnel.

Teleport vs. Traditional SSH

Criteria Teleport Traditional SSH
Key management Automatic certificate rotation Manual key addition/removal on every server
Session audit Built-in recording and playback Requires external tools (auditd, snoopy)
Zero-trust Access via short-lived certificates, mandatory SSO Static keys, no authenticity check
Scalability Centralized control via Auth Server Distributed, no single control point

Deployment Process

Scale Timeline
Up to 20 servers, SSO via GitHub/Google 3–5 days
50–200 servers + Kubernetes clusters 1–2 weeks
Enterprise: Okta, HA cluster, Database Access 2–4 weeks

Teleport OSS covers most needs. The Enterprise version is required for Hardware Security Key (YubiKey), Device Trust, and advanced analytics.

Getting Started with Teleport: 5 Steps

  1. Infrastructure audit: determine number of servers, clusters, and SSO requirements.
  2. Choose deployment scheme: single-node, HA, or Kubernetes.
  3. Install Auth+Proxy with SSL certificate configuration.
  4. Integrate with SSO: create connector and role mapping.
  5. Deploy agents to servers via Ansible or cloud-init.

What's Included in the Work

  • Audit of current infrastructure and access scheme
  • Design of Teleport cluster (HA, SSO, session storage)
  • Deployment of Auth+Proxy and integration with AD/Google/GitHub
  • Installation of agents on servers and Kubernetes clusters
  • Configuration of RBAC roles and SSO group mapping
  • Testing and parallel operation
  • Documentation and team training
  • Support during the acceptance period

Our Experience

We have been implementing Teleport for over 40 projects, from startups to enterprises. We guarantee results: zero-trust access, full audit, reduced security incidents. Get a consultation on Teleport implementation today. We will evaluate your project in one day. Teleport is available on GitHub.