ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

rclone v1.75.0 版本发布解读:安全加固、新特性与后端修复全景解析

2026/9/10 9:53:19 拓冰建站 浏览量
rclone v1.75.0 版本发布解读:安全加固、新特性与后端修复全景解析 rclone v1.75.0 版本发布解读安全加固、新特性与后端修复全景解析【免费下载链接】rclonersync for cloud storage - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Azure Blob, Azure Files, Yandex Files项目地址: https://gitcode.com/GitHub_Trending/rc/rclone本仓库 rclone 定位于 rsync for cloud storage是连接 Google Drive、S3、Dropbox、Azure Blob、本地磁盘等数十种存储的统一同步工具。本文以仓库自带的官方变更日志 docs/content/changelog.md 为骨架重点剖析当前最新正式版 v1.75.02026-07-31的安全公告、新增能力与跨后端修复并结合源码与配置佐证其底层实现。读完本文你将能快速评估是否/如何升级到 v1.75.0并理解其安全修复的边界条件与部分新特性的正确用法。一、变更日志文档与版本节奏概览rclone 将完整的发布历史维护在仓库文档 docs/content/changelog.md 中当前约 6800 行是 Hugo 生成的官方站点内容之一文件头还带有title: Documentation、description: Rclone Changelog元信息。其内容可一路回溯到 2016 年的 v1.27 及更早版本采用语义化三/四段式版本号主特性版本如 v1.75.0、v1.74.0汇集一段时间内全部新特性与修复补丁版本如 v1.74.4、v1.74.3…仅在上一主版本上做 bug 修复与依赖安全升级无新特性。当前仓库 VERSION 文件显示开发版本为 v1.76.0意味着 v1.75.0 已冻结并可安全用于生产而仓库正在向 v1.76.0 演进。每次主版本之间的完整提交列表以 See commits 链接指向版本间 diff完整列表见 changelog 原文。二、v1.75.0 安全加固专题升级的首要理由v1.75.0 一次性发布了 15 条 GHSAGitHub Security Advisory级别的安全公告几乎覆盖全部服务端组件是本次版本升级的最核心理由。按模块归纳如下影响模块风险摘要公告标识archive畸形的 squashfs 镜像可导致程序崩溃GHSA-6jcg-q3wp-x2f4ftp当编码不包含 CRLF 时可被命令注入GHSA-8c48-q9wj-3w37 / CVE-2026-71311lib/http设置--cert/--key后所有--addr监听器均强制启用 TLSGHSA-mfvx-7rcj-9m5glib/proxyHTTP CONNECT 头无界增长可致 OOMGHSA-xhf4-832v-7xcr / CVE-2026-71310local源文件名可逃逸出目标目录GHSA-7p4m-qxvv-g567 / CVE-2026-71313rc未认证服务器暴露 pprof 调试处理器、--rc-serve需认证才能列 remote、panic 时泄漏栈信息GHSA-mfvx-7rcj-9m5g / GHSA-gwfq-86j8-7qhvs3重定向时泄漏凭据、拒绝 HTTPS→HTTP 降级并剥离密钥、跨主机重定向剥离 S3 Express 会话令牌GHSA-8mxv-9xhp-86h4serve restic服务目录之上的路径穿越GHSA-45pq-889g-fcgh / CVE-2026-71309serve sftp / sftp恶意请求导致整个服务器崩溃PowerShell remote 上经由构造文件名的命令注入GHSA-2m8m-jhrm-w6j2 / CVE-2026-71312serve ftp密码校验改用恒定时间比较防时序侧信道GHSA-mfvx-7rcj-9m5gvfs后台 goroutine 中后端 panic 不再拖垮整个进程GHSA-6jcg-q3wp-x2f4webdavHTTPS→HTTP 重定向泄漏凭据Tus 上传潜在空指针崩溃GHSA-h4mf-4v27-hggj / GHSA-3x6r-wxxg-53vv实现侧注意archive 安全修复对应 backend/archive/squashfs/ 的解析健壮性v1.75.0 同时修复了无 fragment 或 xattr 表镜像无法读取的问题并配套 backend/archive/squashfs_malformed_test.go 这类畸形输入测试。HTTP/2 与 TLS 相关修复涉及 fs/fshttp/ 与 lib/http/local路径逃逸与 backend/local/ 的文件名净化逻辑相关serve restic / serve sftp 位于 cmd/serve/。值得注意的是本次还升级了google.golang.org/grpc以修复多个安全问题——这类依赖层修复在 changelog 中通常只在 Security 一节一笔带过但含义是连锁依赖例如 Microsoft 系 remote 认证路径一并受益。补丁版本中的安全传导v1.74.2–v1.74.4主版本之外三个补丁版同样是安全驱动的关键节点强烈建议未升级 v1.75.0 的用户至少停在v1.74.4v1.74.42026-07-08升级 Go 到 1.26.5 修复osRoot 逃逸CVE-2026-39822与crypto/tlsECH 隐私泄漏CVE-2026-42505升级golang.org/x/image修复 TIFF/WEBP 解码类 CVEarchive extract路径穿越CVE-2026-59732serve restic私有仓库隔离绕过CVE-2026-59733--links符号链接逃逸目标目录CVE-2026-54572。v1.74.32026-06-05修复--rc-serve内联 remote 的未认证命令执行CVE-2026-49980升级 Go 1.26.4 覆盖 mime/net/textproto/crypto/x509 CVE。v1.74.22026-05-22集中升级x/net、x/cryptossh 系列 15 个 CVE、x/image、x/sys与 go-git 依赖属于大型依赖安全更新。可以看到一个清晰的策略主版本收口新功能补丁版本快速响应供应链 CVE。这也意味着生产环境升级到最新主版本是风险收益比最高的选择。三、v1.75.0 新特性详解含源码佐证1. 新增两个 S3 服务商Zero Services 与 ScalityS3 服务商定义统一放在 backend/s3/provider/ 的 YAML 清单中新增ZeroServices.yamlZero Services GmbH 提供的 ZERO-Z3配置了zero-fra1/zero-fra2/zero-eyl1三个区域与对应端点并声明force_path_style: true、list_url_encode: false、use_already_exists: false等 quirksScality.yamlScality RING/ARTESCA同样force_path_style: true并注释解释原因——本地私有部署常缺少虚拟主机风格所需的通配符 DNS。实际使用即为标准 provider 选择流程rclone config create myzero s3 provider ZeroServices \ region zero-fra1 endpoint fra1.s3.zeroservices.eu \ access_key_id XXX secret_access_key YYY从结构看这些 quirks 会被 backend/s3/s3.go 的 provider 装配逻辑读取从而在请求签名、URL 风格、list 编码等行为上与公有云 S3 客户端自动区分普通用户无需手写force_path_style等参数。2. 新增config unset命令按 key 从 remote 移除配置此前想删除 remote 的单个选项只能整段编辑配置文件v1.75.0 在 cmd/config/config.go 中加入了专门的子命令rclone config unset name [key]例如rclone config unset myremote client_id client_secret参考实现约 config.go#L393还给出了两个边界规则remote 的type不可 unset需用config delete整体删除命令按引用顺序支持一次清理多个 key。这使临时加了 client_id 做测试、事后回退等操作不再依赖手工编辑文件。3. 过滤引擎嵌套{}备选与--files-from0glob 过滤器支持嵌套花括号备选如*.{jpg,{png,gif}}一类模式可用新增--files-from0以 NUL 字节\0而非换行分隔输入清单兼容find -print0等管道输出规避文件名含换行符时的歧义。对应实现落在 fs/filter/filter.go并有 fs/filter/filter_test.go 覆盖边界场景find /data -name *.log -print0 | rclone copy --files-from0 - remote:backup4. HTTP 调试能力升级--dump errors与--dump tracefs/fshttp/http.go 新增两类 Dump--dump errors只转储失败的 HTTP 事务请求/响应与状态码显著降低排查云端限流、超时的日志噪音--dump trace通过 Go 标准库httptrace记录连接级事件DNS 解析、TCP/TLS 建连、等待响应首字节等。fs/fshttp/dump_test.go 明确了其行为边界如仅--dump errors时打印头但不打印体结合现有--dump headers/bodies/auth可形成递进式排障链条rclone copy /data remote:backup --dump errors # 只看失败请求 rclone copy /data remote:backup --dump trace --verbose # 连接级时间线另外fserrors把 HTTP/2 server sent GOAWAY 归类为可重试错误配合 rclone 的自动重试机制可显著缓解云端连接重置带来的偶发失败。5. RC 接口与 Web 服务端增强异步执行反馈向 rc 接口传入Prefer: async请求头时服务端以202 Accepted响应由 fs/rc/ 的 job 管理机制配合便于长任务的异步编排OAuth 流程控制新增 rc 方法config/oauthstop与config/oauthstatus后者在响应中包含授权 URL便于嵌入式/脚本场景自动开启、查询与终止rclone authorize的本地监听器扁平参数支持rc 的 config 与 filter 选项可按扁平参数直接传入此前需要嵌套 JSON且serve的 remote control 同步接受扁平与嵌套两种形式认证与安全默认值收紧未认证的--rc-serve不再暴露 pprof 处理器、列举 remote 必须认证对应上文 GHSA 修复HTTP 服务端支持自定义 HTTP 响应头serve http新增--disable-dir-list关闭目录列表页GUI 静态资源以 gzip/deflate 压缩下发并尊重显式--rc-allow-origin。典型用法示例rc 扁平参数 自定义响应头rclone rcd --rc-serve --rc-allow-origin https://app.example.com \ --header X-Content-Type-Options: nosniff curl -H Prefer: async http://localhost:5572/sync/sync \ -d srcFsdrive:srcdstFsdrive:dsttransfers46. 各 serve 子命令的能力跃迁serve nfs允许 NFS 客户端挂载被服务 remote 的子路径通告 AUTH_UNIX 使 *BSD 客户端可挂载并在 OpenBSD 上直接调用mount_nfs -Tserve s3multipart 上传流式转发到后端而非内存缓冲同时修复了并发 multipart 的 OOM 与 InvalidPart、中止上传幽灵对象、非原子提交等遗留问题serve sftp实现statvfsopenssh.com扩展上报磁盘用量设置文件时间时使用客户端请求的 atimeserve webdav对可压缩响应启用 gzipserve dlna对 SOAP 请求体做大小限制以防滥用docker serve卷恢复增加超时并改为并发恢复避免单个慢 remote 阻塞启动Create 操作幂等化重启后不再报 volume already exists。7. 本地与挂载层mount2新增--allow-idmap向内核通告FUSE_ALLOW_IDMAP能力VFS 层修复了缓存文件被外部删除后重建、invalid seek position缓存大于远端对象、写回定时器在达到--transfers时未停止、多个挂载点共享同一 VFS 时崩溃等四处问题Mount RC 命令支持扁平化的 VFS 与 Mount 选项local后端新增--local-fatal-if-no-space空间不足时直接致命失败而非静默重试且不再把相对根路径解析为绝对路径。四、核心架构组件修复sync/march/vfs/chunkedreader主版本修复中架构层的几项值得运维者关注march目录遍历与匹配引擎src 侧 listing 完成后不再无谓地列出 dst 目录完成态异步 rc job 的 goroutine 泄漏被修复在 fs/march/ 实现chunkedreader并行流被提前关闭时不再抛出伪错误涉及 fs/chunkedreader/ 的并发控制sync修复--fix-case在先上传后覆盖型后端上的重命名行为fs/sync/config 与日志安全rclone config交互期间不再把密码/令牌泄入 debug 日志fs/config/hash修正 xxh128 hasher 的大小计算librclone/log修复以库方式嵌入时日志初始化带来的副作用lib/、fs/log/rcoperations/stat处理超大父目录不再退化mount/*系列命令此前忽略的_filter/_config参数恢复正常。五、后端修复横向扫描modtime/hash 大清洗与代表性特性1. 上传/设置 modtime 后的时间戳一致性v1.75.0 出现了一条贯穿式修复主线——上传或设置 modtime 后时间戳被回退/丢失波及多个后端Azurefiles、Filen、FTP、Hdfs、Hidrive、Jottacloud、Mailru、Pixeldrain、Protondrive、Putio、Quatrix、WebDAV、Yandex 等均在列并伴随 MD5 缺失问题修复Filescom、Netstorage、Opendrive、Yandex、Pixeldrain。这通常源于各后端 API 的先写对象、再单独设置 mtime/哈希流程未等待服务端最终状态。以 Yandex 为例修复策略颇具代表性新增--yandex-upload-wait选项在上传后显式等待服务端处理完成再设置 modtime从根上规避 500 与随机回退。若你在上述云盘遇到传完时间戳不对 / hash 对不上升级到 v1.75.0 即可覆盖绝大多数场景。2. 云盘管理类新能力后端亮点Dropbox新增impersonate_admin管理员冒名、--dropbox-skip-shared-folders/--dropbox-skip-unowned-folders过滤共享与无主目录小文件上传大幅降低内存占用并省去多余 API 调用Internxt新增 Move/DirMove 服务端移动上传尺寸超限错误可见重新认证失败时给出明确提示Onedrive支持 no-admin 模式无需管理员授权经 GraphPrefer头下载被恶意软件标记的文件非 2xx 预授权下载视为错误Mega改名后文件不再复活跨 remote 移动文件不再从列表消失Seafile修复同尺寸文件反复被 sync 的问题Ulozto修复不同根 remote 间服务端移动丢文件Drime清理 Item 中过期的 mux_status 字段Linkbox对 bot 防护的 HTML challenge 响应重试而非直接失败Oracleobjectstorage新增--oos-decompress下载 gzip 编码对象修复未知长度对象下载崩溃Iclouddrive相册列取 cannot unmarshal number、2FA 409 误报修复SmbKerberos 凭据不再每次连接重载、TCP 连接泄漏修复、特殊字符目录移动问题修复Zoho新增--zoho-tpslimit/--zoho-tpslimit-burst限流参数、尊重 429 的Retry-After、同目录重复 list 限流Protondrive实现正式重试逻辑修复自定义域名账户 gopenpgp 校验与永久校验失败的长时间挂起S3新增 MEGA S4 亚太端点补丁版修正文档中copy_cutoff最小值为 1 字节Azure Blob详见下节3. Azure Blob 大规模列取Arrow 协议与并行度Azure Blob 后端新增两个值得在大规模容器场景关注的后端选项定义见 backend/azureblob/azureblob.gouse_arrow_list开启实验性 Apache Arrow 格式列取官方标注has no effect unless use_arrow_list is also setlist_parallelism以并行度列取超大容器未开 Arrow 时并行参数不生效代码路径约 azureblob.go#L656会明确打印提示并以串行方式列取。组合使用示例rclone ls azure:myhugecontainer \ --azureblob-use-arrow-list \ --azureblob-list-parallelism 16同版本还修复了 Azure Blob 区间读丢弃 MD5 导致 VFS 缓存重复下载的问题。六、面向读者升级建议与文档使用方式如果你自建或暴露了 rclone 服务端serve restic、serve sftp、serve ftp、rcd --rc-serve、webdav/Tusv1.75.0 的安全公告几乎与你全部相关属于必修升级无法立即升级时应先确保监听地址仅限内网、强制认证并限制暴露面。如果你重度使用 S3/云盘上传v1.75.0 的 modtime/hash 修复与 s3/serve s3 的并发 multipart 修复能直接消除一批幽灵对象/非法 Part/时间戳错乱类故障。查看完整历史全量版本条目见 docs/content/changelog.md各功能说明与参数默认值可对照 docs/content/s3.md、docs/content/azureblob.md、docs/content/local.md、docs/content/rc.md 等官方页面构建入口为 rclone.go。总体而言v1.75.0 是一个安全与稳健性优先的版本安全修复覆盖了网络服务的多数攻击面特性侧则集中在可观测性--dump errors/trace、大规模列表Arrow、服务端可编程能力rc 扁平参数与 OAuth 控制与若干高价值后端选项上。对于生产用户从任一 v1.74.x 直接升级至 v1.75.0 是当前最稳妥的选择。【免费下载链接】rclonersync for cloud storage - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Azure Blob, Azure Files, Yandex Files项目地址: https://gitcode.com/GitHub_Trending/rc/rclone创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考