InfoGrab Docs

디렉터리 공유

요약

디렉터리 공유는 보안을 손상시키지 않고 로컬 머신과 원격 데스크톱 간에 파일을 이동하고 해당 파일에 변경 사항을 적용하기 쉽게 만드는 Teleport 기능입니다. 원격 데스크톱 세션 중에 로컬 워크스테이션의 폴더를 원격 데스크톱과 공유하도록 선택할 수 있습니다.

디렉터리 공유는 보안을 손상시키지 않고 로컬 머신과 원격 데스크톱 간에 파일을 이동하고 해당 파일에 변경 사항을 적용하기 쉽게 만드는 Teleport 기능입니다.

작동 방식#

원격 데스크톱 세션 중에 로컬 워크스테이션의 폴더를 원격 데스크톱과 공유하도록 선택할 수 있습니다. 세션 기간 동안 원격 데스크톱이나 워크스테이션의 폴더 변경 사항이 두 머신에 모두 반영됩니다.

공유 디렉터리를 사용하면 원격 Windows 데스크톱에서 로그 파일을 다운로드하거나, 구성 파일을 편집하거나, 다른 파일 조작을 편리하게 수행할 수 있습니다. Teleport 역할을 통해 특정 사용자에 대한 디렉터리 공유를 비활성화하고, 세션 녹화를 사용하여 세션 종료 후 공유 디렉터리의 활동을 감사할 수 있습니다.

사전 요구 사항#

  • A running Teleport cluster. If you want to get started with Teleport, sign up for a free trial or set up a demo environment.

  • The tctl and tsh clients.

    Installing `tctl` and `tsh` clients
    1. Determine the version of your Teleport cluster. The tctl and tsh clients must be at most one major version behind your Teleport cluster version. Send a GET request to the Proxy Service at /v1/webapi/find and use a JSON query tool to obtain your cluster version. Replace with the web address of your Teleport Proxy Service:

      $ TELEPORT_DOMAIN=
      $ TELEPORT_VERSION="$(curl -s https://$TELEPORT_DOMAIN/v1/webapi/find | jq -r '.server_version')"
      
    2. Follow the instructions for your platform to install tctl and tsh clients:

  • 클러스터에 등록된 하나 이상의 원격 데스크톱이 있는 Teleport 데스크톱 서비스. 데스크톱 액세스를 아직 구성하지 않은 경우, 이 가이드를 시작하기 전에 데스크톱 액세스 시작하기를 읽으세요.

  • 로컬 머신의 Teleport Connect 앱 또는 브라우저. 브라우저는 Teleport가 디렉터리 공유에 사용하는 File System Access API를 지원해야 합니다. Google Chrome, Brave, Microsoft Edge와 같은 최신 버전의 Chromium 기반 브라우저를 지원합니다.

    Brave 사용자는 brave://flags/#file-system-access-api로 이동하여 "사용"을 선택하여 File System Access API를 활성화할 수 있습니다.

    전체 호환성 표는 Mozilla Developer Network 문서에서 확인할 수 있습니다.

To check that you can connect to your Teleport cluster, sign in with tsh login, then verify that you can run tctl commands using your current credentials.

For example, run the following command, assigning to the domain name of the Teleport Proxy Service in your cluster and to your Teleport username:

$ tsh login --proxy= --user=
$ tctl status
# Cluster  (=teleport.url=)
# Version  (=teleport.version=)
# CA pin   (=presets.ca_pin=)

If you can connect to the cluster and run the tctl status command, you can use your current credentials to run subsequent tctl commands from your workstation. If you host your own Teleport cluster, you can also run tctl commands on the computer that hosts the Teleport Auth Service for full permissions.

1단계/4. 디렉터리 공유#

디렉터리를 공유하려면 Teleport 웹 UI 또는 Teleport Connect를 열고 데스크톱을 찾은 다음 '연결'을 클릭하여 세션을 시작하세요.

세션이 시작되면 화면 오른쪽 상단의 세 점 메뉴를 클릭하고 "디렉터리 공유"를 클릭합니다:

"디렉터리 공유" 버튼

공유 가능한 디렉터리 제한#

금지된 디렉터리(웹 UI만)#

보안 상의 이유로 웹 브라우저의 파일 시스템 액세스 API는 "Desktop" 및 "Documents"와 같이 일반적으로 사용되는 사용자 디렉터리의 표준 위치와 운영 체제 자체에서 주로 사용하는 중요한 디렉터리를 포함한 특정 디렉터리의 공유를 금지합니다.

차단된 사용자 디렉터리의 전체 목록은 File System Access 사양을 참조하세요.

이러한 차단된 사용자 디렉터리 내의 하위 디렉터리는 여전히 공유할 수 있습니다.

Note

이 제한은 웹 UI에만 영향을 미칩니다. Teleport Connect는 기본 파일 시스템 API를 사용하므로 로컬 머신의 모든 디렉터리를 공유할 수 있습니다.

긴 디렉터리 이름#

테스트 결과, 이름(모든 경로 세그먼트 포함)이 640자 이상인 디렉터리를 공유하면 예상치 못한 오류가 발생하는 것으로 확인되었습니다.

디렉터리 공유 후#

브라우저를 사용하여 디렉터리를 공유하는 경우, 변경할 권한을 부여하라는 메시지가 표시됩니다. 디렉터리 공유를 활성화하려면 이 메시지를 수락해야 합니다.

권한을 부여하면 원격 데스크톱의 파일 탐색기에 새 디렉터리가 표시됩니다. 디렉터리는 로컬 머신의 디렉터리와 동일한 이름을 가지지만 "on teleport"가 이름에 추가됩니다.

파일 탐색기의 공유 디렉터리

한 번에 하나의 디렉터리만 공유할 수 있습니다.

2단계/4. 디렉터리에서 파일 편집#

로컬 머신과 원격 데스크톱 간에 파일 및 파일 수정 사항을 쉽게 공유할 수 있습니다.

원격 측에서 편집#

원격 측의 공유 디렉터리에서 파일을 생성, 편집 또는 삭제하면, 이러한 변경 사항이 로컬 머신의 디렉터리에 적용됩니다.

원격 측의 공유 디렉터리로 파일을 이동하면 해당 파일이 로컬 측에도 나타납니다. 원격 측의 디렉터리 밖으로 파일을 이동하면 원격 데스크톱이 파일을 복사하여 공유 디렉터리 내에 유지합니다.

공유 디렉터리 내의 하위 디렉터리 간에 파일을 복사하여 붙여넣을 수도 있으며, 로컬 측에도 변경 사항이 반영됩니다.

Warning

디렉터리 공유는 원격 측의 공유 디렉터리 내 하위 디렉터리 간 파일 이동을 지원하지 않습니다.

로컬 측에서 편집#

로컬 머신의 공유 디렉터리에서 파일을 생성, 편집, 삭제하고 하위 디렉터리 간에 파일을 이동할 수 있습니다.

원격 측에서 로컬 변경 사항을 확인하려면 원격 디렉터리를 새로 고치거나 다시 열거나, 로컬에서 변경한 개별 파일을 다시 열어야 합니다. 이렇게 하면 원격 데스크톱이 로컬 머신에서 디렉터리의 현재 상태를 요청합니다.

파일 크기 제한#

공유 디렉터리로/에서 대용량 파일을 이동하는 성능은 네트워크 상태에 따라 달라지고, 파일 편집 성능은 파일을 편집하는 데 사용하는 프로그램에 따라 달라집니다.

공유 디렉터리 내의 파일 크기에는 제한이 없지만, 공유 디렉터리가 네트워크 대역폭과 시스템 리소스에 미치는 영향을 줄이기 위해 최대 32MB의 파일만 조작하는 것을 권장합니다.

3단계/4. 연결 끊기#

디렉터리 공유를 중지하려면 원격 데스크톱 세션을 종료하세요. 데스크톱 세션 오른쪽 상단의 세 점 메뉴로 이동하여 "연결 끊기"를 클릭합니다.

다음에 원격 데스크톱에서 세션을 시작하면 디렉터리가 더 이상 공유되지 않습니다. 콘텐츠에 액세스하려면 디렉터리를 다시 공유해야 합니다.

4단계/4. 디렉터리 공유 비활성화#

Teleport Auth Service는 데스크톱 세션을 시작하는 사용자의 역할에 따라 원격 데스크톱에서 디렉터리 공유에 대한 액세스를 부여합니다.

Teleport 역할은 기본적으로 디렉터리 공유를 활성화합니다. 사용자의 Teleport 역할 중 하나가 디렉터리 공유를 비활성화하면 해당 사용자에 대해 디렉터리 공유가 비활성화됩니다.

Teleport 사용자에 대한 디렉터리 공유를 비활성화하려면 role.yaml이라는 파일에 다음과 유사한 역할을 정의합니다:

kind: role
version: v5
metadata:
  name: "no-sharing"
spec:
  options:
    desktop_directory_sharing: false

역할을 생성합니다:

$ tctl create -f role.yaml

Assign the no-sharing role to your Teleport user by running the appropriate commands for your authentication provider:

다음 단계#

추가 자료#

디렉터리 공유는 원격 데스크톱에서 파일을 편집하는 강력한 도구이며, 사후 인시던트 회고를 수행하거나 의도하지 않은 사용을 조사할 수 있도록 포괄적인 감사 추적이 필요합니다. 데스크톱 액세스를 위한 세션 녹화 설정 방법을 알아보세요.

디렉터리 공유 외에도 Teleport 데스크톱 서비스를 사용하면 클립보드 내용을 원격 데스크톱과 공유할 수 있습니다. 클립보드 공유 사용 방법을 알아보세요.

디렉터리 공유 작동 방식#

브라우저에서#

디렉터리 공유는 로컬 워크스테이션의 브라우저와 원격 Windows 데스크톱을 포함합니다.

원격 측에서 디렉터리 공유는 원격 데스크톱 프로토콜(RDP) 내의 파일 시스템 관련 메시지를 활용합니다. 로컬 측에서 Teleport 웹 UI는 브라우저의 File System Access API를 사용하여 사용자가 선택한 로컬 디렉터리를 읽고 씁니다.

Teleport 웹 UI는 Teleport 프록시 서비스와 보안 WebSocket 세션을 설정하고, 이 서비스는 관련 Teleport 데스크톱 서비스 인스턴스와 트래픽을 주고받습니다.

Teleport 데스크톱 서비스는 Teleport 데스크톱 프로토콜(TDP)을 구현하여 웹 UI가 원격 데스크톱과 통신할 수 있도록 합니다. TDP는 WebSocket 프로토콜과 RDP 사이에 추상화 레이어를 생성합니다.

Teleport 데스크톱 서비스는 Teleport 웹 UI의 TDP 트래픽을 원격 데스크톱에 보낼 RDP 트래픽으로 변환합니다. 데스크톱 서비스는 또한 원격 데스크톱의 RDP 트래픽을 Teleport 웹 UI에 보낼 TDP 메시지로 변환합니다. 이러한 메시지를 기반으로 Teleport 웹 UI는 공유 디렉터리에 대한 정보를 광고하거나 수정을 수행합니다.

TDP에 대한 자세한 내용은 Teleport RFD 37에서, 디렉터리 공유의 사용 방법은 RFD 67에서 확인할 수 있습니다.

Teleport Connect에서#

디렉터리 공유는 로컬 워크스테이션의 Teleport Connect 앱과 원격 Windows 데스크톱을 포함합니다.

원격 측에서 디렉터리 공유는 원격 데스크톱 프로토콜(RDP) 내의 파일 시스템 관련 메시지를 활용합니다. 로컬 측에서 Teleport Connect는 Go의 기본 파일 시스템 API를 사용하여 사용자가 선택한 디렉터리를 읽고 씁니다.

Teleport Connect는 Teleport 프록시 서비스에 보안 mTLS 연결을 설정하고, 이 서비스는 관련 Teleport 데스크톱 서비스 인스턴스와 트래픽을 주고받습니다.

웹 UI와 마찬가지로 Teleport Connect는 Teleport 데스크톱 프로토콜(TDP)을 사용하여 Teleport 데스크톱 서비스와 통신하고, 이 서비스는 RDP를 통해 원격 데스크톱에 연결합니다.

디렉터리 공유

원문 보기
요약

디렉터리 공유는 보안을 손상시키지 않고 로컬 머신과 원격 데스크톱 간에 파일을 이동하고 해당 파일에 변경 사항을 적용하기 쉽게 만드는 Teleport 기능입니다. 원격 데스크톱 세션 중에 로컬 워크스테이션의 폴더를 원격 데스크톱과 공유하도록 선택할 수 있습니다.

디렉터리 공유는 보안을 손상시키지 않고 로컬 머신과 원격 데스크톱 간에 파일을 이동하고 해당 파일에 변경 사항을 적용하기 쉽게 만드는 Teleport 기능입니다.

작동 방식#

원격 데스크톱 세션 중에 로컬 워크스테이션의 폴더를 원격 데스크톱과 공유하도록 선택할 수 있습니다. 세션 기간 동안 원격 데스크톱이나 워크스테이션의 폴더 변경 사항이 두 머신에 모두 반영됩니다.

공유 디렉터리를 사용하면 원격 Windows 데스크톱에서 로그 파일을 다운로드하거나, 구성 파일을 편집하거나, 다른 파일 조작을 편리하게 수행할 수 있습니다. Teleport 역할을 통해 특정 사용자에 대한 디렉터리 공유를 비활성화하고, 세션 녹화를 사용하여 세션 종료 후 공유 디렉터리의 활동을 감사할 수 있습니다.

사전 요구 사항#

  • A running Teleport cluster. If you want to get started with Teleport, sign up for a free trial or set up a demo environment.

  • The tctl and tsh clients.

    Installing `tctl` and `tsh` clients
    1. Determine the version of your Teleport cluster. The tctl and tsh clients must be at most one major version behind your Teleport cluster version. Send a GET request to the Proxy Service at /v1/webapi/find and use a JSON query tool to obtain your cluster version. Replace with the web address of your Teleport Proxy Service:

      $ TELEPORT_DOMAIN=
      $ TELEPORT_VERSION="$(curl -s https://$TELEPORT_DOMAIN/v1/webapi/find | jq -r '.server_version')"
      
    2. Follow the instructions for your platform to install tctl and tsh clients:

  • 클러스터에 등록된 하나 이상의 원격 데스크톱이 있는 Teleport 데스크톱 서비스. 데스크톱 액세스를 아직 구성하지 않은 경우, 이 가이드를 시작하기 전에 데스크톱 액세스 시작하기를 읽으세요.

  • 로컬 머신의 Teleport Connect 앱 또는 브라우저. 브라우저는 Teleport가 디렉터리 공유에 사용하는 File System Access API를 지원해야 합니다. Google Chrome, Brave, Microsoft Edge와 같은 최신 버전의 Chromium 기반 브라우저를 지원합니다.

    Brave 사용자는 brave://flags/#file-system-access-api로 이동하여 "사용"을 선택하여 File System Access API를 활성화할 수 있습니다.

    전체 호환성 표는 Mozilla Developer Network 문서에서 확인할 수 있습니다.

To check that you can connect to your Teleport cluster, sign in with tsh login, then verify that you can run tctl commands using your current credentials.

For example, run the following command, assigning to the domain name of the Teleport Proxy Service in your cluster and to your Teleport username:

$ tsh login --proxy= --user=
$ tctl status
# Cluster  (=teleport.url=)
# Version  (=teleport.version=)
# CA pin   (=presets.ca_pin=)

If you can connect to the cluster and run the tctl status command, you can use your current credentials to run subsequent tctl commands from your workstation. If you host your own Teleport cluster, you can also run tctl commands on the computer that hosts the Teleport Auth Service for full permissions.

1단계/4. 디렉터리 공유#

디렉터리를 공유하려면 Teleport 웹 UI 또는 Teleport Connect를 열고 데스크톱을 찾은 다음 '연결'을 클릭하여 세션을 시작하세요.

세션이 시작되면 화면 오른쪽 상단의 세 점 메뉴를 클릭하고 "디렉터리 공유"를 클릭합니다:

"디렉터리 공유" 버튼

공유 가능한 디렉터리 제한#

금지된 디렉터리(웹 UI만)#

보안 상의 이유로 웹 브라우저의 파일 시스템 액세스 API는 "Desktop" 및 "Documents"와 같이 일반적으로 사용되는 사용자 디렉터리의 표준 위치와 운영 체제 자체에서 주로 사용하는 중요한 디렉터리를 포함한 특정 디렉터리의 공유를 금지합니다.

차단된 사용자 디렉터리의 전체 목록은 File System Access 사양을 참조하세요.

이러한 차단된 사용자 디렉터리 내의 하위 디렉터리는 여전히 공유할 수 있습니다.

Note

이 제한은 웹 UI에만 영향을 미칩니다. Teleport Connect는 기본 파일 시스템 API를 사용하므로 로컬 머신의 모든 디렉터리를 공유할 수 있습니다.

긴 디렉터리 이름#

테스트 결과, 이름(모든 경로 세그먼트 포함)이 640자 이상인 디렉터리를 공유하면 예상치 못한 오류가 발생하는 것으로 확인되었습니다.

디렉터리 공유 후#

브라우저를 사용하여 디렉터리를 공유하는 경우, 변경할 권한을 부여하라는 메시지가 표시됩니다. 디렉터리 공유를 활성화하려면 이 메시지를 수락해야 합니다.

권한을 부여하면 원격 데스크톱의 파일 탐색기에 새 디렉터리가 표시됩니다. 디렉터리는 로컬 머신의 디렉터리와 동일한 이름을 가지지만 "on teleport"가 이름에 추가됩니다.

파일 탐색기의 공유 디렉터리

한 번에 하나의 디렉터리만 공유할 수 있습니다.

2단계/4. 디렉터리에서 파일 편집#

로컬 머신과 원격 데스크톱 간에 파일 및 파일 수정 사항을 쉽게 공유할 수 있습니다.

원격 측에서 편집#

원격 측의 공유 디렉터리에서 파일을 생성, 편집 또는 삭제하면, 이러한 변경 사항이 로컬 머신의 디렉터리에 적용됩니다.

원격 측의 공유 디렉터리로 파일을 이동하면 해당 파일이 로컬 측에도 나타납니다. 원격 측의 디렉터리 밖으로 파일을 이동하면 원격 데스크톱이 파일을 복사하여 공유 디렉터리 내에 유지합니다.

공유 디렉터리 내의 하위 디렉터리 간에 파일을 복사하여 붙여넣을 수도 있으며, 로컬 측에도 변경 사항이 반영됩니다.

Warning

디렉터리 공유는 원격 측의 공유 디렉터리 내 하위 디렉터리 간 파일 이동을 지원하지 않습니다.

로컬 측에서 편집#

로컬 머신의 공유 디렉터리에서 파일을 생성, 편집, 삭제하고 하위 디렉터리 간에 파일을 이동할 수 있습니다.

원격 측에서 로컬 변경 사항을 확인하려면 원격 디렉터리를 새로 고치거나 다시 열거나, 로컬에서 변경한 개별 파일을 다시 열어야 합니다. 이렇게 하면 원격 데스크톱이 로컬 머신에서 디렉터리의 현재 상태를 요청합니다.

파일 크기 제한#

공유 디렉터리로/에서 대용량 파일을 이동하는 성능은 네트워크 상태에 따라 달라지고, 파일 편집 성능은 파일을 편집하는 데 사용하는 프로그램에 따라 달라집니다.

공유 디렉터리 내의 파일 크기에는 제한이 없지만, 공유 디렉터리가 네트워크 대역폭과 시스템 리소스에 미치는 영향을 줄이기 위해 최대 32MB의 파일만 조작하는 것을 권장합니다.

3단계/4. 연결 끊기#

디렉터리 공유를 중지하려면 원격 데스크톱 세션을 종료하세요. 데스크톱 세션 오른쪽 상단의 세 점 메뉴로 이동하여 "연결 끊기"를 클릭합니다.

다음에 원격 데스크톱에서 세션을 시작하면 디렉터리가 더 이상 공유되지 않습니다. 콘텐츠에 액세스하려면 디렉터리를 다시 공유해야 합니다.

4단계/4. 디렉터리 공유 비활성화#

Teleport Auth Service는 데스크톱 세션을 시작하는 사용자의 역할에 따라 원격 데스크톱에서 디렉터리 공유에 대한 액세스를 부여합니다.

Teleport 역할은 기본적으로 디렉터리 공유를 활성화합니다. 사용자의 Teleport 역할 중 하나가 디렉터리 공유를 비활성화하면 해당 사용자에 대해 디렉터리 공유가 비활성화됩니다.

Teleport 사용자에 대한 디렉터리 공유를 비활성화하려면 role.yaml이라는 파일에 다음과 유사한 역할을 정의합니다:

kind: role
version: v5
metadata:
  name: "no-sharing"
spec:
  options:
    desktop_directory_sharing: false

역할을 생성합니다:

$ tctl create -f role.yaml

Assign the no-sharing role to your Teleport user by running the appropriate commands for your authentication provider:

다음 단계#

추가 자료#

디렉터리 공유는 원격 데스크톱에서 파일을 편집하는 강력한 도구이며, 사후 인시던트 회고를 수행하거나 의도하지 않은 사용을 조사할 수 있도록 포괄적인 감사 추적이 필요합니다. 데스크톱 액세스를 위한 세션 녹화 설정 방법을 알아보세요.

디렉터리 공유 외에도 Teleport 데스크톱 서비스를 사용하면 클립보드 내용을 원격 데스크톱과 공유할 수 있습니다. 클립보드 공유 사용 방법을 알아보세요.

디렉터리 공유 작동 방식#

브라우저에서#

디렉터리 공유는 로컬 워크스테이션의 브라우저와 원격 Windows 데스크톱을 포함합니다.

원격 측에서 디렉터리 공유는 원격 데스크톱 프로토콜(RDP) 내의 파일 시스템 관련 메시지를 활용합니다. 로컬 측에서 Teleport 웹 UI는 브라우저의 File System Access API를 사용하여 사용자가 선택한 로컬 디렉터리를 읽고 씁니다.

Teleport 웹 UI는 Teleport 프록시 서비스와 보안 WebSocket 세션을 설정하고, 이 서비스는 관련 Teleport 데스크톱 서비스 인스턴스와 트래픽을 주고받습니다.

Teleport 데스크톱 서비스는 Teleport 데스크톱 프로토콜(TDP)을 구현하여 웹 UI가 원격 데스크톱과 통신할 수 있도록 합니다. TDP는 WebSocket 프로토콜과 RDP 사이에 추상화 레이어를 생성합니다.

Teleport 데스크톱 서비스는 Teleport 웹 UI의 TDP 트래픽을 원격 데스크톱에 보낼 RDP 트래픽으로 변환합니다. 데스크톱 서비스는 또한 원격 데스크톱의 RDP 트래픽을 Teleport 웹 UI에 보낼 TDP 메시지로 변환합니다. 이러한 메시지를 기반으로 Teleport 웹 UI는 공유 디렉터리에 대한 정보를 광고하거나 수정을 수행합니다.

TDP에 대한 자세한 내용은 Teleport RFD 37에서, 디렉터리 공유의 사용 방법은 RFD 67에서 확인할 수 있습니다.

Teleport Connect에서#

디렉터리 공유는 로컬 워크스테이션의 Teleport Connect 앱과 원격 Windows 데스크톱을 포함합니다.

원격 측에서 디렉터리 공유는 원격 데스크톱 프로토콜(RDP) 내의 파일 시스템 관련 메시지를 활용합니다. 로컬 측에서 Teleport Connect는 Go의 기본 파일 시스템 API를 사용하여 사용자가 선택한 디렉터리를 읽고 씁니다.

Teleport Connect는 Teleport 프록시 서비스에 보안 mTLS 연결을 설정하고, 이 서비스는 관련 Teleport 데스크톱 서비스 인스턴스와 트래픽을 주고받습니다.

웹 UI와 마찬가지로 Teleport Connect는 Teleport 데스크톱 프로토콜(TDP)을 사용하여 Teleport 데스크톱 서비스와 통신하고, 이 서비스는 RDP를 통해 원격 데스크톱에 연결합니다.