인포레터에서 최신 DevOps 트렌드를 격주로 만나보세요!
Teleport 아키텍처
이 가이드는 Teleport의 기술 아키텍처를 설명합니다. 이 가이드를 읽기 전에, Teleport 클러스터의 구성 요소를 설명하는 핵심 개념 페이지를 읽을 것을 권장합니다.
Teleport 제어 평면
Teleport 제어 평면은 Teleport Auth 서비스와 Teleport Proxy 서비스로 구성됩니다. Teleport Enterprise(클라우드)에서는 제어 평면이 Teleport 인프라에서 완전히 관리됩니다. Teleport Enterprise(클라우드) 아키텍처에 대해 읽어보세요.
Teleport Auth 서비스
Teleport Auth 서비스는 세 가지 주요 기능을 수행합니다:
- 호스트 및 클라이언트 인증서를 서명하는 인증 기관을 유지 관리하며, 특정 자가 호스팅 리소스에 대해 귀하의 인프라에 대한 인증서도 서명합니다.
- 역할, 로컬 사용자 및 특정 종류의 Teleport 보호 인프라 리소스를 포함하여 클러스터 구성을 동적 리소스로 저장합니다.
- 감사 이벤트 및 세션 녹화와 같은 클러스터 데이터를 수집합니다.
클러스터 구성 요소는 gRPC API를 통해 인증서, 동적 리소스, 감사 이벤트 및 세션 녹화를 관리하기 위해 Auth 서비스와 통신합니다.
Teleport Auth 서비스에 대한 자세한 정보는 다음 가이드를 참조하세요:
Teleport Proxy 서비스
Teleport Proxy 서비스는 Teleport 클러스터의 구성 요소가 Teleport Auth 서비스와 안전하게 통신할 수 있도록 합니다. Proxy 서비스를 사용하면 사용자는 공용 인터넷을 통해 개인 네트워크의 인프라에 접근할 수 있습니다.
Proxy 서비스는 SSH 서버를 구현합니다. Teleport 에이전트는 SSH 서버와 역방향 터널을 설정하여 Teleport 사용자로부터 트래픽을 수신하고 다시 전송합니다. Event Handler 및 Access Request 플러그인과 같은 Auth 서비스 클라이언트도 Proxy 서비스의 SSH 서버를 통해 트래픽을 라우팅하며, SSH 클라이언트 인증서로 Proxy 서비스에 인증합니다.
Proxy 서비스는 Teleport 웹 UI를 제공하며, Teleport Enterprise(클라우드)에서는 귀하의 Teleport 계정 주소(예: example.teleport.sh
)에서 사용할 수 있습니다.
Teleport Proxy 서비스 아키텍처에 대해 더 알아보세요. Teleport Proxy 서비스 기능의 아키텍처에 대한 내용도 읽을 수 있습니다:
리소스 등록
관리자는 Teleport 클러스터에 인프라 리소스를 등록하여 안전한 접근, RBAC 및 감사 기능을 제공합니다. Teleport 클러스터에 인프라 리소스를 등록하는 방법은 세 가지가 있습니다:
- Teleport 에이전트는 인간 사용자의 트래픽을 Teleport 보호 인프라 리소스와 주고받습니다.
- 기계 ID 봇은
tbot
바이너리로부터 단기 자격 증명을 수신하여 서비스 계정이 인프라에 접근할 수 있도록 합니다. - 신뢰 클러스터는 하나의 Teleport 클러스터의 사용자가 다른 Teleport 클러스터에 등록된 인프라에 접근할 수 있도록 여러 Teleport 클러스터 간에 신뢰를 연합합니다.
Teleport 에이전트
Teleport 에이전트는 사용자로부터 인프라 리소스로의 트래픽을 프록시합니다. 에이전트는 특정 서비스를 실행하도록 구성된 teleport
바이너리의 인스턴스이며, 관리자는 자신의 인프라에 에이전트를 배포합니다.
에이전트는 사용자의 인증서를 Teleport Auth 서비스에서 유지 관리하는 인증 기관에 대해 검증합니다. 사용자의 Teleport 역할이 인증서에 인코딩되기 때문에, Teleport 에이전트는 사용자의 Teleport 역할을 확인하고 리소스 접근을 허용 또는 거부할 수 있습니다.
에이전트는 클러스터에 처음 가입할 때 Teleport Auth 서비스와 신뢰를 수립해야 하며, 에이전트가 사용하는 다양한 방법이 있습니다.
Teleport 에이전트 아키텍처에 대해 더 알아보세요. Teleport 에이전트 기능의 아키텍처에 대한 내용도 읽을 수 있습니다:
- 자동 에이전트 업데이트: Teleport 클러스터가 어떻게 에이전트가 최신 버전의
teleport
바이너리를 실행하는지 보장하는지에 대한 내용. - Kubernetes 애플리케이션 자동 검색: Teleport Discovery 서비스가 Kubernetes 클러스터를 쿼리하고 Teleport Auth 서비스에 애플리케이션을 등록합니다.
- 세션 녹화: Teleport 에이전트가 사용자 세션을 기록하고 데이터를 Auth 서비스에 전송하여 저장합니다.
머신 ID
머신 ID는 정기적으로 업데이트되는 자격 증명을 사용하여 자동화된 서비스가 Teleport로 보호된 인프라에 접근할 수 있도록 하는 Teleport 시스템입니다. 관리자들은 인간 사용자처럼 Teleport 역할이 부여된 Bot 사용자를 Teleport에 등록합니다.
tbot
바이너리의 인스턴스는 Teleport Auth 서비스와 통신하여 자격 증명을 지속적으로 새로 고칩니다. 에이전트와 마찬가지로, 관리자는 GitHub Actions와 같은 CI/CD 플랫폼을 포함하여 자신의 인프라에 tbot
인스턴스를 배포하고 클러스터에 조인해야 합니다.
머신 ID 아키텍처에 대한 자세한 정보를 읽어보세요.
신뢰할 수 있는 클러스터
셀프 호스팅된 Teleport 클러스터에서, Teleport Auth 서비스에 신뢰할 수 있는 클러스터를 등록함으로써 Teleport 클러스터 간의 접근을 연합할 수 있습니다. 사용자는 루트 클러스터로 인증하여 신뢰할 수 있는 클러스터(또는 리프 클러스터)의 리소스에 접근할 수 있습니다.
관리자가 리프 클러스터를 루트 클러스터에 조인할 때, 두 클러스터의 Auth 서비스 인스턴스가 신뢰를 확립하기 위해 통신합니다. 신뢰할 수 있는 클러스터 아키텍처에 대한 자세한 정보를 읽어보세요.