Infograb logo
Teleport로 인프라 보호하기

Teleport를 사용하여 서버와 데이터베이스와 같은 인프라 리소스를 보호할 수 있습니다 Teleport Agents를 배포함으로써.

Teleport Agents는 인프라 내 리소스, 서버, 데이터베이스 및 Kubernetes 클러스터에 트래픽을 프록시하도록 구성된 Teleport 인스턴스입니다.

이 섹션에서는 Teleport Agents를 사용하여 인프라에 대한 안전한 액세스를 활성화하는 방법을 보여드립니다.

인프라 리소스 등록하기

Teleport를 사용하여 인프라 리소스를 보호하려면 Teleport Agents를 배포하고 리소스에 대한 트래픽을 프록시하도록 구성합니다.

Teleport Auto-Discovery로 시작하는 것을 권장하며, 여기서 Teleport Discovery Service는 서비스 발견 엔드포인트를 폴링하여 클러스터에 인프라 리소스를 등록합니다. 특정 유형의 인프라 리소스를 등록하는 방법에 대한 정보는 문서의 다음 섹션을 읽어보세요:

아키텍처 개요

이 섹션에서는 Teleport Agents가 Teleport 클러스터에서 어떻게 실행되는지에 대한 간략한 개요를 제공합니다. Teleport Agents의 아키텍처에 대한 자세한 내용은 Teleport Agent 아키텍처를 읽어보세요.

서비스

각 Teleport 프로세스는 하나 이상의 서비스를 실행할 수 있습니다. Teleport 인스턴스는 인스턴스의 구성 파일 내에서 활성화된 경우 서비스를 실행합니다. 기본적으로 어떤 서비스가 활성화되어 있는지와 특정 서비스를 활성화하는 방법은 Teleport 구성 참조를 참조하세요.

에이전트 풀

에이전트는 일반적으로 그들이 프록시하는 리소스와 동일한 사설 네트워크에서 실행됩니다. 에이전트는 Teleport 없이 리소스에 접근할 수 있는 유일한 클라이언트여야 합니다.

이 설정에서 에이전트는 Teleport Proxy Service에 연결하여 역 SSH 터널을 설정합니다. Proxy Service는 HTTPS 포트를 통해 공용 인터넷에 열려 있지만, 에이전트는 Proxy Service에 대한 아웃바운드 네트워크 액세스만 필요하며 방화벽 뒤에서 실행될 수 있습니다.

Teleport Proxy Service는 이러한 역 터널을 사용하여 Teleport가 지원하는 프로토콜로 트래픽을 사용 가능한 에이전트로 전달합니다. 에이전트는 RBAC 규칙을 적용하고 인프라의 리소스로 트래픽을 전달합니다.

Terraform을 사용하여 에이전트 풀 배포하기에 대한 가이드를 읽어보세요.

에이전트 연결하기

Teleport Agents는 Teleport SSH 서비스 및 Teleport 데이터베이스 서비스와 같은 하나 이상의 서비스를 실행합니다. 에이전트와 Teleport 클러스터 간의 신뢰를 구축하기 위해 여러 가지 가입 방법 중 하나를 사용합니다. 에이전트를 가입할 때, 에이전트에서 실행되는 서비스를 구성할 수 있습니다. 또한 에이전트에서 실행되는 서비스를 변경하기 위해 에이전트의 구성을 수정할 수 있습니다.

클러스터에 처음 가입하기

Teleport Agents는 클러스터에 가입하기 위해 Teleport Auth Service와 신뢰를 구축해야 합니다. 에이전트를 Teleport 클러스터에 가입시키는 방법은 여러 가지가 있으며, 해당 방법으로 환경에 대한 가입 프로세스를 자동화할 수 있습니다. 사용 가능한 가입 방법에 대한 자세한 내용은 서비스를 클러스터에 가입하기 가이드를 읽어보세요.

Teleport 프로세스가 처음 실행되면, 구성을 확인하여 어떤 서비스가 활성화되어 있는지 결정합니다. 각 서비스는 별도로 Teleport Auth Service에 연결하며, Auth Service는 해당 서비스에 대한 가입 토큰을 생성했는지 확인합니다. 그렇다면 Auth Service는 그 서비스에 서명된 에이전트 자격 증명을 발급합니다.

기존 에이전트에서 새 서비스 가입하기

Auth Service가 에이전트에 발급하는 자격 증명은 특정 서비스에 대해 서명됩니다. 에이전트에서 새 서비스를 실행하려면 해당 서비스에 대해 초기 가입 절차를 반복해야 합니다.

에이전트에서 실행되는 모든 서비스에 대해 새 가입 토큰을 생성합니다. 그런 다음 새 가입 토큰을 에이전트에 제공해야 합니다. 사용할 방법은 에이전트의 구성 파일 내에서 teleport.join_params 또는 teleport.auth_token의 값에 따라 달라집니다:

  • 구성 필드의 값이 토큰이면 토큰을 업데이트합니다.
  • 값이 파일 경로인 경우 해당 경로의 파일을 새 토큰을 참조하도록 편집합니다.

에이전트의 상태 디렉토리인 /var/lib/teleport를 삭제합니다. (에이전트의 구성 파일에서 teleport.data_dir 필드를 확인하세요.) 데이터 디렉토리가 없으면 에이전트는 기존 자격 증명을 읽는 대신 Auth Service에서 초기 자격 증명을 가져옵니다.

마지막으로, 에이전트를 재시작합니다.

Teleport Agents를 인프라스트럭처-코드 접근 방식을 통해 배포하는 것을 권장합니다. 예를 들어, Terraform 모듈 사용하기를 추천합니다. 에이전트가 실행하는 서비스를 수정하려면 인프라스트럭처-코드 프로젝트 내에서 에이전트 구성을 편집한 다음 에이전트를 재배포하면 됩니다.

Teleport 원문 보기