다음을 통해 공유


Linux VM 암호 또는 SSH 키를 재설정하고, SSH 구성을 수정하고, VMAccess 확장을 사용하여 디스크 일관성을 확인하는 방법

중요합니다

클래식 VM은 2023년 3월 1일에 사용 중지됩니다.

ASM에서 IaaS 리소스를 사용하는 경우 2023년 3월 1일까지 마이그레이션을 완료하세요. Azure Resource Manager의 다양한 기능 향상을 활용하려면 빨리 전환하는 것이 좋습니다.

자세한 내용은 2023년 3월 1일까지 IaaS 리소스를 Azure Resource Manager로 마이그레이션하기참조하세요.

잊어버린 암호, 잘못된 SSH(Secure Shell) 키 또는 SSH 구성 관련 문제로 인해 Azure의 Linux 가상 머신에 연결할 수 없는 경우 Azure CLI와 함께 VMAccessForLinux 확장을 사용하여 암호 또는 SSH 키를 재설정하고, SSH 구성을 수정하고, 디스크 일관성을 확인합니다.

비고

Azure에는 리소스를 만들고 사용하기 위한 두 가지 배포 모델인 Resource Manager와 클래식있습니다. 이 문서에서는 클래식 배포 모델을 사용하는 방법에 대해 설명합니다. 대부분의 새 배포는 Resource Manager 모델을 사용하는 것이 좋습니다. Resource Manager 모델 사용하여 이러한 단계를수행하는 방법을 알아봅니다.

Azure CLI를 사용하면 명령줄 인터페이스(Bash, 터미널, 명령 프롬프트)의 azure vm 확장 집합 명령을 사용하여 명령에 액세스합니다. 자세한 확장 사용을 위해 azure help vm 확장 집합 실행합니다.

Azure CLI를 사용하여 다음 작업을 수행할 수 있습니다.

필수 조건

다음을 수행해야 합니다.

  • 계정과 연결된 Azure 리소스를 사용하려면 azure CLI 설치하고 구독 연결할 있어야 합니다.
  • 명령 프롬프트에 다음을 입력하여 클래식 배포 모델에 대한 올바른 모드를 설정합니다.
        azure config mode asm
    
  • 하나라도 다시 설정하려면 새 암호 또는 SSH 키 집합을 갖습니다. SSH 구성을 다시 설정하려는 경우에는 필요하지 않습니다.

암호 재설정

  1. 당신의 로컬 컴퓨터에 PrivateConf.json이라는 이름의 파일을 만들고 그 안에 이러한 줄을 추가하세요. myUserNamemyP@ssW0rd를 자신의 사용자 이름 및 암호로 바꾸고 만료 날짜를 설정하십시오.

        {
        "username":"myUserName",
        "password":"myP@ssW0rd",
        "expiration":"2020-01-01"
        }
    
  2. 이 명령을 실행할 때 myVM부분을 가상 머신의 이름으로 대체하세요.

        azure vm extension set myVM VMAccessForLinux Microsoft.OSTCExtensions 1.* –-private-config-path PrivateConf.json
    

SSH 키 다시 설정

  1. 이러한 내용이 포함된 PrivateConf.json 파일을 만듭니다. myUserNamemySSHKey 값을 사용자 고유의 정보로 바꾸세요.

        {
        "username":"myUserName",
        "ssh_key":"mySSHKey"
        }
    
  2. 가상 머신의 이름으로 myVM을(를) 대체하여 이 명령을 실행합니다.

     azure vm extension set myVM VMAccessForLinux Microsoft.OSTCExtensions 1.* --private-config-path PrivateConf.json
    

암호와 SSH 키를 모두 다시 설정합니다.

  1. 이러한 내용이 포함된 PrivateConf.json 파일을 만듭니다. myUserName, mySSHKeymyP@ssW0rd 값을 각각 고유한 정보로 바꾸십시오.

        {
        "username":"myUserName",
        "ssh_key":"mySSHKey",
        "password":"myP@ssW0rd"
        }
    
  2. 가상 머신의 이름을 myVM로 대체하여 이 명령을 실행합니다.

        azure vm extension set MyVM VMAccessForLinux Microsoft.OSTCExtensions 1.* --private-config-path PrivateConf.json
    

새 sudo 사용자 계정 만들기

사용자 이름을 잊어버린 경우 VMAccess를 사용하여 sudo 기관을 사용하여 새 이름을 만들 수 있습니다. 이 경우 기존 사용자 이름과 암호는 수정되지 않습니다.

암호 액세스 권한이 있는 새 sudo 사용자를 만들려면 암호 재설정하고 새 사용자 이름을 지정하는 스크립트를 사용합니다.

SSH 키 액세스 권한이 있는 새 sudo 사용자를 만들려면 SSH 키 다시 설정에서 스크립트를 사용하고 새 사용자 이름을 지정합니다.

암호 및 SSH 키 재설정하는 사용하여 암호 및 SSH 키 액세스 권한이 있는 새 사용자를 만들 수도 있습니다.

SSH 구성 다시 설정

SSH 구성이 원치 않는 상태인 경우 VM에 대한 액세스 권한도 손실될 수 있습니다. VMAccess 확장을 사용하여 구성을 기본 상태로 다시 설정할 수 있습니다. 이렇게 하려면 "reset_ssh" 키를 "True"로 설정하면 됩니다. 확장은 SSH 서버를 다시 시작하고, VM에서 SSH 포트를 열고, SSH 구성을 기본값으로 다시 설정합니다. 사용자 계정(이름, 암호 또는 SSH 키)은 변경되지 않습니다.

비고

다시 설정되는 SSH 구성 파일은 /etc/ssh/sshd_config 있습니다.

  1. 이 콘텐츠를 사용하여 PrivateConf.json 파일을 만듭니다.

        {
        "reset_ssh":"True"
        }
    
  2. 가상 머신의 이름 대신 myVM을 대체하여 이 명령을 실행하십시오.

     	azure vm extension set myVM VMAccessForLinux Microsoft.OSTCExtensions 1.* --private-config-path PrivateConf.json
    

사용자 삭제

VM에 직접 로그인하지 않고 사용자 계정을 삭제하려면 이 스크립트를 사용할 수 있습니다.

  1. removeUserName대해 제거할 사용자 이름을 대체하여 이 콘텐츠로 PrivateConf.json 파일을 만듭니다.

        {
        "remove_user":"removeUserName"
        }
    
  2. 이 명령을 실행하세요, 가상 머신의 이름을 myVM으로 대체하여.

        azure vm extension set myVM VMAccessForLinux Microsoft.OSTCExtensions 1.* --private-config-path PrivateConf.json
    

VMAccess 확장의 상태 표시

VMAccess 확장의 상태를 표시하려면 이 명령을 실행합니다.

        azure vm extension get

추가된 디스크의 일관성 확인

Linux 가상 머신의 모든 디스크에서 fsck을 실행하려면 다음을 수행해야 합니다.

  1. 이 콘텐츠를 사용하여 PublicConf.json 파일을 만듭니다. Check Disk는 가상 머신에 연결된 디스크를 확인할지 여부를 결정하기 위해 불리언 값을 사용합니다.

        {   
        "check_disk": "true"
        }
    
  2. 이 명령을 실행하여 myVM 가상 머신의 이름을 대체합니다.

        azure vm extension set myVM VMAccessForLinux Microsoft.OSTCExtensions 1.* --public-config-path PublicConf.json 
    

디스크 복구

탑재되지 않거나 탑재 구성 오류가 있는 디스크를 복구하려면 VMAccess 확장을 사용하여 Linux 가상 머신에서 탑재 구성을 다시 설정합니다. 디스크 이름을 myDisk 로 대체합니다.

  1. 이 콘텐츠를 사용하여 PublicConf.json 파일을 만듭니다.

        {
        "repair_disk":"true",
        "disk_name":"myDisk"
        }
    
  2. 이 명령을 실행하고 가상 머신의 이름으로 myVM을 대체하십시오.

        azure vm extension set myVM VMAccessForLinux Microsoft.OSTCExtensions 1.* --public-config-path PublicConf.json
    

다음 단계

  • Azure PowerShell cmdlet 또는 Azure Resource Manager 템플릿을 사용하여 암호 또는 SSH 키를 재설정하고, SSH 구성을 수정하고, 디스크 일관성을 확인하려면 GitHub VMAccess 확장 설명서를 참조하세요.
  • Azure Portal 사용하여 클래식 배포 모델에 배포된 Linux VM의 암호 또는 SSH 키를 다시 설정할 수도 있습니다. 현재 Resource Manager 배포 모델에 배포된 Linux VM에 대해 이 작업을 수행하기 위해 포털을 사용할 수 없습니다.
  • Azure 가상 머신에 VM 확장을 사용하는 방법에 대한 자세한 내용은 가상 머신 확장 및 기능 참조하세요.