croc:安全点对点文件传输工具
一款命令行文件传输工具,让任意两台电脑通过加密的点对点连接互传文件和文件夹。
- 浏览
- 2
- 访问
- 0
- 下载
- 0
- 版本
- v11.6.2
- 平台
- Windows、macOS、Linux
详细介绍
项目简介
croc 是一个用 Go 编写的命令行文件传输工具,目标是让任意两台电脑都能简单、安全地互传文件和文件夹。它采用点对点传输,并在无法直连时回退到中继;传输过程使用 PAKE 实现端到端加密。支持 Windows、Linux、macOS,也提供浏览器版本,可与 CLI 互通。
主要功能
- 任意两台电脑互传文件或文件夹,p2p 优先,支持中继回退
- 使用 PAKE 进行端到端加密,传输口令用于建立密钥
- 跨平台:Windows、Linux、macOS 和浏览器
- 支持多文件传输、中断后续传
- 无需本地服务器或端口转发
- IPv6 优先,IPv4 回退;可通过代理(如 Tor)使用
croc ssh可在 Linux、macOS、FreeBSD、OpenBSD 上创建共享终端,支持读写和只读参与者- 支持
croc store将文件加密后临时存储,可设置下载次数、过期时间和存储 URL
安装与使用
安装方式(部分):
curl https://getcroc.com | bash
macOS 可用 Homebrew:brew install croc;Windows 可用 Scoop 或 Chocolatey:scoop install croc / choco install croc;也可从源码安装:go install github.com/schollz/croc/v11@latest。更多系统包管理器(MacPorts、Nix、Alpine、Arch、Termux、FreeBSD、Conda 等)见 README。不安装可直接访问 getcroc.com 使用浏览器版。
发送文件:
croc send [file(s)-or-folder]
终端会显示一个口令,例如 code-phrase。在另一台电脑接收:
croc code-phrase
接收方输入相同口令即可完成加密传输。文件夹传输默认包含 .git 元数据,但包含 .ssh 或 .gnupg 路径的传输会被拒绝。
注意事项
- 传输口令是建立加密连接的关键,应通过可信渠道告知接收方。
croc ssh的邀请口令也应当作秘密保管;该功能不暴露 SSH 守护进程,也不要求公网 IP、入站端口或 SSH 密钥配置。- 安装脚本会把
croc与croc-update放在同一目录;更新时运行croc update检查,再运行croc-update更新 PATH 上的 croc。包管理器安装的版本应通过对应包管理器升级。 - 若使用 Docker 方式运行 croc,只会在当前目录及其子目录中工作。
- 项目使用 MIT 许可证。
本作品整理自 GitHub 开源项目 schollz/croc,原作者 @schollz,许可证 MIT。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v11.6.2当前版本
## What's Changed * feat: simplify blog and refresh transfer benchmarks by @schollz in https://github.com/schollz/croc/pull/1407 * fix: exercise updater permission failures in ci by @schollz in https://github.com/schollz/croc/pull/1408 **Full Changelog**: https://github.com/schollz/croc/compare/v11.6.1...v11.6.2
- v11.6.1
新增独立的 croc-update 更新工具;修复对当前 croc 程序的解析,并改进更新流程说明。
- v11.6.0
修复从盘符根目录发送空文件夹时的相对路径问题;浏览器端改用原生传输方式;改进 Web 端导航与移动端控件,支持 SSH 邀请输入;避免标识符中出现 Unicode 大小写折叠数据,并调整发送面板与整体交互体验。
评论