説明
Azure Linux VM で SSH のパスワードログインを許可すると、漏えいしたり推測されたりしたパスワードでアクセスされるおそれがあります。これは HTTP の Basic 認証ではなく、OS の 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