华为云用户手册

  • 示例4:单属性、多值搜索 仅以下属性支持单属性、多值搜索:状态、云服务器ID、规格名称、私有IP地址、弹性公网IP地址、计费模式、标签。 其中以下属性仅支持精确搜索,需输入完整的属性值:云服务器ID、私有IP地址、弹性公网IP地址。 选择一个属性后,输入多个取值,多个取值之间为“或”的关系。 模糊搜索 在云服务器列表页搜索的输入框中选择“规格名称”。 根据提示输入多个规格名称,使用“,”分隔,单击进行搜索。 图9 按规格名称搜索云服务器 精确搜索 在云服务器列表页搜索的输入框中选择“私有IP地址”。 根据提示输入多个完整的私有IP地址,使用“,”分隔,单击进行搜索。 图10 按私有IP地址搜索云服务器
  • 擎天Enclave概念 擎天Enclave 擎天Enclave是完全隔离的虚拟机,它的内存和CPU来自于其父虚拟机被预先隔离出来的资源。擎天Enclave既没有外部网络,也没有持久化存储。父虚拟机内的进程、应用程序、内核或者用户都无法访问擎天Enclave中的资源。 父虚拟机 父虚拟机是一个能够将其CPU及内存资源隔离分配给擎天Enclave的ECS实例。这些资源能够在擎天Enclave的生存周期内被其使用。启动擎天Enclave成功后,该擎天Enclave只能与其父虚拟机进行安全通信。 擎天Enclave镜像文件 擎天Enclave镜像文件(.eif)提供了启动擎天Enclave并在其中运行擎天Enclave应用程序所需的系统信息,包括Linux操作系统、其他第三方库和擎天Enclave应用程序。镜像创建详情见Linux系统上擎天Enclave应用程序开发。 擎天命令行工具 作为华为云擎天命令行工具(qt CLI),在擎天Enclave使用场景中,qt CLI可以用于创建、关闭和查询擎天Enclave信息。qt CLI必须在父虚拟机上安装和使用。详情见擎天CLI(qt CLI)。 Enclave SDK Enclave SDK由一系列开源库组成,以便用户开发自己的擎天Enclave应用程序。它集成了一些与华为云KMS交互的接口,例如加解密和产生随机数等,并为远程证明提供了内在支持。 擎天密码学证明 擎天密码学证明是擎天Enclave在与KMS服务交互时证明自己合法性的过程。它依赖擎天Hypervisor产生的具有数字签名的证明文档。一个擎天Enclave证明文档内包含的具体信息可以作为第三方服务认证及鉴权的条件。您可以在IAM服务中使用kms:RecipientAttestation相关条件键值(condition key)来控制对KMS服务特定接口操作的访问权限,例如生成随机数或者加解密操作。 证明文档 证明文档(Attestation Document)由擎天Hypervisor产生并签名,其文件内容为擎天Enclave的信息,包括PCR、密码摘要以及用户声明。外部服务可以通过证明文件来验证擎天Enclave的身份是否可信。用户可以利用证明文档构建自己的可信系统,也可以与KMS交互时使用。详情可见证明文档。 qt-proxy qt-proxy是一个运行在父虚拟机上的网络代理服务。用户可以使用这个服务,使父虚拟机转发来自于擎天Enclave的网络包,实现擎天Enclave与外界进行通信。这是擎天Enclave用来与外部服务交互的唯一通信渠道。 PCR 平台配置寄存器(Platform configuration registers,PCRs)是擎天Enclave独有的可信度量值。一部分在擎天Enclave创建时自动产生,用于验证擎天Enclave自创建以来的完整性,另一部分可以由用户自己定义以确保擎天Enclave能够运行在他所希望执行的平台上。另外,Attestation Document包含了相关的PCR,用户可以使用PCR作为IAM访问控制策略的条件键(condition key),以实现更为更严格的访问控制。详情可见PCR简介。 本地连接通道 本地连接通道(Local Vsock Connection)是擎天Enclave实例与父虚拟机之间唯一的,安全的本地通信通道。 擎天安全模块 擎天安全模块(QingTian Security Module,QTSM)整体由qtsm-lib函数库和qtsm-server服务组成。您可以在您的擎天Enclave 应用程序中调用qtsm-lib用户态接口,qtsm-server会处理具体的QTSM请求并将返回相应结果。qtsm-lib提供的用户态接口包括获取指定index对应的PCR值(qtsm_describe_pcr),扩展指定index的PCR值(qtsm_extend_pcr),锁定指定index的PCR值(qtsm_lock_pcr),批量锁定指定index的PCR值(qtsm_lock_pcrs),获取QTSM信息(qtsm_get_describe)和获取已签名的证明文档(qtsm_get_attestation)。 父主题: 擎天Enclave简介
  • 密码学证明 擎天Enclave支持密码学证明。擎天Enclave支持通过密码学证明过程来证明其身份并与外部服务建立信任。证明过程需要使用证明文档,它包含对擎天Enclave运行环境的可信度量值。您可以使用这些度量值在外部服务中创建访问控制策略,以控制特定擎天Enclave实例对指定操作的访问权限。 您可以通过使用擎天Enclave SDK从擎天Hypervisor获取证明文档,该证明文档包含相关的度量值及数字签名。擎天Enclave应用可以在向外部服务发送请求时携带该证明文档。当外部服务收到该请求时,会验证证明文档中包含的度量值是否匹配预期的度量值,以决定是否允许Enclave应用的访问请求或建立安全。 PCR简介 证明文档 文档签名验证 结合华为云KMS服务 父主题: 擎天Enclave管理
  • 远程证明和数据解密 下面我们将概述在擎天Enclave应用程序的执行流程。 通过qt-proxy服务,擎天Enclave应用程序将密文从华为OBS桶中下载到擎天Enclave实例中。 Enclave应用程序产生一对RSA公私钥(pubKey, priKey),用于建立与KMS服务之间的端到端数据加密(它并不需要依赖HTTPS)。然后使用擎天Enclave SDK调用KMS提供的支持AttestationDocument(证明文档)作为入参的kms-decrypt API。证明文档中包括擎天Enclave的PCR值和应用程序产生的加密公钥(pubKey)。 华为云KMS接收并验证证明文档是否由擎天Attestation PKI签发。在kms-decrypt API的访问控制检查中,会将证明文档中的PCR值与IAM授权策略中的PCR值进行比较,如果匹配成功则允许调用该接口,否则拒绝访问。 KMS将数据解密后,然后用AttestationDocument提供的pubKey对数据进行重新加密后发送回擎天Enclave应用程序。擎天Enclave应用程序使用priKey对接收到的密文数据进行解密。
  • 相关服务 擎天Enclave与以下华为云服务集成: 密钥管理服务 密钥管理服务(KMS)是华为云数据加密服务族中的一个核心服务。KMS提供可用性高的密钥生成、存储、管理和审计解决方案。KMS密钥由硬件安全模块HSM保护,并与许多华为云数据存储服务集成。您可以借此服务开发自己的安全的数据应用。 华为统一身份认证服务 统一身份认证(Identity and Access Management,简称IAM)是华为云提供权限管理的基础服务,可以帮助您安全地控制华为云服务和资源的访问权限。
  • 约束条件 擎天Enclave有以下约束: 虚拟机名称 限制要求 父虚拟机(主虚拟机) 至少预留2个vCPU,至少预留512M内存空间。 必须为Linux操作系统。 擎天Enclave(从虚拟机) 裸金属实例不支持擎天Enclave。 必须为Linux操作系统。 启动擎天Enclave最低内存规格为128M,并且不能小于Enclave镜像文件(Enclave Image File,简称EIF)文件大小的4倍。 当在配置文件中,为擎天Enclave配置2M大页的内存管理方式时,擎天Enclave启动支持的最大内存为512M。 当在配置文件中,为擎天Enclave配置1G大页的内存管理方式时,擎天Enclave最大内存为256G。 擎天Enclave所使用的内存和CPU都必须隔离自同一个NUMA节点。 vcpu数量配置需要为偶数,最高不超过父虚拟机单NUMA node cpu数量减 2;总数量最高不超过62。 在擎天Enclave中运行的应用程序需要和OS(内核,ramdisk,init程序)一起被打包成擎天Enclave镜像。 父虚拟机和擎天Enclave关系: 每个父虚拟机可以创建最多两个擎天Enclave。 不支持与父虚拟机共物理内核。 只有在父虚拟机处于运行状态时,擎天Enclave才处于运行状态。如果父虚拟机被停止或终止,则擎天Enclave被终止。 擎天Enclave分配的资源(内存和CPU等),都是从父虚拟机中分割出来的,内存区间要求是2M/1G对齐的连续物理区间。 另外还需要注意: 支持擎天Enclave特性的父虚拟机规格: c7t c7t规格还处于公测阶段,请通过提交工单联系客服申请公测。 支持擎天Enclave特性的局点: 华东-上海一 如果您在擎天Enclave中的业务被意外终止,您需要手动重新运行该业务 擎天Enclave的默认配置为使用1G大页,具有1G内存,2vcpu
  • 资源隔离 启动擎天Enclave虚拟机之前,您首先要在父虚拟机内隔离资源供擎天Enclave虚拟机使用。隔离的资源包括cpu个数和内存大小,可以通过在虚拟机内访问修改*/etc/qiangtian/enclave/qt-enclave-env.conf*配置文件指定需要隔离的资源: #1G大页 hugepage_size:1024 #内存1G. memory_mib:1024 # cpu个数 cpu_count:2 # cpu列表 # cpu_list:2,3 我们建议您最好不要反复启动资源隔离服务,否则将会出现大页内存不足,导致擎天Enclave无法正常启动或者隔离服务无法正常启动。本教程中保持默认值不变,使用1G大页,隔离2个vCPU和1G内存。确认配置文件参数之后执行以下命令: systemctl restart qt-enclave-env.service 其中*/etc/qiangtian/enclave/qt-enclave-env.conf*配置文件中的配置项之间有约束条件,详情可见qt-enclave-env服务介绍。
  • 数据和环境准备 接下来,我们将概述一下关于数据加密、证明设置和擎天Enclave实例创建的相关流程。 安全员在华为云数据加密服务的密钥管理子服务中创建KMS密钥。 安全员使用KMS密钥加密一段敏感数据(例如银行卡信息)。详细信息可以参考华为云数据加密服务帮助文档中API参考章节中的应用示例:加解密小量数据。 安全员使用obsutil命令行工具将加密后的密文上传到华为云对象存储服务(OBS)的一个桶中。详细信息可以参考华为云对象存储服务帮助文档工具指南章节: 上传对象。 安全员编写并打包擎天Enclave开发程序:制作Docker镜像,然后使用qt命令行工具将Docker镜像转换成擎天Enclave镜像文件。可以参考擎天Enclave镜像文件制作。并记录创建擎天Enclave镜像文件时生成的PCR0和PCR8。 安全员将PCR0和PCR8设置为IAM访问控制策略的条件键(控制kms-decrypt API)。 父虚拟机管理员:启动父虚拟机并设置启动qt-proxy服务,然后使用擎天Enclave镜像启动擎天Enclave。
  • 擎天Enclave应用开发 一个功能完备的擎天Enclave应用程序至少包括如下两个部分: 一个运行在父虚拟机内安全不敏感的应用程序。 一个运行在Enclave环境中安全敏感的应用程序。 由于擎天Enclave环境的独立性,擎天Enclave环境中的应用程序和运行在父虚拟机中的应用程序间只能通过唯一的vsock通道进行通信。 Linux系统上擎天Enclave应用的开发 父主题: 擎天Enclave管理
  • 启动擎天Enclave 在父虚拟机内,使用*qt enclave start*命令创建擎天Enclave虚拟机,该命令中需要指定擎天Enclave虚拟机镜像文件。在擎天Enclave虚拟机启动后,擎天Enclave应用程序及其依赖项会被从该镜像文件中引导到擎天Enclave虚拟机中。这里以创建一个拥有2个vCPU,1G内存,CID为4的擎天Enclave虚拟机为例: [root@localhost ~]# qt enclave start --cpus 2 --mem 1024 --eif /home/docker/ubuntu.eif --cid 4Started enclave with EnclaveID : 0, EnclaveCID : 4, NumberOfCPUs : 2, MemoryMiB : 1024{ "EnclaveID": 0, "EnclaveCID": 4, "NumberOfCPUs": 2, "MemoryMiB": 1024, "LaunchMode": "debug"} 在该实例中,原镜像ubuntu中的CMD语句为/bin/bash,因此擎天Enclave启动之后将会执行该语句,执行完成后将退出并关闭。
  • 相关角色 在这个擎天Enclave使用场景里,涉及到了以下几个角色: 安全员:拥有对机密数据和华为云KMS密钥的控制权限。作为华为云账号的所有者,他具有最高权限,例如他可以创建IAM用户并为其设置最小权限,创建加密密钥和加密敏感数据等。在本场景中,我们还假设安全员同时承担了Enclave镜像构建的工作,他获得预期的Enclave镜像度量值PCR0和PCR8,并在IAM授权策略中使用这些度量值作为条件键。 父虚拟机管理员:作为被安全员授权的运维人员,他拥有父虚拟机实例的访问权限,并能管理擎天Enclave实例的生命周期。他使用安全员构建好的擎天Enclave镜像文件来启动擎天Enclave实例。 擎天Enclave应用程序开发人员:开发在擎天Enclave中运行的应用程序。在该案例中,该应用程序需要从华为OBS服务的Bucket1获取密文对象,然后调用kms-decrypt接口对密文进行解密,进行数据处理后,最后将结果输出到Bucket2。
  • 结合华为云KMS服务 华为云KMS服务内置了对擎天Enclave证明的支持。通过使用擎天Enclave SDK中包含的华为云KMS API,您可以在擎天Enclave实例中基于擎天Enclave证明来执行华为云KMS操作,比如解密、生成随机数和加密等操作。华为云KMS服务提取来自擎天Enclave的证明文档并根据预设的IAM授权策略对其进行访问权限控制。 比如,如下是一个IAM授权策略的举例。该授权策略允许调用KMS的解密数据或解密数据密钥功能API,但限制条件是要求请求者必须在擎天Enclave环境中运行,且Enclave的度量值PCR0和PCR8都必须和指定的PCR值相同。 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "kms:cmk:decrypt", "kms:dek:decrypt" ], "Resource": "*", "Condition": { "StringEqualsIgnoreCase": { "kms:RecipientAttestation/PCR0": [ "c5158cb6ee9dbb0ead648c3dc80e472c85e0d67f19fb53fbd3fb94c3371aec63cdb93b80d727a7084248873b1d8e8b41" ], "kms:RecipientAttestation/PCR8": [ "705afb1012d27f4e07a25e674e6a17dec57305e29cd412184b7bcb78d9e67f16a0cc26d8706a4fab418a5da5788bc949" ] } } } ]} 父主题: 密码学证明
  • qt-enclave-env工具介绍 qt-enclave-env是一个service,service启动后从qt-enclave-env.conf配置文件中读取需要隔离的资源信息,并执行资源隔离操作。隔离操作需要在创建擎天Enclave虚拟机之前执行。接下来我们将介绍该服务的配置文件/etc/qingtian/enclave/qt-enclave-env.conf: #enclave虚拟机隔离大页内存类型,可配置2或1024,分别表示2M大页或1G大页 hugepage_size:1024 # 配置需要隔离的内存大小,数值需要为hugepage_size的整数倍. memory_mib:1024 # 配置需要隔离的cpu个数, 该配置项与cpu_list互斥,二者只能配置一个,否则service启动失败 cpu_count:2 # 配置需要隔离的cpu列表,可填入0以外的其他cpu id,该配置项与cpu_count互斥,二者只能配置一个,否则service启动失败 # cpu_list:2,3 需要注意的是:qt-enclave-env服务预留大页内存是否成功受父虚拟机本身内存碎片化影响,系统长时间运行或者反复重启qt-enclave-env可能导致无法预留出足够的大页内存。推荐的使用方式是在系统刚启动时,启动一次qt-enclave-env预留足够的内存即可。 父主题: 擎天CLI(qt CLI)
  • 安装qt CLI 如果您使用其他Linux镜像,请通过华为云擎天开源仓库进行编译安装。如果您使用Huawei Cloud EulerOS系统镜像时,通过以下命令直接安装: yum install qingtian-tool 该rpm包中包含两个工具: qt-enclave-env:提供资源隔离功能,擎天Enclave虚拟机创建之前需要隔离指定内存供enclave虚拟机使用,以保证擎天Enclave虚拟机空间的绝对安全。 qt CLI:是一个擎天命令行工具。您可以使用qt CLI制作擎天Enclave虚拟机启动所需要的EIF镜像,和管理擎天Enclave虚拟机生命周期。 注意:在使用qt CLI之前,您需要预先安装python3以及几个必要的python module : docker 和knack。可以参考以下命令进行安装: pip3 install docker knack 父主题: 擎天CLI(qt CLI)
  • qt enclave console 在启动擎天Enclave时,指定为debug-mode时,用于在父虚拟机中查看擎天Enclave中的只读控制台输出,命令格式如下: [root@localhost ~]# qt enclave console -h Command qt enclave console : Console an enclave via the enclave-id while debugging. Arguments --enclave-id [Required] Global Arguments --debug : Increase logging verbosity to show all debug logs. --help -h : Show this help message and exit. --only-show-errors : Only show errors, suppressing warnings. --output -o : Output format. Allowed values: json, jsonc, none, table, tsv, yaml, yamlc. Default: json. --query : JMESPath query string. See http://jmespath.org/ for more information and examples. --verbose : Increase logging verbosity. Use --debug for full debug logs. Examples Given an enclave-id to console an enclave qt enclave console --enclave-id [ENCLAVE-ID] 必选项:--enclave-id,指定需要获取只读控制台输出的擎天Enclave虚拟机的enclave-id。 命令行执行成功后,会打印擎天Enclave虚拟机的只读控制台输出,如下所示: hello enclave! hello enclave! hello enclave! hello enclave! 您可以使用ctrl+c的方式退出该命令。需要注意的是,在同一时间我们只允许一个qt enclave console命令作用于一个指定的擎天Enclave实例。
  • qt enclave make-img 该命令用于将用户制作好的docker镜像转换为擎天Enclave虚拟机可用的镜像,命令格式如下: [root@localhost ~]# qt enclave make-img -hCommand qt enclave make-img : Make an eif image from a docker image.Arguments --docker-uri [Required] --eif [Required] --private-key --signing-certificateGlobal Arguments --debug : Increase logging verbosity to show all debug logs. --help -h : Show this help message and exit. --only-show-errors : Only show errors, suppressing warnings. --output -o : Output format. Allowed values: json, jsonc, none, table, tsv, yaml, yamlc. Default: json. --query : JMESPath query string. See http://jmespath.org/ for more information and examples. --verbose : Increase logging verbosity. Use --debug for full debug logs.Examples Given docker-uri and eif to make an eif image qt enclave make-img --docker-uri [DOCKER-URI] --eif [EIF] Make an eif image with private-key and signing-certificate qt enclave make-img --docker-uri [DOCKER-URI] --eif [EIF] --private-key [PRIVATE-KEY] --signing-certificate [SIGNING-CERTIFICATE]
  • qt enclave query 该命令用于在父虚拟机内查询当前已创建的擎天Enclave虚拟机信息,命令格式如下: [root@localhost ~]# qt enclave query -h​Command qt enclave query : Query an enclave via the enclave-id or query all enclaves.​Arguments --enclave-id​Global Arguments --debug : Increase logging verbosity to show all debug logs. --help -h : Show this help message and exit. --only-show-errors : Only show errors, suppressing warnings. --output -o : Output format. Allowed values: json, jsonc, none, table, tsv, yaml, yamlc. Default: json. --query : JMESPath query string. See http://jmespath.org/ for more information and examples. --verbose : Increase logging verbosity. Use --debug for full debug logs.​Examples Given an enclave-id to query an enclave qt enclave query --enclave-id [ENCLAVE-ID]​ Query all enclaves without enclave-id qt enclave query
  • 操作场景 弹性云服务器支持性能助手功能,实时检测云服务器的CPU负载情况。当云服务器的CPU负载超过阈值时,会提示您调整配置,并提供推荐规格。 触发“调整配置”提醒的阈值为:云服务器在最近72小时内,开机时间超过36小时,且“CPU使用率”的中位数超过75%。 关于监控指标“CPU使用率”的详细描述,请参见弹性云服务器支持的基础监控指标。 本章节介绍当云服务器CPU偏高、超过阈值时,系统提示调整配置时的操作指导。
  • 错误码 错误码 错误信息 描述 处理措施 01 Missing necessary argument. 必要参数缺失 请您对命令参数进行检查 02 Invalid argument provided. 无效参数 请您对命令参数进行检查 03 File operation failure. 文件操作错误 请您检查目标文件或目录是否存在 04 Ioctl get sandbox capacity failure. Ioctl获取sandbox capacity错误 请您联系华为云技术支撑人员帮您处理 05 Ioctl define sandbox failure. Ioctl定义sandbox错误 请您联系华为云技术支撑人员帮您处理 06 Invalid parameters provided in configuration file. 配置文件中存在无效参数 请您检查对应配置文件 07 Missing necessary parameters in configuration file. 配置文件中缺少必要参数 请您检查对应配置文件 08 Mmap memory failure. Mmap内存错误 请您联系华为云技术支撑人员帮您处理 09 Ioctl add memory failure. Ioctl增加内存错误 请您联系华为云技术支撑人员帮您处理 10 Load image failure because provided memory is too small. 加载镜像错误,可能是因为设置的内存大小不够 请您在启动擎天Enclave时,增加内存参数设置 11 Ioctl add cpu failure. Ioctl增加vcpu错误 请您联系华为云技术支撑人员帮您处理 12 Lock acquire failure. 请求锁失败 请您检查qt CLI日志信息,查看对应锁文件权限是否正常 13 Socket initialization failure. Socket初始化失败 请您联系华为云技术支撑人员帮您处理 14 Socket binding failure. Socket绑定错误 请您联系华为云技术支撑人员帮您处理 15 Socket listen failure. Socket监听错误 请您联系华为云技术支撑人员帮您处理 16 Socket accept failure. Socket执行接收错误 请您联系华为云技术支撑人员帮您处理 17 Write heartbeat to the enclave failure. 给擎天Enclave写入心跳信息出错 请您联系华为云技术支撑人员帮您处理 18 Read heartbeat from the enclave failure. 读取擎天Enclave心跳信息出错 请您联系华为云技术支撑人员帮您处理 19 Ioctl start an enclave failure. Ioctl启动擎天Enclave失败 请您联系华为云技术支撑人员帮您处理 20 Wait heartbeat timeout. 等待心跳信息超时 请您在启动擎天Enclave时,增加内存参数配置;如未能解决,请您联系华为云技术支撑人员帮您处理 21 Get json print object failure. 获取json打印对象失败 请您检查cjson库是否正常 22 Write enclave's configuration file failure. 生成擎天Enclave配置文件失败 请您查看qt CLI日志信息,排查相关文件权限;如未能解决,请您联系华为云技术支撑人员帮您处理 23 Socket connection failure Socket连接错误 请您联系华为云技术支撑人员帮您处理 24 Write cmd to the enclave server failure. 向擎天Enclave后台服务写入命令失败 请您联系华为云技术支撑人员帮您处理 25 Read message from the enclave server failure. 获取擎天Enclave后台服务信息失败 请您联系华为云技术支撑人员帮您处理 26 Create cjson object failure. 创建cjson对象失败 请您检查cjson库是否正常 27 Create cjson array failure. 创建cjson数组失败 请您检查cjson库是否正常 28 The required enclave is not running. 被请求的擎天Enclave实例并没有在运行 请您使用qt enclave query命令查看目前正在运行的擎天Enclave 29 Invalid enclave pid. 无效的Enclave PID 请您联系华为云技术支撑人员帮您处理 30 Add number into cjson object failure. 向cjson打印对象中增加数字失败 请您检查cjson库是否正常 31 Add string into cjson object failure. 向cjson打印对象中增加字符串失败 请您检查cjson库是否正常 32 The required enclave is not running in the debug mode. 被请求的擎天Enclave实例没有运行在debug模式下 请您使用qt enclave query 查询该擎天Enclave运行模式 33 Enclave console read failure. 擎天Enclave console命令读取失败 请您联系华为云技术支撑人员帮您处理 34 Write img header failure. 创建镜像时,写入镜像头文件失败 请您联系华为云技术支撑人员帮您处理 35 Write cmdline failure. 创建镜像时,写入cmdline失败 请您联系华为云技术支撑人员帮您处理 36 Write kernel failure. 创建镜像时,写入kernel失败 请您联系华为云技术支撑人员帮您处理 37 Write initrd failure. 创建镜像时,写入initrd失败 请您联系华为云技术支撑人员帮您处理 38 Write certificate failure. 创建镜像时,写入证书失败 请您联系华为云技术支撑人员帮您处理 39 Get pcr failure. 获取PCR值失败 请您联系华为云技术支撑人员帮您处理 40 Add signature failure. 创建镜像时,对镜像签名出错 请您联系华为云技术支撑人员帮您处理 41 The required enclave is in maintenance state. 被请求的擎天Enclave实例正处于维护阶段 请您联系华为云技术支撑人员帮您处理 父主题: 擎天Enclave管理
  • 密钥对 密钥对,即SSH密钥对,是为用户提供远程登录云服务器的认证方式,是一种区别于传统的用户名和密码登录的认证方式。 密钥对包含一个公钥和一个私钥,公钥自动保存在KPS(Key Pair Service)中,私钥由用户保存在本地。若用户将公钥配置在Linux云服务器中,则可以使用私钥登录Linux云服务器,而不需要输入密码。由于密钥对可以让用户无需输入密码登录到Linux云服务器,因此,可以防止由于密码被拦截、破解造成的帐户密码泄露,从而提高Linux云服务器的安全性。 您可以通过数据加密服务(Data Encryption Workshop)管理密钥对,包括创建、导入、绑定、查看、重置、替换、解绑、删除密钥对等。 本章节主要介绍如何创建和导入密钥对,其余操作,请参见“管理密钥对”。
  • 创建密钥对操作指引 您可以使用已有密钥对或新建一个密钥对,用于远程登录身份验证。 新建密钥对 如果没有可用的密钥对,需新建一个密钥对,生成公钥和私钥,并在登录弹性云服务器时提供私钥进行鉴权。创建密钥对的方法如下: (推荐)通过管理控制台创建密钥对:公钥自动保存在系统中,私钥由用户保存在本地。 通过puttygen.exe工具创建密钥对:公钥和私钥均保存在用户本地。 创建成功的密钥对,还需要执行导入密钥对,导入系统才能正常使用密钥对。 使用已有密钥对 如果本地已有密钥对(例如,使用PuTTYgen工具生成的密钥对),可以在管理控制台导入密钥对公钥,由系统维护您的公钥文件。具体操作请参见导入密钥对。 如果已有密钥对的公钥文件是通过puttygen.exe工具的“Save public key”按钮保存的,该公钥文件不能直接导入管理控制台。 如需继续使用该密钥对作远程身份验证,请参见通过puttygen.exe工具创建的密钥对,导入管理控制台失败怎么办?
  • 使用场景 用户在购买弹性云服务器时,建议选择密钥对进行用户身份认证,或者通过提供的密钥对获取Windows操作系统弹性云服务器的登录密码。 登录Linux操作系统的弹性云服务器 若用户购买的是Linux操作系统的弹性云服务器,可以直接使用密钥对远程登录云服务器。 创建弹性云服务器时,选择“密钥对方式”登录,详细操作,请参见步骤三:高级配置的“设置‘登录凭证’”。 创建弹性云服务器完成后,通过“绑定密钥对”的方式为云服务器绑定密钥对。 获取Windows操作系统弹性云服务器的登录密码 若用户购买的是Windows操作系统的弹性云服务器,可以通过密钥对的私钥获取登录密码,该密码为随机密码,安全性高。 详细内容,请参见获取Windows弹性云服务器的密码
  • 操作场景 以下两种场景,需要执行导入密钥对的操作: 通过puttygen.exe工具新建密钥对,需要将密钥对导入系统才能正常使用。 如果本地已有密钥对(例如,使用PuTTYgen工具生成的密钥对),可以在管理控制台导入密钥对公钥,由系统维护您的公钥文件。 如果已有密钥对的公钥文件是通过puttygen.exe工具的“Save public key”按钮保存的,该公钥文件不能直接导入管理控制台。 如需继续使用该密钥对作远程身份验证,请参见通过puttygen.exe工具创建的密钥对,导入管理控制台失败怎么办?
  • 使用MSTSC方式登录Windows弹性云服务器 本地主机为Windows操作系统,那么可以使用Windows自带的远程桌面连接工具MSTSC登录Windows云服务器。 以下演示了使用MSTSC方式登录Windows 2012操作系统云服务器的操作步骤。 图1 MSTSC方式登录云服务器 详细操作步骤如下: 在本地主机单击“开始”菜单。 在“搜索程序和文件”中,输入“mstsc”,单击mstsc打开远程桌面连接工具。 在“远程桌面连接”的对话框中,单击“选项”。 图2 显示选项 输入待登录的云服务器的弹性公网IP和用户名,默认为Administrator。 如需再次登录时不再重复输入用户名和密码,可勾选“允许我保存凭据”。 图3 远程桌面链接 (可选)如需在远程会话中使用本地主机的资源,请单击“本地资源”选项卡完成如下配置。 如需从本地主机复制到云服务器中,请勾选“剪贴板”。 图4 勾选剪贴板 如需从本地主机复制文件到云服务器中,单击“详细信息”,勾选相应的磁盘。 图5 勾选驱动器 (可选)如需调整远程桌面窗口的大小,可以选择“显示”选项卡,再调整窗口大小。 图6 调整窗口大小 单击“确定”,根据提示输入密码,登录云服务器。 为安全起见,首次登录云服务器,需更改密码。 (可选)通过远程桌面连接(Remote Desktop Protocol, RDP)方式登录云服务器后,如果需要使用RDP提供的“剪切板”功能,将本地的大文件(文件大小超过2GB)复制粘贴至远端的Windows云服务器中,由于Windows系统的限制,会导致操作失败。 具体的解决方法,请参考使用远程桌面链接方式复制文件。
  • 前提条件 弹性云服务器正常运行。 关机、故障、删除状态的弹性云服务器,无法在云监控中查看其监控指标。当弹性云服务器再次启动或恢复后,即可正常查看。 关机、故障24小时的弹性云服务器,云监控将默认该弹性云服务器不存在,并在监控列表中删除,不再对其进行监控,但告警规则需要用户手动清理。 弹性云服务器已对接云监控,即已在云监控页面设置告警规则。 对接云监控之前,用户无法查看到未对接资源的监控数据。具体操作,请参见设置告警规则。 弹性云服务器已正常运行一段时间(约10分钟)。 对于新创建的弹性云服务器,需要等待一段时间,才能查看上报的监控数据和监控视图。
  • 前提条件 弹性云服务器状态为“运行中”。 如果弹性云服务器采用密钥方式鉴权,已获取Windows弹性云服务器的密码,获取方式请参见获取Windows弹性云服务器的密码。 弹性云服务器已经绑定弹性公网IP,绑定方式请参见绑定弹性公网IP。 使用MSTSC方式通过内网登录云服务器时可以不绑定弹性公网IP,例如VPN、云专线等内网网络连通场景。 所在安全组入方向已开放3389端口,配置方式请参见配置安全组规则。 使用的登录工具与待登录的弹性云服务器之间网络连通。例如,默认的3389端口没有被防火墙屏蔽。 弹性云服务器开启远程桌面协议RDP(Remote Desktop Protocol)。使用公共镜像创建的弹性云服务器默认已打开RDP。打开RDP方法请参考开启远程桌面协议RDP。
  • 后续处理 如果切换操作系统前后都是Linux系统,且数据盘设置了开机自动挂载分区。切换操作系统后,数据盘分区挂载信息会丢失,请更新/etc/fstab配置。 在/etc/fstab写入切换后的分区信息。 建议您先备份/etc/fstab文件。 详细操作请参考初始化Linux数据盘(fdisk),设置开机自动挂载磁盘分区。 挂载分区。挂载分区后即可开始使用数据盘。 mount 磁盘分区 挂载目录 执行以下命令,查看挂载结果。 df -TH 如果操作系统切换失败,云服务平台支持重试功能,用户可重新执行3-8,切换弹性云服务器的操作系统。 重试后,如果仍未成功,可直接联系客服,客服会在后台进行人工恢复。
  • 前提条件 待切换操作系统的弹性云服务器挂载有系统盘。 切换操作系统会清除系统盘数据,包括系统盘上的系统分区和所有其它分区,请做好数据备份。 如果原服务器使用的是密码登录方式,切换操作系统后使用密钥登录方式,请提前创建密钥文件。 如果您使用私有镜像切换操作系统请参考《镜像服务用户指南》提前完成私有镜像的制作。 如果需要指定弹性云服务器器的镜像,请提前使用指定弹性云服务器创建私有镜像。 如果需要使用本地的镜像文件,请提前将镜像文件导入并注册为云平台的私有镜像。 如果需要使用其他区域的私有镜像,请提前复制镜像。 如果需要使用其他帐号的私有镜像,请提前完成镜像共享。
  • 登录方式概述 请根据需要选择登录方式,登录云服务器。 表1 Linux云服务器登录方式一览 云服务器操作系统 本地主机操作系统 连接方法 条件 Linux Windows (推荐使用)使用控制台提供的CloudShell登录云服务器。 使用CloudShell登录云服务器。 云服务器绑定弹性公网IP。 (通过内网登录云服务器时可以不绑定弹性公网IP,例如VPN、云专线等内网网络连通场景。) Windows 使用PuTTY、Xshell等远程登录工具: 密码方式鉴权:SSH密码方式登录(本地使用Windows操作系统)。 密钥方式鉴权:SSH密钥方式登录(本地使用Windows操作系统)。 Linux 使用命令连接: 密码方式鉴权:SSH密码方式登录(本地使用Linux操作系统)。 密钥方式鉴权:SSH密钥方式登录(本地使用Linux操作系统)。 移动设备 使用Termius、JuiceSSH等SSH客户端工具登录云服务器: 在移动设备上登录Linux云服务器。 下载华为云APP连接云服务器: 使用华为云APP连接Linux云服务器。 Mac OS系统 使用系统自带的终端(Terminal): Mac OS系统登录Linux弹性云服务器。 Windows 使用管理控制台远程登录方式:Linux弹性云服务器远程登录(VNC方式)。 不依赖弹性公网IP。
  • 约束与限制 只有运行中的云服务器才允许用户登录。 Windows操作系统用户名“Administrator”。 忘记密码,请先通过“重置密码”功能设置登录密码。 重置密码:选中待重置密码的云服务器,并选择“操作”列下的“ 重置密码”。详细操作,请参见在控制台重置弹性云服务器密码。 对于密钥方式鉴权的弹性云服务器,需先通过管理控制台提供的获取密码功能,将创建弹性云服务器时使用的私钥文件解析为密码。 GPU实例中,部分G系列实例不支持云平台提供的远程登录功能,需要自行安装VNC Server进行登录。详细信息请参见GPU加速型。推荐使用MSTSC方式登录弹性云服务器。 使用MSTSC方式访问GPU加速型弹性云服务器时,使用WDDM驱动程序模型的GPU将被替换为一个非加速的远程桌面显示驱动程序,造成GPU加速能力无法实现。因此,如果需要使用GPU加速能力,您必须使用不同的远程访问工具,如VNC工具。如果使用管理控制台提供的“远程登录”功能无法满足您的访问需求,请自行在弹性云服务器上安装符合要求的远程访问工具(如Tight VNC)。 Tight VNC下载地址:https://www.tightvnc.com/download.php
共100000条