Infograb logo
JetBrains SFTP

JetBrain의 IDE인 PyCharm, GoLand, IntelliJ 등은 SFTP 프로토콜을 사용하여 원격 서버에서 파일을 탐색, 복사 및 편집할 수 있습니다. Teleport를 IDE와 통합하여 서드파티 클라이언트 없이도 원격 머신으로 파일을 복사할 수 있습니다.

이 가이드는 Teleport와 JetBrains IDE를 사용하여 SFTP로 파일에 접근하는 방법을 설명합니다.

필수 조건

  • 실행 중인 Teleport 클러스터 버전 17.0.0-dev 이상. Teleport를 시작하려면, 가입하여 무료 체험판에 등록하거나 데모 환경 설정하세요.

  • tsh 클라이언트 도구.

    tsh 다운로드에 대한 지침은 설치 를 방문하세요.

  • PyCharm, IntelliJ, GoLand 등과 같은 JetBrains IDE. JetBrains IDE의 전체 목록은 제품에서 확인하세요.
  • 하나 이상의 Teleport SSH 서비스 인스턴스. 아직 설정하지 않았다면, 서버 액세스 시작하기 가이드를 읽어주세요.

1/3단계. 첫 설정

로컬 SSH 클라이언트를 구성하여 서버에 접근하고, --proxy 플래그를 Teleport 프록시 서비스의 주소에 지정합니다 (예: Teleport Cloud 사용자의 경우 mytenant.teleport.sh ).

프록시에 로그인하기:

tsh login --proxy proxy.foo.example.com --user alice

프록시용 OpenSSH 구성을 생성하기:

tsh config --proxy proxy.foo.example.com

결과로 생성된 구성 스니펫을 아래 경로에 있는 SSH 구성 파일에 추가합니다:

$HOME/.ssh/config

%UserProfile%\.ssh\config

Warning

Windows에서 PowerShell을 사용하여 SSH 구성을 작성할 경우, 일반 쉘 리디렉션이 잘못된 인코딩으로 파일을 쓸 수 있습니다. 적절하게 작성되도록 하려면 다음을 시도하세요:

tsh.exe config | out-file .ssh\config -encoding utf8 -append

원하는 서버에 다음 명령어로 연결할 수 있어야 하며, user 를 서버에서 사용할 사용자 이름으로 대체합니다:

ssh user@[server name].[cluster name]

이전에 생성한 SSH 구성은 SSH 클라이언트에게 Teleport 클러스터의 서버에 접근하기 위해 tsh proxy ssh 를 실행하도록 지시합니다. 그러나 yourtenant.teleport.sh 에서 Teleport 프록시 서비스에 대해 ssh 명령을 실행하면 오류가 발생합니다.

Note

OpenSSH 서버의 포트 번호를 포함해야 하며, 기본적으로 22 입니다. 그렇지 않으면 오류가 발생할 수 있습니다. 더 자세한 정보는 OpenSSH 가이드를 참조하세요. OpenSSH 서버에 연결하는 예:

ssh -p 22 user@[server name].[cluster name]

2/3단계. JetBrains IDE 구성

IDE를 연 후 도구 -> 배포 -> 원격 호스트 탐$1 으로 이동합니다.

그런 다음, 왼쪽 상단의 더하기 기호를 클릭하여 새 서버를 추가합니다.

서버 추가

새 서버의 이름을 입력합니다.

위 그림처럼 SSH 구성 옆에 있는 세 개의 점을 클릭합니다.

왼쪽 상단의 더하기 기호를 클릭하여 새 구성을 생성하고 다음 정보를 제공합니다:

  • 호스트 - Teleport 서버의 이름.
  • 포트 - Teleport 서버의 SSH 포트 (3022 가 기본값이며, OpenSSH 서버의 경우 22 ).
  • 사용자 이름 - 시스템 사용자 이름.

인증 유$1 으로 OpenSSH 구성 및 인증 에이전$1 를 선택합니다. 다음으로 연결 테스$1 를 클릭할 수 있습니다.

성공적으로 연결됨

3/3단계. 원격 호스트 탐색

SSH 구성 창을 닫은 후 IDE에서 Remote Host 메뉴를 볼 수 있어야 합니다.

Note

Teleport의 인증서는 꽤 빨리 만료되며, 그 후 SSH 시도는 다음과 같은 오류와 함께 실패합니다:

alice@proxy.foo.example.com: Permission denied (publickey).
ERROR: exit status 255

kex_exchange_identification: Connection closed by remote host

이 오류가 발생하면 tsh login 을 다시 실행하여 로컬 인증서를 새로 고치십시오.

다음 단계

OpenSSH 클라이언트 사용

이 가이드는 tsh config 를 사용합니다; 추가 정보는 전용 가이드를 참조하십시오.

추가 읽기

Teleport 원문 보기