로컬에서 Teleport Terraform 프로바이더 실행하기
워크스테이션에서 Teleport Terraform 프로바이더를 사용하여 동적 리소스를 관리하는 방법.
이 가이드는 이미 Teleport에 로그인되어 있는 로컬 컴퓨터에서 Teleport Terraform 프로바이더를 실행하는 방법을 설명합니다. 이 가이드는 클라우드 VM, 온프레미스 서버, CI/CD 파이프라인과 같은 원격 환경에서 Teleport를 실행하는 방법은 다루지 않습니다. 해당 경우에는 전용 가이드를 참조하세요: CI 또는 클라우드 VM에서 Terraform 프로바이더 실행 서버에서 Terraform 프로바이더 실행 동작 방식 # 이 설정은 사용자의 로컬 자격 증명( tsh login 에서 가져온)을 사용하여 Teleport에 임시 봇을 생성하고, 봇으로 연결하여 단기간 자격 증명을 획득하며, 해당 자격 증명을 셸의 환경 변수에 내보냅니다. 이 동일한 터미널에서 실행되는 모든 Terraform 명령은 환경 변수에서 자격 증명을 읽고 임시 봇으로 Teleport에 연결할 수 있습니다. 사전 요구 사항 # 실행 중인 Teleport 클러스터 로컬 tsh/tctl 클라이언트 Bot 및 Token 리소스 생성을 허용하는 역할로 Teleport에 로컬 로그인되어 있어야 합니다. 이를 위해 기본 editor 역할을 사용할 수 있습니다. Teleport 클러스터에 연결할 수 있는지 확인하려면 tsh login 으로 로그인한 후 현재 자격 증명으로 tctl 명령을 실행할 수 있는지 확인하세요. 예를 들어: $ tsh login --proxy=teleport.example.com --user=email@example.com $ tctl status # Cluster (=teleport.url=) # Version (=teleport.version=) # CA pin (=presets.ca_pin=) 다음을 실행하여 버전 요구 사항(16.2 이상)을 충족하는지 확인하세요: $ tsh status Teleport v(=teleport.version=) go(=teleport.golang=) Proxy version: (=teleport.version=) Proxy: 1/2단계. 임시 봇 자격 증명 생성하기 # 이 단계에서는 tctl 과 로컬 자격 증명을 사용하여 Terraform 프로바이더용 임시 봇을 Teleport에 생성합니다. 봇은 1시간 동안 존재하며 TF 프로바이더가 지원하는 모든 리소스를 편집할 수 있는 기본 terraform-provider 역할이 부여됩니다. 그런 다음 tctl 은 임시 봇에 대한 자격 증명을 획득하여 셸의 환경 변수에 내보냅니다. 클러스터에서 관리 작업용 MFA 가 활성화되어 있으면 tctl 이 MFA를 묻습니다. 다음 명령을 실행합니다. 셸에서 자격 증명을 로드하는 데 필요하므로 eval 을 제거하지 마세요: $ eval "$(tctl terraform env)" 🔑 Detecting if MFA is required This is an admin-level action and requires MFA to complete Tap any security key Detected security key tap ⚙️
