dsh-ssh-ops 0.2.17
- 修复文件上传/下载二进制损坏:客户端此前把文件内容当 UTF-8 文本处理(上传
file.text()、下载经TextDecoder再进 Blob),图片/压缩包等二进制文件必损坏。改为字节级 base64(encodeBase64Bytes/decodeBase64Bytes,Uint8Array直传),宿主端协议不变。 - 临时连接私钥预检:面板快速连接(临时连接)此前不做私钥格式校验,截断粘贴要到连接时才报认证失败;现与 SSH 资源编辑器共用
privateKeyProblem预检,并补齐空壳 key(只有 BEGIN/END 无主体)、首尾行类型不匹配、主体含非法字符三类拦截;主表单与跳板机私钥一并覆盖。 - 彻底移除
ssh_cluster_deprecated:基于「所有已打开连接」无确认群发命令的工具已删除。多机操作只能经ssh_batch(操作者勾选目标 + 一次性确认)。工具总数 30 → 29。 - 修复 SSH 资源保存全链路:客户端凭据服务改为 cordis 注入
remote.credentials;credentials.set/unset调用改为宿主 Remote 位置参数形态并按RemoteResult判错。 - 已信任主机一键收编:「已信任主机(未保存为资源)」卡片新增「保存为资源」按钮。
- 连接快速失败 + 可取消:面板一键连接
readyTimeout=15s, retries=0,新增cancelProfileConnectRPC 与「取消」按钮;不可达主机不再静默重试一分多钟。 - 私钥保存格式校验:录入私钥时校验
BEGIN/ENDPEM 首尾行完整,PPK 等 ssh2 不支持的格式保存时即被挡下。 - 终端会话失效显式提示:
dsh web重启杀掉全部 SSH 会话后,旧终端画面现在写入红色提示引导重连,不再静默冻结。 - 测试:新增
test/client.mjs(SshApi 字节编解码往返 + PEM 校验用例)挂入npm test,全量通过。
安装
dsh plugin --profile web add github:caoyiwei850/dsh-ssh-ops#v0.2.17或从本页附件下载 dsh-ssh-ops-0.2.17.tgz 后:
dsh plugin --profile web add /path/to/dsh-ssh-ops-0.2.17.tgznpm:npm view dsh-ssh-ops@0.2.17