Azure Bastion을 사용하여 Linux VM에 대한 SSH 연결 만들기

이 문서에서는 Azure Portal을 통해 직접 Azure 가상 네트워크에 있는 Linux VM에 대한 SSH 연결을 안전하고 원활하게 만드는 방법을 보여 줍니다. Azure Bastion을 사용하는 경우 VM에는 클라이언트, 에이전트 또는 추가 소프트웨어가 필요하지 않습니다.

Azure Bastion은 프로비저닝된 가상 네트워크의 모든 VM에 대한 안전한 연결을 제공합니다. Azure Bastion을 사용하면 RDP/SSH를 사용한 보안 액세스 기능을 제공하면서 외부 환경에는 RDP/SSH 포트가 노출되지 않게 가상 머신을 보호할 수 있습니다. 자세한 내용은 Azure Bastion이란? 개요 문서를 참조하세요.

SSH를 사용하여 Linux 가상 머신에 연결할 때 인증에 사용자 이름/암호 및 SSH 키를 모두 사용할 수 있습니다. SSH 프라이빗 키는 "-----BEGIN RSA PRIVATE KEY-----"로 시작하고 "-----END RSA PRIVATE KEY-----"로 끝나는 형식이어야 합니다.

필수 조건

VM이 있는 가상 네트워크에 대해 Azure Bastion 호스트를 설정했는지 확인합니다. 자세한 내용은 Azure Bastion 호스트 만들기를 참조하세요. Bastion 서비스가 가상 네트워크에 프로비전되고 배포되면 이를 사용하여 이 가상 네트워크의 모든 VM에 연결할 수 있습니다.

사용 가능한 연결 설정 및 기능은 사용 중인 Bastion SKU에 따라 달라집니다. Bastion 배포에서 필요한 SKU를 사용하고 있는지 확인합니다.

  • SKU 계층당 사용 가능한 기능 및 설정을 보려면 Bastion 개요 문서의 SKU 및 기능 섹션을 참조하세요.
  • Bastion 배포의 SKU 계층을 확인하고 필요한 경우 업그레이드하려면 Bastion SKU 업그레이드를 참조하세요.

필요한 역할

연결하려면 다음 역할이 필요합니다.

  • 가상 머신에 대한 읽기 권한자 역할
  • 가상 머신의 개인 IP를 사용하는 NIC에 대한 읽기 권한자 역할
  • Azure Bastion 리소스에 대한 읽기 권한자 역할
  • 대상 가상 머신의 가상 네트워크에 대한 읽기 권한자 역할(Bastion 배포가 피어링된 가상 네트워크에 있는 경우).

Ports

SSH를 통해 Linux VM에 연결하려면 VM에 다음 포트가 열려 있어야 합니다.

  • 인바운드 포트: SSH(22) 또는
  • 인바운드 포트: 사용자 지정 값(Azure Bastion을 통해 VM에 연결할 때 이 사용자 지정 포트를 지정해야 함) 이 설정에는 표준 SKU 계층이 필요합니다.

Bastion 연결 페이지

  1. Azure Portal에서 연결하려는 가상 머신으로 이동합니다. 가상 머신에 대한 개요 페이지에서 연결을 선택한 다음, 드롭다운에서 Bastion을 선택하면 Bastion 페이지가 열립니다.

    Screenshot shows the Overview page for a virtual machine.

  2. Bastion 페이지에서 구성할 수 있는 설정은 베스천 호스트가 사용하도록 구성된 Bastion SKU 계층에 따라 달라집니다.

    • 표준 SKU를 사용하는 경우 연결 설정 값(포트 및 프로토콜)이 표시되고 구성할 수 있습니다.

      Screenshot shows connection settings for the Standard SKU.

    • 기본 SKU를 사용하는 경우 연결 설정 값을 구성할 수 없습니다. 대신 연결에서 SSH 및 포트 22의 기본 설정을 사용합니다.

      Screenshot shows connection settings for the Basic SKU.

    • 사용 가능한 인증 유형을 보고 선택하려면 드롭다운을 사용합니다.

      Screenshot shows authentication type settings.

  3. 이 문서의 다음 섹션을 사용하여 인증 설정을 구성하고 VM에 연결합니다.

암호 인증

다음 단계를 사용하여 사용자 이름 및 암호로 인증합니다.

Screenshot shows Password authentication.

  1. 사용자 이름 및 암호를 사용하여 인증하려면 다음 설정을 구성합니다.

    • 연결 설정(표준 SKU에만 해당)

      • 프로토콜: SSH를 선택합니다.
      • 포트: 포트 번호를 지정합니다.
    • 인증 유형: 드롭다운에서 암호를 선택합니다.

    • 사용자 이름: 사용자 이름을 입력합니다.

    • 암호: 암호를 입력합니다.

  2. 새 브라우저 탭에서 VM을 작업하려면 새 브라우저 탭에서 열기를 선택합니다.

  3. 연결을 클릭하여 VM에 연결합니다.

암호 인증 - Azure Key Vault

다음 단계를 사용하여 Azure Key Vault의 암호로 인증합니다.

Screenshot shows password from Azure Key Vault authentication.

  1. Azure Key Vault의 암호를 사용하여 인증하려면 다음 설정을 구성합니다.

    • 연결 설정(표준 SKU에만 해당)

      • 프로토콜: SSH를 선택합니다.
      • 포트: 포트 번호를 지정합니다.
    • 인증 유형: 드롭다운에서 Azure Key Vault의 암호를 선택합니다.

    • 사용자 이름: 사용자 이름을 입력합니다.

    • 구독: 사용할 구독을 선택합니다.

    • Azure Key Vault: Key Vault를 선택합니다.

    • Azure Key Vault Secret: SSH 프라이빗 키의 값이 포함된 Key Vault 비밀을 선택합니다.

      • Azure Key Vault 리소스를 설정하지 않은 경우 키 자격 증명 모음 만들기를 참조하고 SSH 프라이빗 키를 새 키 자격 증명 비밀의 값으로 저장합니다.

      • 키 자격 증명 리소스에 저장된 비밀에 대한 ListGet 권한이 있는지 확인합니다. 키 자격 증명 모음 리소스에 대한 액세스 정책을 할당하고 수정하려면 키 자격 증명 모음 액세스 정책 할당을 참조하세요.

        참고 항목

        PowerShell 또는 Azure CLI 환경을 사용하여 SSH 프라이빗 키를 Azure Key Vault에 비밀로 저장하세요. Azure Key Vault 포털 환경을 통해 프라이빗 키를 저장하면 형식 지정을 방해하여 로그인에 실패합니다. 포털 환경을 사용하여 프라이빗 키를 비밀로 저장했고 더 이상 원본 프라이빗 키 파일에 액세스할 수 없는 경우 SSH 키 업데이트를 참조하여 새 SSH 키 쌍으로 대상 VM에 대한 액세스를 업데이트합니다.

  2. 새 브라우저 탭에서 VM을 작업하려면 새 브라우저 탭에서 열기를 선택합니다.

  3. 연결을 클릭하여 VM에 연결합니다.

SSH 프라이빗 키 인증 - 로컬 파일

로컬 파일에서 SSH 프라이빗 키를 사용하여 인증하려면 다음 단계를 사용합니다.

Screenshot shows private key from local file authentication.

  1. 로컬 파일에서 프라이빗 키를 사용하여 인증하려면 다음 설정을 구성합니다.

    • 연결 설정(표준 SKU에만 해당)

      • 프로토콜: SSH를 선택합니다.
      • 포트: 포트 번호를 지정합니다.
    • 인증 유형: 드롭다운에서 로컬 파일의 SSH 프라이빗 키를 선택합니다.

    • 사용자 이름: 사용자 이름을 입력합니다.

    • 로컬 파일: 로컬 파일을 선택합니다.

    • SSH 암호: 필요한 경우 SSH 암호를 입력합니다.

  2. 새 브라우저 탭에서 VM을 작업하려면 새 브라우저 탭에서 열기를 선택합니다.

  3. 연결을 클릭하여 VM에 연결합니다.

SSH 프라이빗 키 인증 - Azure Key Vault

다음 단계를 사용하여 Azure Key Vault에 저장된 프라이빗 키로 인증합니다.

Screenshot shows Private key stored in Azure Key Vault authentication.

  1. Azure Key Vault에 저장된 프라이빗 키를 사용하여 인증하려면 다음 설정을 구성합니다. 기본 SKU의 경우 연결 설정을 구성할 수 없으며 대신 기본 연결 설정인 SSH 및 포트 22를 사용합니다.

    • 연결 설정(표준 SKU에만 해당)

      • 프로토콜: SSH를 선택합니다.
      • 포트: 포트 번호를 지정합니다.
    • 인증 유형: 드롭다운에서 Azure Key Vault의 SSH 프라이빗 키를 선택합니다.

    • 사용자 이름: 사용자 이름을 입력합니다.

    • 구독: 사용할 구독을 선택합니다.

    • Azure Key Vault: Key Vault를 선택합니다.

      • Azure Key Vault 리소스를 설정하지 않은 경우 키 자격 증명 모음 만들기를 참조하고 SSH 프라이빗 키를 새 키 자격 증명 비밀의 값으로 저장합니다.

      • 키 자격 증명 리소스에 저장된 비밀에 대한 ListGet 권한이 있는지 확인합니다. 키 자격 증명 모음 리소스에 대한 액세스 정책을 할당하고 수정하려면 키 자격 증명 모음 액세스 정책 할당을 참조하세요.

        참고 항목

        PowerShell 또는 Azure CLI 환경을 사용하여 SSH 프라이빗 키를 Azure Key Vault에 비밀로 저장하세요. Azure Key Vault 포털 환경을 통해 프라이빗 키를 저장하면 형식 지정을 방해하여 로그인에 실패합니다. 포털 환경을 사용하여 프라이빗 키를 비밀로 저장했고 더 이상 원본 프라이빗 키 파일에 액세스할 수 없는 경우 SSH 키 업데이트를 참조하여 새 SSH 키 쌍으로 대상 VM에 대한 액세스를 업데이트합니다.

    • Azure Key Vault Secret: SSH 프라이빗 키의 값이 포함된 Key Vault 비밀을 선택합니다.

  2. 새 브라우저 탭에서 VM을 작업하려면 새 브라우저 탭에서 열기를 선택합니다.

  3. 연결을 클릭하여 VM에 연결합니다.

다음 단계

Azure Bastion에 대한 자세한 내용은 Bastion FAQ를 참조하세요.