ssh

ssh

vault ssh 명령은 대상 머신과 SSH 연결을 수립합니다. 이 명령은 SSH 시크릿 엔진 중 하나를 사용해 인증하고 호스트에 대한 SSH 연결을 자동으로 수립합니다. 이 작업에는 SSH 시크릿 엔진이 마운트되고 구성되어 있어야 합니다.

출처: 문서

본문

사용자는 로컬에 ssh가 설치되어 있어야 합니다. 이 명령은 적절한 명령으로 ssh를 exec하여 "SSH와 유사한" 일관된 경험을 제공합니다.

예제 (Examples)

OTP 모드로 SSH를 연결합니다(완전한 자동화에는 sshpass 필요):

$ vault ssh -mode=otp -role=my-role [email protected]

CA 모드로 SSH를 연결합니다:

$ vault ssh -mode=ca -role=my-role [email protected]

호스트 키 검증과 함께 CA 모드로 SSH를 연결합니다:

$ vault ssh \
    -mode=ca \
    -role=my-role \
    -host-key-mount-point=host-signer \
    -host-key-hostnames=example.com \
    [email protected]

사용 가능한 각 SSH 인증 메서드의 단계별 가이드와 지침은 해당 SSH 시크릿 엔진 문서를 참고하세요.

사용법 (Usage)

모든 명령에 포함되는 표준 플래그 세트 외에 다음 플래그를 사용할 수 있습니다.

출력 옵션 (Output options)

  • -field (string: "")-format 지시문에 지정된 형식으로 주어진 이름의 필드만 인쇄합니다. 출력 끝에 줄바꿈이 없어서 다른 프로세스로 파이프하기에 좋습니다.
  • -format (string: "table") — 출력을 주어진 형식으로 인쇄합니다. 유효한 형식은 "table", "json", "yaml" 입니다. VAULT_FORMAT 환경 변수로도 지정할 수 있습니다.

SSH 옵션 (SSH options)

  • -mode (string: "") — 인증 모드의 이름입니다(ca, dynamic, otp).
  • -mount-point (string: "ssh/") — SSH 시크릿 엔진의 마운트 지점입니다.
  • -no-exec (bool: false) — 생성된 자격 증명을 인쇄하되, 연결은 수립하지 않습니다.
  • -role (string: "") — 키를 생성하는 데 사용할 역할의 이름입니다.
  • -strict-host-key-checking (string: "") — SSH 구성 옵션 "StrictHostKeyChecking"에 사용할 값입니다. 기본값은 ask입니다. VAULT_SSH_STRICT_HOST_KEY_CHECKING 환경 변수로도 지정할 수 있습니다.
  • -user-known-hosts-file (string: "~/.ssh/known_hosts") — SSH 구성 옵션 "UserKnownHostsFile"에 사용할 값입니다. VAULT_SSH_USER_KNOWN_HOSTS_FILE 환경 변수로도 지정할 수 있습니다.

CA 모드 옵션 (CA mode options)

  • -host-key-hostnames (string: "*") — CA에 위임할 호스트 이름 목록입니다. 기본값은 모든 도메인과 IP를 허용합니다. 쉼표로 구분된 값 목록으로 지정합니다. VAULT_SSH_HOST_KEY_HOSTNAMES 환경 변수로도 지정할 수 있습니다.
  • -host-key-mount-point (string: "") — 호스트 키가 서명되는 SSH 시크릿 엔진의 마운트 지점입니다. 값이 주어지면 Vault는 제공된 마운트 지점의 CA에 위임하는 사용자 지정 "known_hosts" 파일을 생성해, 제공된 CA에 대해 SSH 연결의 호스트 키를 검증합니다. 기본적으로 호스트 키는 사용자의 로컬 "known_hosts" 파일에 대해 검증됩니다. 이 플래그는 엄격한 호스트 키 검사를 강제하고 사용자 지정 known hosts 파일은 무시합니다. VAULT_SSH_HOST_KEY_MOUNT_POINT 환경 변수로도 지정할 수 있습니다.
  • -private-key-path (string: "~/.ssh/id_rsa") — 인증에 사용할 SSH 개인 키의 경로입니다. -public-key-path 에 해당하는 개인 키여야 합니다.
  • -public-key-path (string: "~/.ssh/id_rsa.pub") — 서명을 위해 Vault로 보낼 SSH 공개 키의 경로입니다.

더 알아보기 (Learn more)