Infograb logo
비밀번호 없음

비밀번호 없음은 WebAuthn을 활용하여 Teleport에 대한 비밀번호 없는 및 사용자 이름 없는 인증을 제공합니다.

전제 조건

  • 실행 중인 Teleport 클러스터 버전 17.0.0-dev 이상. Teleport를 시작하려면 가입하여 무료 평가판을 이용하거나 데모 환경 설정 방법을 확인하십시오.

  • tctl 관리자 도구와 tsh 클라이언트 도구.

    tctltsh 다운로드 방법에 대한 지침은 설치를 방문하십시오.

  • Teleport는 WebAuthn에 대해 구성되어야 합니다. 두 번째 인증 수단: WebAuthn 가이드를 참조하세요.
  • WebAuthn 및 레지던트 키를 지원하는 하드웨어 장치가 필요합니다. 대안으로, 생체 인식 / Touch ID가 있는 Mac 또는 Windows Hello(Windows 10 19H1 이상)를 지원하는 장치를 사용할 수 있습니다.
  • WebAuthn 지원을 갖춘 웹 브라우저가 필요합니다. 브라우저가 WebAuthn을 지원하는지 확인하려면 WebAuthn 호환성 페이지를 확인하세요.
  • Touch ID에 필요한 tsh 는 서명 및 공증된 버전이어야 합니다. 이는 Homebrew에서 설치한 버전이나 소스에서 컴파일한 버전이 작동하지 않음을 의미합니다. macOS tsh 설치 프로그램 다운로드.
  • 연결이 가능한지 확인하기 위해 tsh login 으로 로그인한 다음, 현재 자격 증명을 사용하여 tctl 명령어를 실행할 수 있는지 확인하십시오. 예를 들어:
    tsh login --proxy=teleport.example.com --user=email@example.com
    tctl status

    클러스터 teleport.example.com

    버전 17.0.0-dev

    CA 핀 sha256:abdc1245efgh5678abdc1245efgh5678abdc1245efgh5678abdc1245efgh5678

    클러스터에 연결할 수 있고 tctl status 명령어를 실행할 수 있다면, 현재 자격 증명을 사용하여 워크스테이션에서 후속 tctl 명령어를 실행할 수 있습니다.
    자신의 Teleport 클러스터를 호스팅하는 경우, Teleport Auth Service를 호스팅하는 컴퓨터에서 전체 권한으로 tctl 명령어를 실행할 수도 있습니다.

WebAuthn을 지원하는 Teleport 클러스터는 자동으로 비밀번호 없이 작동할 수 있습니다.

1/2단계. 등록

tsh 를 사용하여 비밀번호 없는 장치를 등록하세요:

tsh mfa add

장치 유형 선택 [TOTP, WEBAUTHN, TOUCHID]: WEBAUTHN

장치 이름 입력: bio

비밀번호 없는 로그인 허용 [YES, NO]: YES

*등록된* 보안 키를 탭하세요

*새로운* 보안 키를 탭하세요

MFA 장치 "bio"가 추가되었습니다.

장치 유형으로 WEBAUTHN 또는 TOUCHID 중 하나를 선택할 수 있습니다. "비밀번호 없는 로그인 허용"에 대해 YES 로 대답해야 합니다.

하드웨어 장치를 사용하는 경우 비밀번호 없는 등록은 레지던트 키 슬롯을 차지합니다. 레지던트 키, 즉 발견 가능한 자격 증명은 인증기(즉, 인증에 사용되는 장치)의 지속적 메모리에 저장됩니다. 반면, MFA 키는 인증기에 의해 암호화되어 Teleport Auth Server에 저장됩니다. 장치 유형에 관계없이 비밀번호 없는 등록은 일반 MFA에도 사용될 수 있습니다.

중요

비밀번호 없이 전적으로 의존할 계획이라면 복수의 장치를 등록하는 것이 좋습니다. 휴대 가능한 하드웨어 장치가 이상적이며, tsh , Teleport Web UI 및 다양한 컴퓨터 간에 공유할 수 있습니다.

Touch ID 등록은 애플리케이션별로 격리됩니다. tsh 에 대한 Touch ID 등록은 Chrome 또는 Safari에서 진행한 등록과 다릅니다. 여러 애플리케이션에서 동일한 Touch ID 장치를 등록하여 모든 애플리케이션에서 비밀번호 없는 접근을 얻을 수 있습니다.

2/2단계. 인증

비밀번호 없는 자격 증명을 사용하여 인증하세요:

tsh login --proxy=example.com --auth=passwordless

보안 키를 탭하세요

> 프로필 URL: https://example.com

사용자로 로그인됨: codingllama

클러스터: example.com

역할: access, editor

로그인: codingllama

Kubernetes: 사용 가능

유효 기간: 2021-10-04 23:32:29 -0700 PDT [유효 기간 12시간 0분 0초]

확장 프로그램: permit-agent-forwarding, permit-port-forwarding, permit-pty

tsh login --proxy=example.com --auth=passwordless

보안 키를 탭하세요

> 프로필 URL: https://example.com

사용자로 로그인됨: codingllama

클러스터: example.com

역할: access, editor, reviewer

로그인: codingllama

Kubernetes: 사용 가능

유효 기간: 2021-10-04 23:32:29 -0700 PDT [유효 기간 12시간 0분 0초]

확장 프로그램: permit-agent-forwarding, permit-port-forwarding, permit-pty

완전한 비밀번호 없는 클러스터는 기본적으로 비밀번호 없는 로그인을 제공하므로 --auth=passwordless 가 필요하지 않습니다. 비밀번호 없음을 기본값으로 활성화하는 방법은 다음 섹션을 참조하세요.

웹 UI

Teleport 웹 UI에서도 비밀번호 없는 로그인 실행이 가능합니다. 그렇게 하려면 웹 UI에서 비밀번호 없는 링크를 찾아보세요.

선택 사항: 기본적으로 비밀번호 없는 로그인 활성화

비밀번호 없는 로그인을 선호하는 사용자는 클러스터에서 기본적으로 비밀번호 없는 로그인을 활성화할 수 있습니다.
이 구성은 비밀번호 없는 장치가 등록되지 않은 사용자에게도 Teleport의 동작을 변경하므로, 기존 사용자는 비밀번호 없는 첫 등록을 위해 tsh login --proxy=example.com --auth=local 을 사용하여 인증해야 할 수 있습니다.

기본적으로 비밀번호 없는 로그인을 활성화하려면, 클러스터 구성에 connector_name: passwordless 를 추가하세요.

다음 명령어를 사용하여 클러스터 인증 선호 구성 편집:

tctl edit cluster_auth_preference

구성이 아래와 같이 connector_name 필드를 포함하고 있는지 확인하세요:

kind: cluster_auth_preference
version: v2
metadata:
  name: cluster-auth-preference
spec:
  type: local
  second_factor: "on"
  webauthn:
    rp_id: example.com
  connector_name: passwordless # 기본적으로 비밀번호 없는 로그인

문제 해결

"비밀번호 없는 로그인 허용"이 나타나지 않음

tsh mfa add 에서 "비밀번호 없는 로그인 허용" 프롬프트가 보이지 않으면, 오래된 버전의 tsh 를 사용하고 있을 수 있습니다. 최신 tsh설치 페이지에서 다운로드하세요.

하드웨어 장치 사용 불가

tsh 는 비밀번호 없는 등록을 위해 특정 기능을 갖춘 하드웨어 장치에 대해서만 프롬프트를 표시합니다. 장치가 깜박이지 않는 경우 비밀번호 없는 로그인을 지원하지 않을 수 있습니다.

아래는 요구 사항의 비포괄적인 목록입니다:

  • 장치는 WebAuthn (때때로 FIDO2 또는 CTAP2라고도 불림)을 지원해야 합니다.
  • 장치는 사용자 검증 (생체 인식 또는 PIN)을 수행할 수 있어야 합니다.
  • 장치에는 PIN이 설정되어 있어야 합니다.
  • 장치에는 지문이 등록되어 있어야 합니다 (생체 인식일 경우). 이는 일반적으로 PIN 지문을 의미합니다.

tsh 는 하드웨어 장치에 접근하기 위해 내장된 libfido2에 의존합니다. Linux에서 실행 중이라면, 장치에 접근하기 위한 필요한 udev 규칙이 없을 수 있습니다. libfido2 설치 지침을 따르세요. 이 지침이 필요한 udev 규칙을 제공할 수 있습니다.

Touch ID 사용 불가

Touch ID에 문제가 있는 경우, 최신 독립형 버전의 tsh 를 사용하고 있는지 확인하세요. macOS tsh 설치 프로그램을 다운로드하세요.

Touch ID 지원은 Touch ID 센서와 Secure Enclave가 있는 Mac이 필요합니다.

tsh touchid diag 명령어를 실행하여 요구 사항을 확인할 수 있습니다. 기능이 있는 장치와 tsh 바이너리는 아래와 유사한 출력을 보여야 합니다:

tsh touchid diag

컴파일 지원? true

서명 여부? true

권한? true

LAPolicy 테스트 통과? true

Secure Enclave 테스트 통과? true

Touch ID 활성화? true

Windows Webauthn 사용 불가

tsh 에 대한 Windows Webauthn 지원은 Windows 10 19H1 이상이 필요합니다.

tsh webauthnwin diag 명령어를 실행하여 요구 사항을 확인할 수 있습니다. 기능이 있는 장치와 tsh 바이너리는 아래와 같은 출력을 보여야 합니다:

tsh webauthnwin diag

WebauthWin 사용 가능: true

컴파일 지원: true

DLL API 버전: 4

플랫폼 UV 여부: true

등록 성공: true

로그인 성공: true

비밀번호 없는 로그인 비활성화

클러스터에 대한 비밀번호 없는 액세스를 금지하려면, 구성에 passwordless: false 를 추가하세요. 다음 명령어를 사용하여 클러스터 인증 선호를 편집하세요:

tctl edit cluster_auth_preference

편집기에서, cluster_auth_preference 가 아래와 같이 passwordless 필드를 포함하고 있는지 확인하세요:

kind: cluster_auth_preference
version: v2
metadata:
  name: cluster-auth-preference
spec:
  type: local
  second_factor: "on"
  webauthn:
    rp_id: example.com
  passwordless: false # 비밀번호 없는 로그인 비활성화

변경 사항을 적용하려면 편집기를 저장하고 닫으세요.

다중 인증 (MFA) 장치가 패스키가 된 이유는 무엇인가요?

MFA 인증기가 갑자기 패스키로 나열되기 시작했다면, 그것은 항상 패스키였기 때문입니다. 특정 장치나 애플리케이션(예: Chrome 또는 Safari Touch ID 키)은 Teleport의 지침과 관계없이 항상 패스키로 생성됩니다.

인증기가 등록 중 credProps 확장으로 응답하거나, 성공적인 비밀번호 없는 로그인을 위해 사용되는 경우, Teleport는 이전에 그렇지 않았다면 자동으로 이를 패스키로 표시합니다.

Teleport 원문 보기