概述

croc 是一种工具,可以让任何两台计算机简单安全地传输文件和文件夹。 AFAIK,croc 是唯一可以执行以下所有操作CLI 文件传输工具:

  • 允许任意两台计算机传输数据(使用中继)
  • 提供端到端加密(使用 PAKE)
  • 实现轻松的跨平台传输(Windows、Linux、Mac)
  • 允许多个文件传输
  • 允许恢复被中断的传输
  • 不需要本地服务器或端口转发
  • ipv6 优先和 ipv4 备用
  • 可以使用代理,比如tor

下载安装

  • 下载地址
  • 安装完成后在命令行输入croc -v,检查是否正确安装

windows 解压后需配置环境变量,在path最后加入croc的路径,不包含.exe

发送

croc send [file(s)-or-folder]
croc send --code [code-phrase] [file(s)-or-folder]
# 如,先在e盘建个test文件夹
echo 'hello' > E:\test\test.txt
croc send  E:\test\test.txt 
croc send --code 123456 E:\test\test.txt
croc send --code 123456 E:\test\

未指定code,则会在执行后打印code。建议使用croc send --code

接收

croc <code> 
croc --yes --overwrite <code> 
# 如
croc 123456
croc --yes --overwrite 123456

未接受覆盖文件,在输入后会提示是否接收文件,需要输入y/n。建议使用croc --yes --overwrite

私有化relay

上述操作均不是私有的服务器传输,会有文件泄露的隐患

Docker Self-host relay

docker run -d -p 9009-9013:9009-9013 -e CROC_PASS='YOURPASSWORD' schollz/croccroc --pass YOURPASSWORD --relay "myreal.example.com:9009" send [filename]

Note: 当包含 –pass YOURPASSWORD 时,您可以改为传递带有密码的文件,例如 –pass FILEWITHPASSWORD.