Pages

Tuesday, July 18, 2023

【Azure】Linux VMのSSHの公開鍵認証をデプロイ時に有効化する方法 - @IT

kuncikn.blogspot.com

param location string = resourceGroup().location
param vmName string // 仮想マシンの名前
param adminUsername string // 管理アカウントのユーザー名
param adminPublicKey string = loadTextContent('id_rsa.pub') // RSA署名の公開鍵
// デフォルトでは、このBicepファイルと同じ場所にある「id_rsa.pub」に保存されている公開鍵が用いられる
// loadTextContent()では変数でファイル名を指定できないので注意

// リソース生成: 仮想マシン
resource vm 'Microsoft.Compute/virtualMachines@2022-11-01' = {
  name: vmName
  location: location
  properties: {
    osProfile: {
      computerName: vmName
      adminUsername: adminUsername
      linuxConfiguration: { // Linux特有の設定
        disablePasswordAuthentication: true // SSHでのパスワード認証を禁止
        ssh: {
          publicKeys: [
            {
              path: '/home/${adminUsername}/.ssh/authorized_keys' // 仮想マシン内での公開鍵の保存先
              keyData: adminPublicKey // 公開鍵そのもの
            }
          ]
        }
      }
    }
  }
}

// デプロイ後、確認のためにパラメータやプロパティを出力
output resouceType string = vm.type
output computerName string = vm.properties.osProfile.computerName
output adminUsername string = vm.properties.osProfile.adminUsername
output adminSSHPublicKey string = vm.properties.osProfile.linuxConfiguration.ssh.publicKeys[0].keyData

【Bicep】Linux VMのデプロイ時にSSH公開鍵認証を有効化する
仮想マシンのサイズ(SKU)やOSイメージ、ストレージ、ネットワーク、タグなどの設定は省いているので、必要に応じて追加/変更してほしい。
※Microsoftのレファレンス: Microsoft.Compute virtualMachines

Adblock test (Why?)


からの記事と詳細 ( 【Azure】Linux VMのSSHの公開鍵認証をデプロイ時に有効化する方法 - @IT )
https://ift.tt/FpEGjJx

No comments:

Post a Comment