비밀번호 기반 SSH 인증을 사용하는 Azure Linux VM

Azure Linux VM에서 SSH 키 인증을 사용하고 비밀번호 로그인을 제한하세요.

설명

Azure Linux VM에서 SSH 비밀번호 로그인을 허용하면 유출되거나 추측된 비밀번호로 접근할 수 있습니다. 이는 HTTP의 Basic 인증이 아니라 운영체제의 SSH 로그인 설정입니다.

잠재적 영향

SSH에 접근할 수 있는 공격자가 유효한 비밀번호를 얻으면 해당 계정의 권한으로 VM을 조작할 수 있습니다.

해결 방법

관리자 계정에 올바른 SSH 공개키를 등록하고 ssh_password_enabled를 비활성화하세요. 비밀번호 접근을 끄기 전에 키 기반 접속을 확인하고 개인 키도 보호하세요.

예시

변경 후의 path는 VM 안의 authorized_keys 경로입니다. ssh_public_key에는 실제 공개키 내용을 넣으세요. 사용자 지정 이미지와 네트워크 구성은 별도로 준비해야 합니다.

변경 전

yaml
- name: Linux VM 생성
  azure.azcollection.azure_rm_virtualmachine:
    resource_group: myResourceGroup
    name: testvm001
    vm_size: Standard_DS1_v2
    admin_username: adminUser
    admin_password: "{{ vm_admin_password }}"
    image: customimage001
    os_type: Linux
  no_log: true

변경 후

yaml
- name: Linux VM 생성
  azure.azcollection.azure_rm_virtualmachine:
    resource_group: myResourceGroup
    name: testvm001
    vm_size: Standard_DS1_v2
    admin_username: adminUser
    ssh_password_enabled: false
    ssh_public_keys:
      - path: /home/adminUser/.ssh/authorized_keys
        key_data: "{{ ssh_public_key }}"
    image: customimage001
    os_type: Linux

참조