다음을 통해 공유


Export-AzSshConfig

이 cmdlet은 OpenSSH 구성 및 인증서를 지원하는 클라이언트 애플리케이션을 통해 Azure 리소스에 연결하는 데 사용할 수 있는 SSH 구성 파일을 내보냅니다. Microsoft Entra ID에서 발급한 인증서 또는 로컬 사용자 자격 증명을 사용하는 SSH 구성 파일을 만들 수 있습니다.

구문

Export-AzSshConfig
      -ResourceGroupName <String>
      -Name <String>
      -ConfigFilePath <String>
      [-PublicKeyFile <String>]
      [-PrivateKeyFile <String>]
      [-UsePrivateIp]
      [-LocalUser <String>]
      [-Port <String>]
      [-ResourceType <String>]
      [-CertificateFile <String>]
      [-Overwrite]
      [-KeysDestinationFolder <String>]
      [-Force]
      [-DefaultProfile <IAzureContextContainer>]
      [<CommonParameters>]
Export-AzSshConfig
      -Ip <String>
      -ConfigFilePath <String>
      [-PublicKeyFile <String>]
      [-PrivateKeyFile <String>]
      [-LocalUser <String>]
      [-Port <String>]
      [-CertificateFile <String>]
      [-Overwrite]
      [-KeysDestinationFolder <String>]
      [-Force]
      [-DefaultProfile <IAzureContextContainer>]
      [<CommonParameters>]
Export-AzSshConfig
      -ResourceId <String>
      -ConfigFilePath <String>
      [-PublicKeyFile <String>]
      [-PrivateKeyFile <String>]
      [-UsePrivateIp]
      [-LocalUser <String>]
      [-Port <String>]
      [-CertificateFile <String>]
      [-Overwrite]
      [-KeysDestinationFolder <String>]
      [-Force]
      [-DefaultProfile <IAzureContextContainer>]
      [<CommonParameters>]

Description

내보낸 SSH 구성 파일을 사용하여 OpenSSH 구성 및 인증서를 지원하는 클라이언트 애플리케이션에서 Azure Resources에 연결할 수 있습니다. git 및 rsync와 같은 애플리케이션은 명령을 'ssh -F /path/to/config'로 설정하여 구성 파일을 사용할 수 있습니다. 예: rsync -e 'ssh -F /path/to/config'입니다. 사용자는 Microsoft Entra ID 발급 인증서 또는 로컬 사용자 자격 증명을 사용하는 ssh 구성 파일을 만들 수 있습니다. 중요 참고: Azure Arc 리소스에 연결할 때 이 cmdlet을 사용하려면 Az.Ssh.ArcProxy 모듈도 클라이언트 컴퓨터에 설치해야 합니다. cmdlet은 PowerShell 갤러리에서 모듈을 설치하려고 시도하지만 사용자에게는 모듈을 직접 설치하는 옵션도 있습니다. 사용자에게 Az.Ssh.ArcProxy 모듈에서 프록시 파일을 실행할 수 있는 권한도 있어야 합니다. 그렇지 않으면 연결이 실패합니다. PowerShell 갤러리에서 Az.Ssh.ArcServer 모듈을 찾을 수 있습니다. https://aka.ms/PowerShellGallery-Az.Ssh.ArcProxy.

예제

예제 1: 인증을 위해 Microsoft Entra ID 발급 인증서를 사용하여 리소스에 연결하기 위한 SSH 구성 파일을 내보냅니다.

Export-AzSshConfig -ResourceGroupName myRg -Name myMachine -ConfigFilePath ./sshconfig.config

-LocalUser 제공되지 않으면 cmdlet은 Microsoft Entra ID를 사용하여 로그인할 인증서를 만들려고 시도합니다. 이는 현재 Linux OS를 실행하는 리소스에 대해서만 지원됩니다. Microsoft Entra ID를 사용하여 리소스에 로그인하는 경우 구성 항목의 호스트 이름은 Azure VM의 "{리소스 그룹 이름}-{resource name}" 또는 "{ip address}"입니다.

예제 2: Microsoft Entra ID 발급 인증서를 사용하여 Azure Virtual Machine의 공용 IP에 연결하기 위한 SSH 구성 파일을 내보냅니다.

Export-AzSshConfig -Ip 1.2.3.4 -ConfigFilePath ./sshconfig.config

예제 3: 인증을 위해 SSH 인증서를 사용하여 Azure 리소스의 로컬 사용자에 연결하기 위한 SSH 구성 파일 내보내기

Export-AzSshConfig -ResourceGroupName myRg -Name myVm -LocalUser azureuser -CertificateFile ./cert -PrivateKeyFile ./id_rsa -ConfigFilePath ./sshconfig.config

로컬 사용자 자격 증명을 사용하여 로그인하는 경우 구성 항목의 호스트 이름은 Azure VM의 경우 "{리소스 그룹 이름}-{resource name}-{username}" 또는 "{ip address}-{username}"입니다.

예제 4: 인증을 위해 SSH 프라이빗 키를 사용하여 Azure 리소스의 로컬 사용자에 연결하기 위한 SSH 구성 파일 내보내기

Export-AzSshConfig -ResourceGroupName myRg -Name myVm -LocalUser azureuser -PrivateKeyFile ./id_rsa -ConfigFilePath ./sshconfig.config

예제 5: 인증을 위해 대화형 사용자 이름 및 암호를 사용하여 Azure 리소스의 로컬 사용자에 연결하기 위한 SSH 구성 파일 내보내기

Export-AzSshConfig -ResourceGroupName myRg -Name myVm -LocalUser azureuser -ConfigFilePath ./sshconfig.config

예제 6: 인증서에 대해 생성된 키와 인증서가 저장되는 위치를 결정합니다.

Export-AzSshConfig -ResourceGroupName myRg -Name myVm -KeysDestinationFolder /home/user/mykeys -ConfigFilePath ./sshconfig.config

생성된 키와 인증서는 기본적으로 구성 파일과 동일한 디렉터리의 "az_ssh_config" 디렉터리에 저장됩니다. -KeysDestinationFolder 매개 변수를 사용하면 키를 저장할 위치를 결정할 수 있습니다.

예제 7: 모든 Azure VM에서 사용할 제네릭 구성을 만듭니다.

Export-AzSshConfig -Ip * -ConfigFilePath ./sshconfig.config

예제 8: 대상의 리소스 종류를 제공합니다.

Export-AzSshConfig -ResourceGroupName myRg -Name myVm -ResourceType Microsoft.Compute/virtualMachines -ConfigFilePath ./sshconfig.config

이 매개 변수는 리소스 그룹에 이름이 같은 지원되는 리소스가 둘 이상 있는 경우에 유용합니다.

매개 변수

-CertificateFile

로컬 사용자 계정에 인증하는 데 사용할 SSH 인증서입니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ConfigFilePath

SSH 구성을 작성할 경로입니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-DefaultProfile

Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독입니다.

형식:IAzureContextContainer
별칭:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Force

Arc 리소스에 연결할 때 연결 엔드포인트에서 대상 포트와 일치하도록 허용된 SSH 연결 포트를 업데이트하거나 필요한 경우 PowerShell 갤러리에서 Az.Ssh.ArcProxy 모듈을 설치하기 전에 확인을 요청하지 마세요.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Ip

대상 Azure VM의 IP 주소입니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-KeysDestinationFolder

생성된 키 및 인증서가 저장되는 디렉터리입니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-LocalUser

대상 리소스의 로컬 사용자에 대한 사용자 이름입니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Name

대상 Azure 리소스의 이름입니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Overwrite

파일 끝에 새 항목을 추가하는 대신 구성 파일을 덮어씁니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Port

원격 호스트에 연결할 포트입니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-PrivateKeyFile

프라이빗 키 파일의 경로입니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-PublicKeyFile

공개 키 파일의 경로입니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ResourceGroupName

리소스 그룹 이름입니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-ResourceId

대상 리소스의 리소스 ID입니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-ResourceType

대상 리소스의 리소스 종류입니다.

형식:String
허용되는 값:Microsoft.HybridCompute/machines, Microsoft.Compute/virtualMachines, Microsoft.ConnectedVMwarevSphere/virtualMachines, Microsoft.ScVmm/virtualMachines, Microsoft.AzureStackHCI/virtualMachines
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-UsePrivateIp

Azure VM에 연결할 때 이 플래그는 VM의 개인 IP 중 하나에 연결하도록 지정합니다. 개인 IP에 대한 연결이 필요합니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

입력

출력