다음을 통해 공유


Azure Arc 지원 서버에 대한 SSH 액세스

공용 IP 주소 또는 추가 열린 포트 없이 Arc 지원 서버에 대한 SSH 기반 연결을 사용하도록 설정할 수 있습니다. 이 기능은 대화형, 자동화 또는 기존 SSH 기반 도구와 함께 사용할 수 있으므로 기존 관리 도구가 Azure Arc 지원 서버에 미치는 영향을 확장할 수 있습니다.

혜택

Arc 지원 서버에 대한 SSH 액세스는 다음과 같은 이점을 제공합니다.

  • 공용 IP 주소 또는 개방형 SSH 포트가 필요하지 않음
  • Windows 및 Linux 컴퓨터에 액세스
  • 로컬 사용자 또는 Azure 사용자(Linux 전용)로 로그인하는 기능
  • 구성 파일을 지원하는 다른 OpenSSH 기반 도구 지원

필수 조건

  • 사용자 권한: 대상 Arc 지원 서버에 할당된 소유자 또는 기여자 역할입니다.
  • Arc 지원 서버:
    • 하이브리드 에이전트 버전: 1.31.xxxx 이상
    • SSH 서비스("sshd")를 사용하도록 설정해야 합니다.

Linux의 경우 패키지 관리자를 통해 설치 openssh-server 합니다. 다음 명령을 실행하여 sshd가 Linux에서 실행되고 있는지 확인할 수 있습니다.

ps -aux | grep sshd

Windows의 경우 OpenSSH 사용을 참조하세요. 다음 명령을 사용하여 ssh가 설치되고 실행되고 있는지 확인할 수 있습니다.

Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

# Check the sshd service is running
Get-Service sshd

팁 (조언)

Windows Server 2025부터 OpenSSH는 기본적으로 설치됩니다.

"Microsoft Entra" 인증

인증에 Microsoft Entra를 사용하려면, Arc 지원 서버에 적절하게 aadsshloginaadsshlogin-selinux을(를) 설치해야 합니다. 이러한 패키지는 AADSSHLoginForLinux 배포할 때 설치됩니다.

또한 VM에 대한 역할 할당을 구성해야 합니다. VM 로그인 권한 부여에는 두 개의 Azure 역할이 사용됩니다.

  • Virtual Machine 관리자 로그인: 이 역할이 할당된 사용자는 관리자 권한으로 Azure VM에 로그인할 수 있습니다.
  • Virtual Machine 사용자 로그인: 이 역할이 할당된 사용자는 일반 사용자 권한으로 Azure VM에 로그인할 수 있습니다.

VM에 대해 할당된 소유자 또는 기여자 역할이 있는 Azure 사용자는 SSH를 통해 VM에 Microsoft Entra 로그인에 대한 권한을 자동으로 부여하지 않습니다. 가상 머신을 제어하는 사용자와 가상 머신에 액세스하는 사용자 사이에 의도적인(그리고 감사된) 분리가 있습니다. 이러한 역할은 높은 수준의 액세스 권한을 부여하므로 감사 가능한 Just-In-Time 액세스에 Microsoft Entra Privileged Identity Management 를 사용하는 것이 좋습니다.

참고

가상 머신 관리자 로그인 및 가상 머신 사용자 로그인 역할은 dataActions를 사용하며 관리 그룹, 구독, 리소스 그룹 또는 리소스 범위에서 할당할 수 있습니다. 개별 VM 수준이 아닌 관리 그룹, 구독 또는 리소스 수준에서 역할을 할당하는 것이 좋습니다. 이 방법은 구독당 Azure 역할 할당 제한 에 도달할 위험을 방지하는 데 도움이 됩니다.

가용성

Arc 지원 서버에 대한 SSH 액세스는 현재 Arc 지원 서버에서 지원하는 모든 클라우드 지역에서 지원됩니다.

Arc 지원 서버에 대한 SSH 액세스 사용

Arc 지원 서버에 대한 SSH 액세스를 사용하도록 설정하려면 이 섹션의 단계를 수행합니다.

HybridConnectivity 리소스 공급자 등록

참고

이는 각 구독에서 수행해야 하는 일회용 작업입니다.

HybridConnectivity 리소스 공급자가 등록되어 있는지 확인합니다.

az provider show -n Microsoft.HybridConnectivity -o tsv --query registrationState

리소스 공급자가 등록되지 않은 경우 다음 명령을 실행하여 등록합니다.

az provider register -n Microsoft.HybridConnectivity

이 작업을 완료하는 데 2~5분이 소요될 수 있습니다. 다음 단계로 진행하기 전에 등록이 완료되었는지 확인합니다.

기본 연결 엔드포인트 만들기

각 Arc 지원 서버에 대해 이 단계를 완료해야 합니다. 그러나 첫 번째 연결에서 자동으로 완료되어야 하므로 이러한 명령을 실행하지 않아도 될 수 있습니다.

az rest --method put --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default?api-version=2023-03-15 --body '{"properties": {"type": "default"}}'

참고

PowerShell에서 Azure CLI를 사용하는 경우 다음 명령을 사용해야 합니다.

az rest --method put --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default?api-version=2023-03-15 --body '{\"properties\":{\"type\":\"default\"}}'

엔드포인트 만들기의 유효성을 검사합니다.

az rest --method get --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default?api-version=2023-03-15

로컬 명령줄 도구 설치

SSH 기능은 Azure CLI 확장 및 Azure PowerShell 모듈에서 제공됩니다. 사용자 환경에 적합한 도구를 설치합니다.

az extension add --name ssh

Arc 기능이 활성화된 서버에서 기능을 활성화하세요

SSH 연결 기능을 사용하려면 특정 포트에 대한 SSH 연결을 허용하도록 Arc 지원 서버의 연결 엔드포인트에서 서비스 구성을 업데이트해야 합니다. 단일 포트에 대한 연결만 허용할 수 있습니다. CLI 도구는 런타임에 허용된 포트를 업데이트하려고 시도하지만 다음 명령을 사용하여 포트를 수동으로 구성할 수 있습니다. SSH 연결에 기본 포트가 아닌 포트를 사용하는 경우 포트 22를 원하는 포트로 바꿉다.

az rest --method put --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default/serviceconfigurations/SSH?api-version=2023-03-15 --body "{\"properties\": {\"serviceName\": \"SSH\", \"port\": 22}}"

참고

연결하기 전에 서비스 구성을 업데이트한 후 지연이 있을 수 있습니다.

선택 사항: Microsoft Entra 로그인 확장 설치

Linux 컴퓨터에서 인증을 위해 Microsoft Entra를 사용하려면, Arc 지원 서버에 aadsshloginaadsshlogin-selinux을(를) 적절하게 설치해야 합니다. 이러한 패키지는 AADSSHLoginForLinux VM 확장을 사용하여 설치됩니다.

Azure Portal에서 이 확장을 추가하려면 클러스터로 이동한 다음 서비스 메뉴의 설정에서 확장을 선택합니다.추가를 선택한 다음 , Azure AD 기반 SSH 로그인 – Azure Arc 를 선택하고 설치를 완료합니다. 다음 명령을 실행 apt-get install aadsshlogin 하여 패키지 관리자를 통해 로컬로 확장을 설치할 수도 있습니다.

az connectedmachine extension create --machine-name <arc enabled server name> --resource-group <resourcegroup> --publisher Microsoft.Azure.ActiveDirectory --name AADSSHLogin --type AADSSHLoginForLinux --location <location>

예제

Azure CLI 또는 Azure PowerShell을 사용하여 SSH를 통해 Arc 지원 서버에 액세스할 수 있습니다. 예제 및 자세한 내용은 az ssh (Azure CLI) 또는 Az.Ssh (Azure PowerShell)를 참조하세요.

Azure Arc 지원 서버에 대한 SSH 사용 안 함

Arc 지원 서버에 대한 SSH 액세스를 제거하려면 다음 단계를 수행합니다.

  1. Arc 지원 서버에서 SSH 포트 및 기능 제거:

    az rest --method delete --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default/serviceconfigurations/SSH?api-version=2023-03-15 --body '{\"properties\": {\"serviceName\": \"SSH\", \"port\": \"22\"}}'
    
  2. 기본 연결 엔드포인트 삭제:

    az rest --method delete --uri https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resourcegroup>/providers/Microsoft.HybridCompute/machines/<arc enabled server name>/providers/Microsoft.HybridConnectivity/endpoints/default?api-version=2023-03-15
    

SSH 액세스를 포함하여 컴퓨터에 대한 모든 원격 액세스를 사용하지 않도록 설정하려면 컴퓨터에서 다음 azcmagent config 명령을 실행할 수 있습니다.

azcmagent config set incomingconnections.enabled false

다음 단계