SuperAPI AI 工具集

huawei-cloud-ecs-passwordless-login

通用与其它

查看项目

更新于 10-15 22:14

技能介绍

用途:该技能用于为华为云ECS实例配置免密SSH登录,通过COC(云运维中心)执行脚本部署公钥,支持批量目标。工具链为hcloud CLI(KooCLI)加本地SSH工具,部署仅通过COC脚本执行完成。

主要能力与流程:共7步。1)IAM授权:创建ServiceAgencyForCOC委托并绑定4个角色(IAM ReadOnlyAccess、RMS ReadOnlyAccess、DCS UserAccess、COCServiceAgencyPolicy),已存在(HTTP 409)则跳过。2)生成本地Ed25519密钥对,注释标记为coc-temp-key,仅支持Ed25519,不支持RSA/ECDSA/DSA。3)创建或复用参数化COC脚本(通过--cli-jsonInput避免引号问题)。4)通过ListResources解析每个目标(IP或ID)的region_id与resource_id,按批次(每批≤10台,单次≤200台)执行ExecuteScript并轮询GetScriptJobInfo。5)对每个目标测试SSH免密连接。6)配置SSH ControlMaster持久连接,密钥清理后仍可访问。7)60秒(可配10至300秒)后自动清理远端authorized_keys中的密钥、COC脚本和本地密钥。

使用方式:需已安装并认证hcloud KooCLI,具备创建委托与操作COC权限,本地有SSH与ssh-keygen,ECS须为ACTIVE且预装uniagent(通过ListResources的agent_state确认)。关键参数含ecs_instance_id、ecs_ip(二者至少一个,逗号分隔)、coc_region(默认cn-north-4,仅支持cn-north-4与ap-southeast-3)、ssh_user(默认root)、cleanup_delay、persist_timeout等。

限制:COC仅支持上述两个区域;仅Ed25519密钥;SSH测试失败时保留密钥不清理;从authorized_keys移除密钥不中断已有会话;密钥不得在对话中暴露且不得超出60秒窗口留存。其余细节暂未提供。