你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Add-AzVMSshPublicKey

仅创建 VM 时,为虚拟机添加 SSH 的公钥。

语法

Add-AzVMSshPublicKey
   [-VM] <PSVirtualMachine>
   [[-KeyData] <String>]
   [[-Path] <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

说明

Add-AzVMSshPublicKey cmdlet 添加了可用于通过安全外壳(SSH)连接到 Linux 虚拟机的公钥。 在创建 VM 后,如果尝试在 VM 创建后不使用 Update-AzVM,则不会出错;如果将命令用于 Update-AzVM,则命令将出错。

示例

示例 1:向虚拟机添加公钥

$VirtualMachine = Get-AzVM -ResourceGroupName "ResourceGroup11" -Name "VirtualMachine07"
$VirtualMachine = Add-AzVMSshPublicKey -VM $VirtualMachine -KeyData "MIIDszCCApugAwIBAgIJALBV9YJCF/tAMA0GCSq12Ib3DQEB21QUAMEUxCzAJBgNV" -Path "/home/admin/.ssh/authorized_keys"

第一个命令使用 Get-AzVM cmdlet 获取名为 VirtualMachine07 的虚拟机。 该命令在 $VirtualMachine 变量中存储虚拟机。 第二个命令将公钥添加到 Path 参数指定的 VirtualMachine07 上的位置。

参数

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-KeyData

指定公钥的 base 64 编码。 可以使用 SSH 或此参数指定的密钥连接到 Linux 虚拟机。

Type:String
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Path

指定虚拟机上文件的完整路径,其中此 cmdlet 存储 SSH 公钥。 如果文件已存在,此 cmdlet 会将密钥追加到该文件。

Type:String
Position:2
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-VM

指定此 cmdlet 修改的虚拟机对象。 若要获取虚拟机对象,请使用 Get-AzVM cmdlet。 可以使用 New-AzVMConfig cmdlet 创建虚拟机对象。

Type:PSVirtualMachine
Aliases:VMProfile
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

输入

PSVirtualMachine

String

输出

PSVirtualMachine