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 페이지가 열립니다. 왼쪽 창에서 직접 Bastion 페이지로 이동하면 됩니다.

    스크린샷은 가상 머신의 개요 페이지를 보여줍니다.

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

    스크린샷은 기본 SKU보다 높은 SKU에 대한 연결 설정을 보여줍니다.

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

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

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

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

Microsoft Entra ID 인증(미리 보기)

참고 항목

포털 내의 SSH 연결에 대한 Microsoft Entra ID 인증 지원은 미리 보기로 제공되며 현재 롤아웃 중입니다.

다음 필수 구성 요소가 충족되면 Microsoft Entra ID가 VM에 연결하는 기본 옵션이 됩니다. 그러지 않으면 Microsoft Entra ID가 옵션으로 표시되지 않습니다.

필수 조건:

  • VM에서 Microsoft Entra ID 로그인을 사용하도록 설정해야 합니다. Microsoft Entra ID 로그인은 VM을 만드는 동안 또는 기존 VM에 Microsoft Entra ID 로그인 확장을 추가하여 사용하도록 설정할 수 있습니다.

  • 사용자에 대해 VM에서 다음 필수 역할 중 하나를 구성해야 합니다.

    • 가상 머신 관리자 로그인: 이 역할은 관리자 권한으로 로그인하려는 경우에 필요합니다.
    • 가상 머신 사용자 로그인: 이 역할은 일반 사용자 권한으로 로그인하려는 경우에 필요합니다.

다음 단계를 사용하여 Microsoft Entra ID를 사용하여 인증합니다.

스크린샷은 Microsoft Entra ID로 인증 유형을 보여줍니다.

  1. Microsoft Entra ID를 사용하여 인증하려면 다음 설정을 구성합니다.

    • 연결 설정: 기본 SKU보다 높은 SKU에만 사용할 수 있습니다.

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

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

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

암호 인증

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

암호 인증을 보여 주는 스크린샷

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

    • 연결 설정: 기본 SKU보다 높은 SKU에만 사용할 수 있습니다.

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

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

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

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

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

암호 인증 - Azure Key Vault

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

Azure Key Vault 인증의 암호를 보여 주는 스크린샷

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

    • 연결 설정: 기본 SKU보다 높은 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 프라이빗 키를 사용하여 인증하려면 다음 단계를 사용합니다.

로컬 파일 인증의 프라이빗 키를 보여 주는 스크린샷

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

    • 연결 설정: 기본 SKU보다 높은 SKU에만 사용할 수 있습니다.

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

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

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

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

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

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

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

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

Azure Key Vault 인증에 저장된 프라이빗 키를 보여 주는 스크린샷

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

    • 연결 설정: 기본 SKU보다 높은 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를 참조하세요.